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!

MapleStory-Android/PC Release

Initiate Mage
Feb 26, 2023
Reaction score
Hello Ragezone,

Recently, I found a very interesting MapleStory Game made with Unity.
View attachment 173231
it can run on Android/iOS/Desktop platform. today I'm going to share some techs to reverse-engineering this game. from those techs you can also modify your client and develop your sever. just like what we did in office-MapleStory(analyze packet structure)

1. Analyze

Briefly, this server is built with WebSocket, the architecture is 1 login server and 10 Channel server. the packet is plain-text, so it is easy to make your own server.

this is some basic information in interacting between server and client. the server would reponse 10 Channel Server Ip to client when player login success.
View attachment 173232View attachment 173233

Another thing is when player open this game, it will download lots of client resources and Hot-Fix library. this hot-Fix libraray is very important, becasue it is the main game logic. here is the libraray address( http://mxd.resource2.gy9191.com/zip/HotFix_Project.dll ).

2. Reverse-Engineering

now we have client and we know the basic archtecuture, so we can try to reverse it. (I mainly introduce how to do it in windows platform, but it is samilar for u to do it in android platform.

Tools .
1. dnSpy https://github.com/dnSpy/dnSpy
2. Download its client and Hot-Fix library.
As we mentioned before. this game would download the libraray from network, but it did not save to local, so the first step is hacking it and load the your native libaray.

Open dnSpy and load the 冒险新纪元_Data\Managed\Assembly-CSharp.dll, found the class GuangYing.AppDomainManager


we can see there is a function named LoadHotFixAssembly, unity's string encryption is based on base64, so
Decrypt it

it was ::/UnityProject/MapleStory/Assets/StreamingAssets/HotFix_Project.dll

so we can modify it directly from dnSpy to


and then put HotFix_Project.dll to local streamPath, it would load local library.

Note the
streamingAssetsPathis under 冒险新纪元_Data/StreamingAssets

3. Add your feature

using dnSpy to modify HotFix_Project.dll , you can find alot of packet receiver and even how to write packet. like
. After you modify it just re-compile and save, it would be ok.

Note: some useful functions

GyUtils.Instance.AlertBlueInput("You Message", delegate(string npcId)


GyUtils.Instance.PushChatBoxMessage("Put this message to Chat List", new Color?(Color.red));

Reverse Android.

In Android Platform, it packed with il2cpp, so you need to use il2cpp tools to unpack your libil2cpp.so

After unpack it, it looks like this

6.png. then modify it and repack it, you can get your mobile MapleStory.

The Android Client


The Windows Client


My Demo Patch Lib


We can talk more about how to reverse and how to develop an easyily server.

Thanks ...
Apr 15, 2023
Reaction score
I got to know about how to make my own server roughly, but the attachments in the post are no longer available.
Thanks for writing this post. I would be really apprieciate if you share further teaching :love::love::love:
Λκαяυz føяeνeя
Jun 28, 2008
Reaction score
That would be dope to have it available on Android, looking forward to it tbh