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!

Development v40 Beta Edition Source | Merry Christmas

Newbie Spellweaver
Joined
May 14, 2015
Messages
26
Reaction score
1
ContiMove inherits CField, so you can find it has an XREF to CField::OnPacket. Very easy to find it if you know your way around IDA :p. I don't know if it exists in v40beta, but considering the fact that Orbis exists in the client, I believe that the packets for continents would exist as well.

I looked through the entire branch of CField::OnPacket and it's not there. In the v95 idb it's handled by CField_ContiMove::OnPacket, but like I said I'm having trouble finding it in the v40 idb.
 
Last edited:
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
I looked through the entire branch of CField::OnPacket and it's not there. In the v95 idb it's handled by CField_ContiMove::OnPacket()

Yes, you won't find it in CField::OnPacket. It's in CField_ContiMove, a class separate of CField because it inherits it. That's why it overrides the method for OnPacket and default case returns to CField::OnPacket. So, CField_ContiMove has a call to CField::OnPacket and you can just do an XREF to get to it.

See, simply XREF CField::OnPacket
xECcv0J - Development v40 Beta Edition Source | Merry Christmas - RaGEZONE Forums


It'll take you to the classes. Voila.
1mYGqaG - Development v40 Beta Edition Source | Merry Christmas - RaGEZONE Forums


Then we simply name them:
QTAEct1 - Development v40 Beta Edition Source | Merry Christmas - RaGEZONE Forums


Feel free to check out some IDA tutorials, if you know your way around the client or are pretty good with IDA, it'd take you seconds to find practically anything in an IDB. The packet structure is the same by the way, so if you have the OdinMS packets for them (boatPacket I think? can't remember) then it only needs a simple opcode update.
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
May 14, 2015
Messages
26
Reaction score
1
@Eric Thanks for the help, do you have a link to a recommended tut? The one's I've read are pretty basic.
 
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
Eric Thanks for the help, do you have a link to a recommended tut? The one's I've read are pretty basic.

The two tutorials that I had read to get started were these: http://forum.ragezone.com/f922/getting-packet-structures-opcodes-ida-872876/ http://forum.ragezone.com/f922/getting-packet-structures-opcodes-using-792436/

It may be a bit basic, but it's a learning process. If you've looked at v95 and found the subs for it, then you just need to look for how to find them in v95 and replicate it in your IDB. Look for functions you already have named and make your way to the source from there.
 
Newbie Spellweaver
Joined
May 14, 2015
Messages
26
Reaction score
1
@Eric how would you go about finding what to NOP for client edits? I need to make nx droppable and tradeable, but I'm not sure how to go about it.
 
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
Eric how would you go about finding what to NOP for client edits? I need to make nx droppable and tradeable, but I'm not sure how to go about it.

I'd find public addys for v62, v75, or v83 that has Droppable NX included and find the functions of them in IDA. Then, I'd try to find that functions name or how to get to it so I can find my way to that same function in the v40b client. From there, I'd see the addys that were NOP'd specifically and look in IDA, then find the same assembly equivalent in v40b and NOP those addresses.

Alternatively you can debug the client with Cheat Engine and trace the restrictions and test nop them in memory until you find it, but I personally do my client addys from knowledge of the client around IDA.
 
Joined
Apr 10, 2008
Messages
4,087
Reaction score
1,264
The two tutorials that I had read to get started were these: http://forum.ragezone.com/f922/getting-packet-structures-opcodes-ida-872876/ http://forum.ragezone.com/f922/getting-packet-structures-opcodes-using-792436/

It may be a bit basic, but it's a learning process. If you've looked at v95 and found the subs for it, then you just need to look for how to find them in v95 and replicate it in your IDB. Look for functions you already have named and make your way to the source from there.

you should make a tuto urself
and rls ur idbs
 
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
you should make a tuto urself
and rls ur idbs

Sure, maybe this summer I'll write a huge tutorial on how to work everything with IDA. I don't have that many IDB's that are named on a major scale (most are just basics), and for this source I already released it. The only two IDB's I've named a ton were v83/v90 which I prefer to keep private for now :p
 
Junior Spellweaver
Joined
Apr 4, 2009
Messages
110
Reaction score
14
Here's a small release for those of you who still haven't gotten your SQL stuff working..
<-- this SQL file has the missing columns including for TrockLocations
 
Newbie Spellweaver
Joined
Oct 27, 2018
Messages
5
Reaction score
0
Someone can help me with this error :
 
Last edited:
Newbie Spellweaver
Joined
Jan 9, 2019
Messages
18
Reaction score
0
How do I install this? Also when do you think scrolling be in this?
 
Newbie Spellweaver
Joined
Oct 27, 2018
Messages
5
Reaction score
0
Work great Eric thanks so much !but there is some bug report : A lot of scripts (npc) not coded (i think you know but easy to fix)..
bug in map 0 with teleports (when you portal there is warp everytime to random place).
 
Joined
Sep 8, 2011
Messages
822
Reaction score
129
Work great Eric thanks so much !but there is some bug report : A lot of scripts (npc) not coded (i think you know but easy to fix)..
bug in map 0 with teleports (when you portal there is warp everytime to random place).
This issue is because the source reads the portal nodes from the WZ wrong, instead of using the ID, change it to Index (as in, it starts at 0).

IIRC Nexon fixed this in the next versions of the official-release count, but low versions (as well as the Beta edition) had this issue embedded in the WZ data, from which the server is reading.
 
Newbie Spellweaver
Joined
Oct 27, 2018
Messages
5
Reaction score
0
This issue is because the source reads the portal nodes from the WZ wrong, instead of using the ID, change it to Index (as in, it starts at 0).

IIRC Nexon fixed this in the next versions of the official-release count, but low versions (as well as the Beta edition) had this issue embedded in the WZ data, from which the server is reading.
how can i fix it?..
i tried to change it in map editors / xmls, and still nothing..
 
Joined
Sep 8, 2011
Messages
822
Reaction score
129
how can i fix it?.. i tried to change it in map editors / xmls, and still nothing..
This will take so much time and the data may be overwritten if you ever update to newer versions with it. Instead, opt to use the simple fix, of changing the way your source reads it temporarily, to read as an Index instead of it's order. You can even code this into the server configuration so that a simple Boolean would control the way the portals are being read.
 
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
This will take so much time and the data may be overwritten if you ever update to newer versions with it. Instead, opt to use the simple fix, of changing the way your source reads it temporarily, to read as an Index instead of it's order. You can even code this into the server configuration so that a simple Boolean would control the way the portals are being read.

Well technically it's the proper fix to iterate them that way because their portal "ID" really is the index. You can see that I do it Nexon's way in OrionAlpha ( ) and it works perfectly. It's nice that Nexon ended up ordering them correctly later on though.
 
Back
Top