Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Alex Mgh
The error is thrown by the world server. Thats super strange. I didnt touch the Connection Packets in the Agent server. Just the SKILL packet. And even there i dont process anything just added some variables to check the incoming Package.
So somehow the world server thinks the package is for him.
When i start the world server after i already am in character selection it works fine.
- - - Updated - - -
@
CwaniX or @
Ashime
How would you try to figure out what Type of Packet you would have to send back? Just bruteforce try everything? The Category would be the same, but the type i have no idea.
How I figure it out?
Go make an account on zhaouc.com, download the client from sun.zhaouc.com/sun1, and do packet sniffing from the client. That's how I got all of my packets for the login/auth server. I already have a few accounts there and you don't need a vpn.
FYI, zhaouc is the last company to have an EP1 server and it has bugs. You cannot waypoint to Etherain, therefore there is a ton of quests not available.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Ok in the server files are pretty much all the packets and what they do.
I will create a branch and work on the parsers first, so you guys know what i am working on.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
@CwaniX @Alex Mgh
I did packet sniffing on the retail server up to loading in a character into Esod and I have come to realize that none of the packet Category or Protocol match what is in the GitHub server files. Ofc, the retail server (zhaouc) forces you to update to a new client than what you guys are probably using.
Here is the Google Doc of what I got after login.
LINK: https://drive.google.com/open?id=1M-...laCz_ICmE-BsFs
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Ashime
@
CwaniX @
Alex Mgh
I did packet sniffing on the retail server up to loading in a character into Esod and I have come to realize that none of the packet Category or Protocol match what is in the GitHub server files. Ofc, the retail server (zhaouc) forces you to update to a new client than what you guys are probably using.
Here is the Google Doc of what I got after login.
LINK: https://drive.google.com/open?id=1M-...laCz_ICmE-BsFs
Yes that's true, but probably because their server uses some kind of encryption. Our client has encryption turned off and thanks to that it was easier to start working on the server. Unfortunately to continue developing we will need to work out how the packets are encrypted. It is possible that this is the "simple modulus" because it was mentioned in old files, but it can be a different algorithm and then it will be much harder.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
CwaniX
Yes that's true, but probably because their server uses some kind of encryption. Our client has encryption turned off and it was easy to get started but unfortunately to develop the server we will need to work out how the packets are encrypted.
How did you manage to remove the encryption from the client? Do you really think the server and client would encrypt the category and protocol? I can understand the message. If you can remove the encryption, is there anyway to figure out what the encryption is?
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Well do files have anything to do with it? they are in every old server.
https://i.imgur.com/VdqWzST.png
In the System.wpk you can change the settings of the server. There is a SERVER DEBUG mode and a SPECIAL MODE i will test if they have something to do with encryption turn off or on.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Alex Mgh
Well do files have anything to do with it? they are in every old server.
https://i.imgur.com/VdqWzST.png
In the System.wpk you can change the settings of the server. There is a SERVER DEBUG mode and a SPECIAL MODE i will test if they have something to do with encryption turn off or on.
@Alex Mgh
Those Enc1-2 and Dec1-2 are often used with the SimpleModulus similar to MU Online. While those files are in every older SUN server, there is also PacketCrypt.h file and the object to go with it. The PacketCrypt takes a DWORD key similar to TEA. Another thing to consider is that there is no Enc1-2 and Dec1-2 on the client side, which is often present in other Webzen games. I could be wrong and the client might use SimpleModulus, but it wouldn't hurt to check out the other options.
- - - Updated - - -
Just to let everyone know, the packet encryption is there because after the fourth packet between the client and game server (port 20002), the packet's category and protocol are random every time.
- - - Updated - - -
Here is a sample project I found in the old SUN files that uses the SimpleModulus encryption. It has the .cpp and .h.
LINK: https://drive.google.com/open?id=13GbbpJOdDStHpH_0bdcF2CyzL3h5_ALO
I only have the object for the PacketCrypt and the .h file. The object mentions the TEA object inside of it.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
So decrypting packets should now be our main goal. Unfortunately the packets seem to be completely random - even containing the same data are different each time, but it seems to me that the data is two bytes longer than the packets we know. It is possible that two random bytes are added to obfuscate the data. I will try to finish implementing the simple modulus algorithm in Java. I suspect that this algorithm is not used here, but it's the easiest one to start with. If that doesn't work, I think we will have to try to capture packets from the client before encryption, but to do that we will probably need to get rid of gameguard.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Hey guys, sorry for the long absence time. @Ashime
I wonder why you decided to stop working on the old server you had going in your other forum thread. I managed to build it and login. I managed to load in all basic maps and missions.
I visited Waldchen, Tringel, Etherain and even Aukra.
I am currently trying to get into the first mission and I am confident I will make it soon.
I actually only build this server to have some references but so much works there and the code is nicely organized.
So we're there any big barriers that you decided to stop?
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Alex Mgh
Hey guys, sorry for the long absence time. @
Ashime
I wonder why you decided to stop working on the old server you had going in your other forum thread. I managed to build it and login. I managed to load in all basic maps and missions.
I visited Waldchen, Tringel, Etherain and even Aukra.
I am currently trying to get into the first mission and I am confident I will make it soon.
I actually only build this server to have some references but so much works there and the code is nicely organized.
So we're there any big barriers that you decided to stop?
@Alex Mgh
If you are talking about this discussion [RELEASE] Soul of the Ultimate Nation Emulator, then it's easy to assume you got further than me. If you are not rebuilding the server, then you will ultimately run into the same issues that I mentioned on page 9. Here is the break down on what I found:
Quote:
Server
1) The server does not load in guild related information from the database. The source code posted has the code related to this is commented out.
2) The game server has buffering issues when sorting through large amounts of data. I'm assuming the buffer size is hard coded in and needs to be updated in source code.
3) The Cash Shop slots and tabs are hard coded to only provide 5 pages or tabs and 25 items total on all 5 pages. This issue is found in the game server source code.
4) There is map loading issues. The client cannot load into new maps and the server has a hard time accepting new maps that are linked (other than Tringel and Zapir Lake). If the format is incorrect, then the game server will produce an error.
5) The servers (I know for a fact DB and Game Server) do not recognize anything related to GM, such as verifying GM accounts/characters, commands, and etc. This is because the GM related code is not complete in the source code.
6) There is a lot of skills that do not work because of all sort of reasons. Some don't work due to the skill not existing on the server end, some have incorrect status effects such as the user gets stunned when they shouldn't, the skills don't have lingering effects such as heals or buffs, and etc. because they are not coded in on the source code.
7) All constants (const.h) or defines (define.h, commondef.h, and etc.) on the server end needs to be updated. These files were originally built from Aion, so please keep that in mind if you decide to pick up the source code.
8) Lots of animations on the server end don't work. For an example, sitting, waving, auto-attacking (with or without weapon), and etc. This occurs because the constants and defines (number 7 in this list) needs to be updated.
I choose not to work on that emulator because the servers needed to be fixed. The source code was a hot mess and I don't know C++. I decided to drop the files and build my own. Either way, this is very off topic. If you have any questions, please private message me instead. Thank you.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Alex Mgh
Hey guys, sorry for the long absence time. @
Ashime
I wonder why you decided to stop working on the old server you had going in your other forum thread. I managed to build it and login. I managed to load in all basic maps and missions.
I visited Waldchen, Tringel, Etherain and even Aukra.
I am currently trying to get into the first mission and I am confident I will make it soon.
I actually only build this server to have some references but so much works there and the code is nicely organized.
So we're there any big barriers that you decided to stop?
Can you upload a version built in this way? What client are you using for this version?
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
CwaniX
Can you upload a version built in this way? What client are you using for this version?
@CwaniX
If you want older source code, then I have plenty of it. I have 3 different versions of EP1 server files. They all dont work and have either no or incomplete source code.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
I have a lot of source code myself (a lot comes from your previous posts :rolleyes:), but I need some working files in which you can move between maps. I have a server running locally from old files, but I can't get waypoint and portals to work.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
@CwaniX
How is the SimpleModulus encryption going? Any results?
Also, what did you do to your client that you posted on page 1?
I run your release server files and the client posted on page 1, but the client crashes - it won't proceed after the hack shield. I'm still struggling to get your source code to run. There is so many errors. FailedBeanCreation is one error that I am getting on all of them. On the AuthServer, its FailedBeanCreation for the DBProxyConnection.
Re: [Development] Soul of the Ultimate Nation - Server Emulator
Quote:
Originally Posted by
Ashime
@
CwaniX
How is the SimpleModulus encryption going? Any results?
Also, what did you do to your client that you posted on page 1?
I run your release server files and the client posted on page 1, but the client crashes - it won't proceed after the hack shield. I'm still struggling to get your source code to run. There is so many errors. FailedBeanCreation is one error that I am getting on all of them. On the AuthServer, its FailedBeanCreation for the DBProxyConnection.
did you use this for the hackshield?
http://forum.ragezone.com/f792/fix-h...4/#post8106342
i can currently move to all cities through the waypoint but its still at random positions. I will upload the server and client once i can move between those maps.
The 1007 Client has some diffrences to the Server but its pretty easy to remap those diffrences