Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

server emulator

Newbie Spellweaver
Joined
Dec 26, 2020
Messages
9
Reaction score
2
So I still wonder how can i do that i started again to trying to make a server emulator. I heard some different techniques capturing packets like using a packet sniffer,making a proxy server or finding out which networking library game uses but i still didn't get how to actually decompress/decode or decrypt packets we received. I tried to use disassemblers and debuggers to get data from networking functions but they didn't work either. so how can i actually achieve to create a server emulator. I know memory hacking,programming,some reverse engineering and some web development.

Proxy server requires to get ip address,port and even subdomain of the gameserver. even though i get port and ip address. ip address is varying after a session and it confuses me. i can't even get subdomain of the gameserver so i can redirect into localhost
 
Newbie Spellweaver
Joined
Dec 26, 2020
Messages
9
Reaction score
2
looks like no one will answer, i am alone in it by myself again :/
 
Newbie Spellweaver
Joined
Dec 26, 2020
Messages
9
Reaction score
2
well that doesn't matter because i am sure there's a common way to achieve my goal
 
Newbie Spellweaver
Joined
Oct 28, 2019
Messages
7
Reaction score
1
Take a look , hope it helps.
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
723
well that doesn't matter because i am sure there's a common way to achieve my goal

Rofl

If you say so, good luck in your journey then.

It seems that you already know what you have to do. Find out how packets are encrypted, decrypt them, analyze its content, encrypt and reply back. Now you say you don't know how to decompress your game packets... Imagine us that don't even know what game you are talking about. :lol:
 
Newbie Spellweaver
Joined
Oct 28, 2019
Messages
7
Reaction score
1
As i read, you're asking for a generic approach on server emulation? If i would start an emulator today, i would begin reversing the game (netcode, *packet encryption/decryption*, etc). In order to do that, you will need to open the executable of the game that you're interested in a disassembler and analyze the asm code. This is not an easy task and most of the time you will come across with packed executables (you won't be able to extract any useful information from a packed executable, so you need to unpack it before).Once you've reversed the game, you can then sniff the packets from it and write your emulator.

In a nutshell, the whole process would be like:

1 - Unpack the game (if it is packed)
2 - Analyze the unpacked game in IDA (or any other disassembler)
3 - Search for the encrypt / decrypt functions (these are usually called before send/recv functions)
4 - Create a console app (this would be your emulator) in your favorite language
5 - In the console app that you've created, open a socket in a port to receive the packets
6 - Implement the enc/dec functions that you've reversed
7 - Establish a connection between the client of the game that you're trying to emulate and the console application you've made
8 - Replicate the logic of the game in your console app

There are probably a few steps missing (i didn't mention database, for example), but i guess this is how you start.

I've read again and about this part:
I tried to use disassemblers and debuggers to get data from networking functions but they didn't work either

What exacly have you done? What have you tried that didn't work?
 
Last edited:
Back
Top