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!

DMO Emulator

Status
Not open for further replies.
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
I need help. So much to do...

Current Fixation: None.
Up next: ???

Github

Working
  • Inventory, Digimon Archive
  • 4th Tamer
  • All Digimon
  • Maps and Portals
Kinda Working
  • Hatching
  • Spawning (players, monsters)
  • Burst Evolution
Broken
  • Scanning
  • Items
  • Battle
  • Chat that isn't in Normal channel.
  • Multiplayer aspect (guilds, friends list, etc)
  • Everything else

Hatching 5/5 Dobermon

Shinka! WarGreymon and MetalGarurumon

Older Vids
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

looks like a long ID that comes from the a file type hard telling without the ability to alter the packet to see what its affecting.

346046876 look up this id see if it exists anywhere?

if it was my guess it would be a userID or a unquie key?

since they come before the username and charcname cant be some sort of model id very rarely would they put charc data before userdata....
 
Last edited:
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

I've got the packet partly working now. Turns out that the starter digimon affects how long the packet has to be.

And it seems you were right, jonnybravo. The first two bytes are an id of some sort. However, generating it seems to be a problem. Any value works but you disconnect immediately. It doesn't matter if I send any packets afterwards, right after I send the character data, it disconnects.
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

well without the ability to work with you and your source its hard telling. You mostly only get a d/c when u send a packet thats incorrect. I would also look at some of the packets after it and make sure data is matching it as well.

Your only other option would to attach a debugger to the client and sniff out the packet in the client side and see what its looking to change when u send it server side.

show me the packet before and after..

this one you posted is the server side correct i would need to see the client side to see what data it grabs also look for any other ID's that match the...

Code:
8D 15 EB 03 C0 74 00 00 54 53 00 00 04 - 04ID
 
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

well without the ability to work with you and your source its hard telling. You mostly only get a d/c when u send a packet thats incorrect. I would also look at some of the packets after it and make sure data is matching it as well.

Your only other option would to attach a debugger to the client and sniff out the packet in the client side and see what its looking to change when u send it server side.

The packet I'm sending matches the structure and length but there are some unidentified areas spanning 300 to 500 bytes long. On a brand new character, they're zero so I've set those to zero too. The disconnect happens whether or not I send the packets after character data, so the issue is probably with the packet. And the only thing changing is that weird id.

I'm not good enough at asm to be using a debugger to understand what is going on. I tried anyway but couldn't get anywhere.

If you want to see code, just tell me which bit you need to see.
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

show me the packet before and after..

this one you posted is the server side correct i would need to see the client side to see what data it grabs also look for any other ID's that match the...

Code:
8D 15 EB 03 C0 74 00 00 54 53 00 00 04 - 04ID
 
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

show me the packet before and after..

this one you posted is the server side correct i would need to see the client side to see what data it grabs also look for any other ID's that match the...

Code:
8D 15 EB 03 C0 74 00 00 54 53 00 00 04 - 04ID

Here's most of the log. I trimmed some stuff because the charinfo packet is around 5kb. How it works is the client gets the map server ip from the lobby server and connects. The map server sends a sort of handshake(?) and then the client responds with the ffff. The server sends back the current time and the first two bytes of the current time xor'd with a constant.

Depending on which starting digimon you picked, the [packet.Length - (charName.Length + monName.Length)] is between 5326-5500 bytes.
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

has to be model ID that links both model and model 2 id

like...

12 - links both player id and digmon id
A0 41 - player id 16800
9C - digmon id 2716

my only other guess looking at it is a random userID. Later on gets used as a Identifyer
 
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

has to be model ID that links both model and model 2 id

like...

12 - links both player id and digmon id
A0 41 - player id 16800
9C - digmon id 2716

my only other guess looking at it is a random userID. Later on gets used as a Identifyer

But a similar 4 bytes exist before each digimon's name. And the first byte always changes. The following two bytes can't be a player id. They are the same if a character has a certain class/model. Digimon too. The last three appear to be reserved for the model or some such.
IE:
Player 1 with model 80001 has A0 40 9C.
80002 = 20 41 9C.
80003 = A0 41 9C.
80004 = 20 42 9C.

And the client refers to the character and digimon using that first byte like this. Character: 1C 20. Digimon: 1B 10.
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

player ID and digmon ID

as you look in the movepacket in the end the player that moves would be the player ID 1A.

if the digmon moves it would be whatever it is

and your mov packet has your X and Y and direction and movspeed
 
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

player ID and digmon ID

as you look in the movepacket in the end the player that moves would be the player ID 1A.

if the digmon moves it would be whatever it is

and your mov packet has your X and Y and direction and movspeed

I surmised as much. But the problem is that I disconnect immediately after I send the packet. Not a crash like before, I get a nice message saying NOTICE: Disconnected from server. I think this id isn't random and is generated by an algorithm or something.

It doesn't matter if it's an official packet or not, I disconnect.

PS: Where's the direction? Is it the first int in the move packet?
 
Last edited:
Joined
Sep 27, 2006
Messages
557
Reaction score
88
Re: Packet Analysis for DMO

that ID really shouldn't matter as it has no affect on the other packets after it and before it based on what you showed me in the previous post.
Code:
MOVEPACKET

18 00 EC 03 66 -header
06 - ID
00 00 
2C 10 86 74 - X
00 00 
0C 57 00 00 - Y
00 00 00 00 
24 - movspd
1A - playerID

like i said without the abiltiy to work within your source or look at the game more i have no idea game looks pretty neet. Be nice to mess around with who knows.

Watched the video most things seem ok? Just double check all packets and make sure that all data is correct. Your d/c bec of a bad packet previously wether it be that char info packet or others after it..
 
Junior Spellweaver
Joined
Apr 4, 2007
Messages
155
Reaction score
13
Re: Packet Analysis for DMO

Watched the video most things seem ok? Just double check all packets and make sure that all data is correct. Your d/c bec of a bad packet previously wether it be that char info packet or others after it..

I've already compared what's being send between my server and the client and the official servers and the client. I know usually id isn't enough to crash a game but there doesn't seem to be a problem anywhere else.

I've attached two logs, one from my server, the other from the official server. Compare for yourself.

Send me an email, I can show you the source. I PMed you my email.
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Aug 2, 2011
Messages
43
Reaction score
0
Re: Packet Analysis for DMO

Good job guys,would be great have a Private server of this fantatic game that Joymax made a trash =/

The game is C++ and Mysql?
 
Newbie Spellweaver
Joined
Aug 2, 2011
Messages
43
Reaction score
0
Re: Packet Analysis for DMO

once I scoured the folders on DMO and I found not the images of the maps in them,so I asked a friend and he said that when you log it sort of makes an "auto-download" of the map images.

is this true?
 
Newbie Spellweaver
Joined
Sep 23, 2007
Messages
19
Reaction score
0
Re: Packet Analysis for DMO

I really wish to help anyway, but I only know a little about Java and nothing more. ._.
If you could just send me images from your progress, would be so... AWESOME! ;-;
 
Newbie Spellweaver
Joined
Aug 2, 2011
Messages
43
Reaction score
0
Re: Packet Analysis for DMO

Shiro Yeah some time ago wasn't needed to unpack anything all the files was free on the folder...

And there's no one images of the maps...
 
Last edited:
Status
Not open for further replies.
Back
Top