User | Post |
lagwagon
Since: 08-12-02 From: Orange County, CA
Since last post: 7772 days Last activity: 7772 days
|
|
i would gladly help you pragma, but unfortunatly i have no idea how to do this. i was never into botting or hacking, infact, the only external program i ever used was sasami's exp viewer (thx sasami, it was very useful), but unfortunatly it stopped working and i only used it for like 1 week. well... good luck getting those packets!
P.S. if you need somone to help you test plz contact me i really need to play RO again =P
-------------------- Â Â Â Â Â Â Â -=[chaos]=-
Kneo  :: lvl 36/31 theif
Lagwagon ::Â lvl 21/20 archer
:: lagwagon was here :: |
Xeno
Since: 10-19-02 From: Belgium
Since last post: 8063 days Last activity: 8047 days
|
|
I have a RO EMU you can play with it,spawn 1 baphometh and a santa poring.
i can give you the emulator if u need it ?
Maybe u can use it for something ...
If u need it just tell me !
-------------------- None Yet |
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
actually, that emulator would help...pm me with how you can send it. |
Sasami
Goddess in Training
Since: 02-18-02 From: Back in texas! YAY! college sucked! Rating: 10 (1030 pts)
Since last post: 7567 days Last activity: 7567 days
|
|
O.o my exp viewer didnt work? i never reprogrammed it for beta 2... and a few times on beta 1 it broke and i always had a new one out real fast.. that happened i think 4 times, usually a few months interval between each.
[edit] for some odd reason i was referring to beta 2 as beta and beta 1 as alpha
(edited by Sasami on 10-22-02 10:48 AM) |
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
Sasami. You said it would be easy to emulate a ragnarok server, but I'm haveing some difficulty here...noone seems to have anything on incomeing packets, and those are the most important ones in this case. I need to know what information is recieved by the client to prompt animations, movement, map changes etc. If you could point me in the right direction, it would be much appriciated....this isn't really my forte. |
MingShun
Since: 05-10-02 Rating: 10 (400 pts)
Since last post: 7615 days Last activity: 7615 days
|
|
Wonder what that would make alpha then...
Hmm...so that means we can use the RO client program to connect to your server. Sorry, I was thinking about why you would need the incoming packets. It occurred to me that you might want to remake the client, I threw out that idea immediately though, seemed like too much work.
Anyhoo, I could probably help make the client from scratch if I knew how to work with network packets. I'm afraid I don't even know how sockets work though. Oh great, you'd probably have to know how the server works too.
-------------------- No idea, what should I write anyway? |
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
The only thing I'll need to do client side is change the IP address(s) that it connects to. I need to know what packets are sent from the server to the client so that I know how to tell the client to, for example, show a picture of a mage in prontera casting thunder bolt on a poring...know what I mean? If I knew assembly, I think this would be SO much easier...tedious maybe, but much easier. I wish I just knew how to find the input buffer in the exe and interpret it as to what packets will do what when recieved. I keep trying to learn Assembly, but give up quickly...it's so illogical, it just makes me mad, lol. |
Sasami
Goddess in Training
Since: 02-18-02 From: Back in texas! YAY! college sucked! Rating: 10 (1030 pts)
Since last post: 7567 days Last activity: 7567 days
|
|
the packet isnt sent to the user saying "show mage lighting bolt" it says "mage casts lightning bolt on coord x,x" and MOST of it is logged in the bots right now, with experimentation most of the others can be found out too, for example a lot of the time gravity made client - server and server - client packets 1 off, like talking is CC and recieving a normal talk would be CD (just an example, not real packet) so you can look at each of the packet # for casting that skill and try pushing it back... as i said before a lot of it is logged in bots and if not, just experiment until you find a pattern.
[edit] there cant be more than 512 packets 00 00 - 01 FF. checking the assembly isnt always bad seeing if you can find where it detects a packet and then go down through all the jmp if and compare statements logging all the packets, then change the code slightly so it automatically goes to that packet when you hit a button so you can find out what it does, its all experimenting. and even if the gleek packet thing is all wrong (which i know a lot of it is cause i looked at it) it still has some general structures and some good information to work off of.
(edited by Sasami on 10-22-02 09:36 PM) |
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
ok, I'm gonna try to go through the assembly...but like I said...I really don't know assembly. If you could give me an example, I'd be set. Let's say this (useing ollydebug), step by step, how would I find when a certain string is entered (for example a command, like /who), then patch it so that when I press alt+1 it will do that command. If I had an example like that, I could do the rest fairly easily. Would you be so kind? Again, if you feel un-comfortable posting it here, just PM me. |
Xeno
Since: 10-19-02 From: Belgium
Since last post: 8063 days Last activity: 8047 days
|
|
Hmmm well i know 2 ppl who are currently working on a RO EMU.
Maybe i can ask them how they do the things and get some information out about the incoming packets etc.
Thats the least i can do ...
-------------------- None Yet |
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
that would be helpful thanks |
cpr007
Since: 10-23-02
Since last post: 8063 days Last activity: 7969 days
|
|
Hello,
If there is any chance that we could organice a group to try and write an RO EMU I would love to help. I have done some (limited) socket programming on windows and linux and am good (IMO) at normal ASM/C/C++.
I'll see what I see in a disassembled version of the exe. Is there some way I can get my hands on some REAL packets? That would help in hunting them down in the mayhem of the asm. (Btw - Its 700K lines when I decompile it - w00t!)
Anyways, Hope I can help,
~cpr007
|
Ryu_Tsuyuki
Since: 07-18-02
Since last post: 8064 days Last activity: 8162 days
|
|
My friend used to host apez forums sso, I could probaly give you his bot, if you want I'll search around for what I can
|
cpr007
Since: 10-23-02
Since last post: 8063 days Last activity: 7969 days
|
|
Hello,
Ryu - Thanks for the idea - I had forgotten about bots. I found the source to one on Apez and am looking through it right now (unfortunately, its in VB *gag*) - However, there is plenty of valuable information in it.
Any additional information would also be greatly appreciated.
~cpr007
|
pragma7
Since: 04-26-02 From: USA, NJ
Since last post: 8038 days Last activity: 8052 days
|
|
the problem with bots is that they're more focused on client->server information rather than server->client...give it a try if you want, but you'll probably only get info I allready have. The only way I can see right now is dissassembling the exe and pretty much spending a few hours reading through it...
Edit:
Some advice, CPR...I don't know ASM, but I do know programming. Try to find the input and output buffers, all information will pass through a buffer as such...once you find these it should be easy to find the if-then-else loops that check the buffer to see if, say, someone casted fireball, or someone clicked on 127,63 on the prontera map (just an example). What I'll need, basically, is every major possibility. I'm currently reading up on ASM again, don't know if I'll get further this time, but I'm giveing it a try. Also, once the server's ready, I'll need some help makeing a patch that will allow you to specify an IP address for the client to connect to via a text file or the like, whatever can be whipped up...I might try to do this myself also, not sure yet.
(edited by pragma7 on 10-23-02 09:02 PM) |
Da)2kCloudiX
Since: 10-24-02
Since last post: 8064 days Last activity: 8063 days
|
|
Hmmm...hi...sorry for getting out of the subject, but...
I some how stumbled in here while looking at iXga page...(checking to c if iRO will ever b up, hopes shot down by what i read..)..then i saw sasami's link...i wuz like what the hell....maybe this site has more info...
I started reading about all this...and got interested...(though i don't know what the hell u'r talking about, but that's the pnt. of my post)....so i then i made a account just to make this post...
Where? u ppl learn all this......
Cuhz the stuff u ppl are talking about, i find (with the risk of sounding gay) fascinating...
So yeah...if u guys could help me out, by telling me where i can learn all this, I'd appreciate it...then iono maybe i'll return the favor, =P.
Da)2kCloudiX |
MingShun
Since: 05-10-02 Rating: 10 (400 pts)
Since last post: 7615 days Last activity: 7615 days
|
|
What stuff are you talking about?
Programming? School is an easy way to get into programming. The teachers drill the basics into you, and I spent a few minutes before tests to cram. It's helped, though I think taking the time to learn the material is better. Practice is good too.
Asm? I'm not really sure. I'm thinking that if I searched the internet, I could find some interesting tutorials. From what I know, ASM is just slightly higher than machine language, and it differs across hardware. I mean, even graphing calculators have different ASM routines. For example, if I took Ti-83 assembly code and put it on a Ti-89, it wouldn't work. There are similarities though, I think if you program a computer with an Intel CPU, you can probably use the program on another computer with the same CPU. That, or the programmers use ASM routines that are common to most systems. Maybe a little of both. That's all I know I'm afraid.
News about RO? There are a lot of fansites, and there are people out there that know Gravity employees. And I mean know; not name, but person.
The list goes on, those seem to be the major topics right now. Am I even close?
-------------------- No idea, what should I write anyway? |
DaiSHi
Moderator
Since: 05-03-02 From: California Rating: 10 (400 pts)
Since last post: 7567 days Last activity: 7567 days
|
|
yea... i'm learning intel asm at the moment. since the number of registers varies among processors, code isn't always interchangeable. dev central has some tutorials on a few languages (no asm though).
-------------------- Loki: DaiSHi 49/38 future knight, H.O.L.Y.Merchant OC peekaboo
|
cpr007
Since: 10-23-02
Since last post: 8063 days Last activity: 7969 days
|
|
Hello,
Da)2kCloudiX:
Read this thread about where some of use learned programming:
http://www.castledragmire.com/ragnarok/forums/thread.php?id=483
pragma7:
From what I've looked at in one bot there is actually more recieving code (and packets) than sending packets. I'm trying to write down the structure of every packet I can manage to figure out. When I get a descent list I will post it. Also, I don't think we'll figure out very much from the asm. ASM by its very nature is "obsfuricated code" - and decompiled asm is worse. Hell, there isn't ever a .data section (in the sense that you and I think about it) It would be quite a pain to figure out anything from it. I'll try though - but no promises on that front.
Xeno - if you're listening: Is there any ways I can bum that RO Emulator you have off of you? Pleaseeeee?
~cpr007
|
Xeno
Since: 10-19-02 From: Belgium
Since last post: 8063 days Last activity: 8047 days
|
|
Hmmmm, i would do anything for some usefull information ... you just try to write the structures ... Just PM me on how to send it .
-------------------- None Yet |