Sasami's Ragnarok World Forums
Register | Login | Logout | Edit profile | Avatars
Views: 410016
Main | Memberlist | Member pages | Online users
Ranks | Chat | New Chat | FAQ | Search | Photo album
04-28-24 12:52 AM
Sasami's Ragnarok World Forums (LOCKED) - Programming/reverse engineering discussion - How do I.... |
Next newer thread
User
Post
pragma7









Since: 04-26-02
From: USA, NJ

Since last post: 7830 days
Last activity: 7844 days
Posted on 04-26-02 05:29 PMQuote | Edit | Delete
Hello, I decided to post this here because you guys seem to be doing this to make the game more enjoyable for everyone...not to perform malicious acts. I've been designing and developing small time applications for years now, and I'm still clueless when it comes to packets. From what I gather the IP packets send and recieve instructions on a peer to peer basis. A sniffer picks up these packets (does it interpret them too?). I actually bought a book on network protocols once, but it might as well have been in greek, it made absolutely no sense. If any of you are willing to take the time out, here's what I need;

1: An explanation of what kind of information is contained in the packets.
2: A recomendation for what sniffer to use on WinXP.
3: Does a sniffer interpret what instructions the packet is giveing? If not, how do I
figure this out?
4: How do I create and send packets?
5: Finaly, whatever else you think might be useful to get me started.

I thank you in advance for any help you might have for me, and please understand, I'm not here to learn how to be a malicious ass, I'm here to furthur my knowledge. I still remember the good old days of tweaking Doom...I've dropped out of the loop a bit I guess, and now I want to move on.

Thanks,
Rob


(edited by pragma7 on 04-26-02 12:30 PM)
Sasami

Goddess in Training








Since: 02-18-02
From: Back in texas! YAY! college sucked!
Rating: 10 (1030 pts)

Since last post: 7359 days
Last activity: 7359 days
Posted on 04-26-02 08:14 PMQuote | Edit | Delete
I've gotten through all 4 seemsters of cisco in year, thats where i learned about all the protocols and stuff, but it really doesn't help at all with what you are asking, that is stuff you learn on your own through research, but anyways here are the answers to your questions.

Whenever a packet is sent, it contains a header section and a data section, basically the header section has static parts which include: mac address of sender and reciever, ip address of sender and reciever, size of data packet, protocol (tcp udp etc), and some other stuff. (a mac address is a static address burned into a NIC's (network interface card) rom . A sniffer will pick up the packet and just tell you what was in the data section and maybe info about the packet if you wanted, like protocol, it doesn't interpret them.
1. Erm I think I already just answered that, after the header section, the data section contains whatever a programmer specifies, for example, you send apacket that said "Open start menu" and you had a program on the others person computer to accept it, then interpret it, and then do actions based on that. You could make it say that or "hit start button" or whatever, the programmer specifies what is in the data section.
2. I HATE WINXP! I am using it right now, i need to go back to 2k, so icky. There are 2 packet sniffers i use an old version of WPS (winsock packet sniffer) .07a pro. Unfortunatly it only intercepts outgoing packets. There was supposed to be a version released for win xp a few months back, but it never happened, and i can't get in contact with the programmer. I'm also using WildPacket's Etherpeek, or even Etherreal, i havn't tried either of these out very much though to see what i prefer.
4. ... you create and send packets through winsock...
5. erm... look for some free source code of a chat program or something online in vb and study it, it will show you basic winsock protocols like connecting, accepting, sending, and stuff.

Good luck.
pragma7









Since: 04-26-02
From: USA, NJ

Since last post: 7830 days
Last activity: 7844 days
Posted on 04-26-02 08:43 PMQuote | Edit | Delete
Thanks for all the info...I just sent you a private message, but I don't know if it went through...Either way, my email is roemmeler@yahoo.com, please contact me there if and when you have time.

Thanks again,
Rob
Sasami

Goddess in Training








Since: 02-18-02
From: Back in texas! YAY! college sucked!
Rating: 10 (1030 pts)

Since last post: 7359 days
Last activity: 7359 days
Posted on 04-26-02 09:15 PMQuote | Edit | Delete
i messaged you back (you sent your message twice actually ) but anyways, i don't have any program examples that use what you aer asking for. My stuff all goes for the assembly of ragnarok through ram.
pragma7









Since: 04-26-02
From: USA, NJ

Since last post: 7830 days
Last activity: 7844 days
Posted on 04-26-02 09:22 PMQuote | Edit | Delete
Even the one that teleports to the last save point? Oh well, guess I better get studying then .

Thanks, yet again,
Rob
Sasami

Goddess in Training








Since: 02-18-02
From: Back in texas! YAY! college sucked!
Rating: 10 (1030 pts)

Since last post: 7359 days
Last activity: 7359 days
Posted on 04-26-02 10:17 PMQuote | Edit | Delete
well.. you see... it sends the proper packet through ragnarok's exe
bumby









Since: 04-23-02

Since last post: 8029 days
Last activity: 8037 days
Posted on 04-26-02 11:49 PMQuote | Edit | Delete
pragma7: Tell us (the public) what kind of example program you are looking for, I may have one in my workdir
pragma7









Since: 04-26-02
From: USA, NJ

Since last post: 7830 days
Last activity: 7844 days
Posted on 04-30-02 03:38 AMQuote | Edit | Delete
Well, a simple example would be the warp to last save program, what I really need is step by step...I looked at the tut on your site, Sasami, but I can't figure out how to find when a value has changed (I know, i must sound stupid, but I've never worked with assembly). Could you provide me with a step by step on how to find a value? For example, current location, or when you move, how can I set a watch to find the value that changes?

Thanks,
Rob
Toshax









Since: 04-30-02
From: US East Coast

Since last post: 7993 days
Last activity: 7929 days
Posted on 04-30-02 03:56 AMQuote | Edit | Delete
I have absolutely zero experience with network protocols but one time I was actually able to use winsock successfully (I was so proud). but it was nothing amazing .. a simple http reader.
pragma7









Since: 04-26-02
From: USA, NJ

Since last post: 7830 days
Last activity: 7844 days
Posted on 04-30-02 04:26 AMQuote | Edit | Delete
By the way, I'm useing ollydbg like you suggested. I figured out how to "Attatch" the executable, but then I get a log full of direct input errors. Is this normal, or is it winXP (probably is). Let's try something more simple. Let's say the game Warcraft, and lets say I want to add minerals. Step-by-Step, how would I load the executable in ollydbg, find the value, and make the change. I know I'm probably asking a lot, but I really don't need an ultra detailed explanation. I've searched everywhere for tuts, but most of them skip the steps i need .

Thanks
Rob
Sasami

Goddess in Training








Since: 02-18-02
From: Back in texas! YAY! college sucked!
Rating: 10 (1030 pts)

Since last post: 7359 days
Last activity: 7359 days
Posted on 04-30-02 08:58 PMQuote | Edit | Delete
you need to be able to capture the current state of the ram, or if the value doesn't change that's better, then search in the assembly code for that address and thats the code to how it works. Or if theres something that says zeny number, you would like search the data section for "zeny %d" or %2d or... just put a % :-) and the ram value will be pushed before the string... it's just... figuring out how things work, starting where you are I would start searching the ram. i know that probably didn't make a lot of sense, my teacher is telling me to get back to cisco
Next newer thread
Sasami's Ragnarok World Forums (LOCKED) - Programming/reverse engineering discussion - How do I.... |
Edit/move/close/delete thread


Sasami's Ragnarok World

AcmlmBoard v1.7
© 2000-2001 Acmlm

Page rendered in 0.014 seconds.