RF Online Emulator

Status
Not open for further replies.
Re: [Woofe Emu] Emulator Status [30%]

well actually if someone wrote a 1.5 emulator CCR couldnt do much about it but if u change the client in any manner then they can come after you same thing happened with WoW


Luckily the way the 1.5 client is written, I don't even need to touch the client at all.

P.S. Login server being released today.
 
Re: [Woofe Emu] Emulator Status [30%]

1.5 just isn't worth the time IMO. The official server failed so bad they closed it and went back to 2232. There would need to be some major changes required for 1.5 to be successful with the players.

CCR really fucked up 1.5. It should have been a lot better, but the only thing really great about it was the updated interface.
 
Re: [Woofe Emu] Emulator Status [30%]

I know its kind of a long shot, but does anyone have any information at all regarding the structure of RF packets? Some of the packets appear to be encrypted and we are having issues figuring out the formats of some of them. Any info at all would be greatly appreciated.
 
Re: [Woofe Emu] Emulator Status [30%]

hmm i honestly cant say i know that packet how ever i might know someone who can find out and is well connected so if u want pass me the packet captured in a file and i can see what my friend can do with it. or if you have skype i pm me and i can add u to it and add him to a call so u can speak with him.



and hey ron long time no see havent seen u since i quit from deving your play rfo because you called me a worthless dev lol



Luckily the way the 1.5 client is written, I don't even need to touch the client at all.

P.S. Login server being released today.

and ya exactly so writing a emulator ccr cant do a damn thing about it as long as u edit the client in no way shape or form. :D
 
Re: [Woofe Emu] Emulator Status [30%]

hmm i honestly cant say i know that packet how ever i might know someone who can find out and is well connected so if u want pass me the packet captured in a file and i can see what my friend can do with it. or if you have skype i pm me and i can add u to it and add him to a call so u can speak with him.



and hey ron long time no see havent seen u since i quit from deving your play rfo because you called me a worthless dev lol





and ya exactly so writing a emulator ccr cant do a damn thing about it as long as u edit the client in no way shape or form. :D

Here's the encrypted movement packet.


If anyone could get this de-crypted, then that would be awesome. We'd be well on our way to finishing the emulator.

Header
-----------
Packet Size: 2 bytes (short)
Data Size: 2 bytes (short)
Packet Type: 1 byte (short)
Packet ID: 1 byte (short)

The rest are floats. Floats(4 bytes) long.
I'm pretty sure I'm missing something here, but that's the jist of it.
 
Re: [Woofe Emu] Emulator Status [30%]

Looks interesting i tried the same a long time ago but its kinda time consuming ^_-
 
Re: [Woofe Emu] Emulator Status [30%]

Here's the encrypted movement packet.


If anyone could get this de-crypted, then that would be awesome. We'd be well on our way to finishing the emulator.

Header
-----------
Packet Size: 2 bytes (short)
Data Size: 2 bytes (short)
Packet Type: 1 byte (short)
Packet ID: 1 byte (short)

The rest are floats. Floats(4 bytes) long.
I'm pretty sure I'm missing something here, but that's the jist of it.

Hello!
How to use this document
Thank you
 
Re: [Woofe Emu] Emulator Status [30%]

hm... maybe this help you void CPlayer::sendmsg_StartMoveResult(char *pMsg)
{
decrypt_Move(sizeof(_move_request_clzo), pMsg);
_move_request_clzo *pRecv = (_move_request_clzo *)pMsg;
printf("Move start: from (%f;%f;%f) to (%d;0;%d)\n",pRecv->fCur[0],pRecv->fCur[1],pRecv->fCur[2],pRecv->zTar[0],pRecv->zTar[0]);
setPos(pRecv->fCur);
//TODO: HARDCODED. Need send this to players around.
bMove = true;
}

void CPlayer::decrypt_Move(int nSize, char *pMsg)
{
for(int i = 0; i < nSize; i++)
{
pMsg ^= 32 + wXorKey;
pMsg -= 23 + byPlusKey;
}
}

void CPlayer::encrypt_Move(int nSize, char *pMsg)
{
for(int i=0;i<nSize;i++)
{
pMsg += 23 + byPlusKey;
pMsg ^= 32 + wXorKey;
}
}
 
Re: [Woofe Emu] Emulator Status [30%]

wXorKey
hm... maybe this help you void CPlayer::sendmsg_StartMoveResult(char *pMsg)
{
decrypt_Move(sizeof(_move_request_clzo), pMsg);
_move_request_clzo *pRecv = (_move_request_clzo *)pMsg;
printf("Move start: from (%f;%f;%f) to (%d;0;%d)\n",pRecv->fCur[0],pRecv->fCur[1],pRecv->fCur[2],pRecv->zTar[0],pRecv->zTar[0]);
setPos(pRecv->fCur);
//TODO: HARDCODED. Need send this to players around.
bMove = true;
}

void CPlayer::decrypt_Move(int nSize, char *pMsg)
{
for(int i = 0; i < nSize; i++)
{
pMsg ^= 32 + wXorKey;
pMsg -= 23 + byPlusKey;
}
}

void CPlayer::encrypt_Move(int nSize, char *pMsg)
{
for(int i=0;i<nSize;i++)
{
pMsg += 23 + byPlusKey;
pMsg ^= 32 + wXorKey;
}
}



I'll be trying this.
Any idea what wXorKey and byPlusKey is? or the function for them?
 
Re: [Woofe Emu] Emulator Status [30%]

Good news people. Thanks to Darks' help, I figured out the movement decryption. Turns out I was using bytes instead of integers to brute force the byPlusKey and wXorKey values.

In any case. I'll be slowly moving forward with the project and will keep this thread up-to-date on the happenings.
 
Re: [Woofe Emu] Emulator Status [30%]

Good news people. Thanks to Darks' help, I figured out the movement decryption. Turns out I was using bytes instead of integers to brute force the byPlusKey and wXorKey values.

In any case. I'll be slowly moving forward with the project and will keep this thread up-to-date on the happenings.

I'm very interested in this project and will help out any way I possibly can. Send me a PM. I love RF emulation but hate MSSQL and all these foreign files. I've been searching for a thread like this forever.
 
As of today, I'm no longer working on it. It's come to my realization, there's no point. Not a big enough demand for it. I don't work for free, so I'd rather spend my time doing something else.
If you want the source.(They're incomplete), then you may as for them VIA THIS THREAD. Private messages will be ignored, depending on the number of people who ask. I'll release it to everyone.
 
I'm coding in C# now for a couple of years and i'm verry interested at your code, because i think i can learn alot from it about packet routing ect.
 
Status
Not open for further replies.
Back