2013 Ragexe Area

wah Ind, your method is wrong
default_tongue.png


//----------------------------------------// Function to send char slot counts//----------------------------------------int hc_accept_enter2(int fd, struct char_session_data* sd) WFIFOW(fd,0) = 0x82d; WFIFOW(fd,2) = 0x1d; // packet len 29 WFIFOB(fd,4) = sd->char_slots;; // Normal slots. WFIFOB(fd,5) = 0; // Premium slots. WFIFOB(fd,6) = 0; // Billing slots. WFIFOB(fd,7) = sd->char_slots; // Producible?? WFIFOB(fd,8) = sd->char_slots; // valid ?? memset(WFIFOP(fd,9), 0, 20); // trash bytes WFIFOSET(fd,29); return 0;}// Tell client how many pages, kRO sends 17void hc_charlist_notify( int fd, struct char_session_data* sd ){ WFIFOHEAD(fd, 6); WFIFOW(fd, 0) = 0x9a0; WFIFOL(fd, 2) = 1; // pages to req / send them all in 1 until mmo_chars_fromsql can split them up WFIFOSET(fd,6);}// HC_ACK_CHARINFO_PER_PAGEvoid hc_ack_charinfo_per_page( int fd, struct char_session_data* sd ){ int j = 4; WFIFOHEAD(fd, 6); WFIFOW(fd, 0) = 0x99d; j+=mmo_chars_fromsql(sd, WFIFOP(fd,j)); WFIFOW(fd,2) = j; // packet len WFIFOSET(fd,j);} 
i did some captures on kRO several days ago, to verify the packet order, and it goes like so.

HC = cHarserver -> Client

CH = Client -> cHarserver

PACKET_HC_ACCEPT_ENTER2 = 0x82d // tell how many slots

PACKET_HC_CHARLIST_NOTIFY =  0x9a0 // tell client how many pages of chars

//client then sends one for each value you sent in 0x9a0

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

etc

.. but

you can skip this and just send

PACKET_HC_ACCEPT_ENTER2 = 0x82d

PACKET_HC_ACCEPT_ENTER =  0x6b

 
Last edited by a moderator:
Here is a little script i wrote after facing issues using a ro-launcher program to allow login via SSO-Login packet. You just create a .bat file for example login.bat, rightclick -> edit, paste following in and edit the name and exe / clientinfo.xml for your server.

It's simplistic but should be 100% functional for all windows systems.

@echo offecho ##########################*echo ####YourServerRO Login####*echo ########################*echo.echo.set /p user=PLEASE ENTER YOUR USERNAME: echo.set /p pswd=PLEASE ENTER YOUR PASSWORD: start YOUREXENAME.exe 1rag1 -t:%pswd% %user% /account:clientinfo.xml
Then of course save the file and just double click it. Instructions will be self explaining.

Saves you time changing the username all the time and also make it possible to distribute a RE client with SSO packet for your players, enjoy.

 
Last edited by a moderator:
Here is a little script i wrote after facing issues using a ro-launcher program to allow login via SSO-Login packet. You just create a .bat file for example login.bat, rightclick -> edit, paste following it and edit the name and exe / clientinfo.xml for your server.

Then of course save the file and just double click it. Instructions will be self explaining.

Saves you time changing the username all the time and also make it possible to distribute a RE client with SSO packet for your players, enjoy.
except if your password has a space character
default_tongue.png


the password should be sent as md5 hash, otherwise it is transmitted over the internet in plain text, and also in the tasklist as params

 
Here is a little script i wrote after facing issues using a ro-launcher program to allow login via SSO-Login packet. You just create a .bat file for example login.bat, rightclick -> edit, paste following in and edit the name and exe / clientinfo.xml for your server.

It's simplistic but should be 100% functional for all windows systems.

@echo offecho ##########################*echo ####YourServerRO Login####*echo ########################*echo.echo.set /p user=PLEASE ENTER YOUR USERNAME: echo.set /p pswd=PLEASE ENTER YOUR PASSWORD: start YOUREXENAME.exe 1rag1 -t:%pswd% %user% /account:clientinfo.xml
Then of course save the file and just double click it. Instructions will be self explaining.

Saves you time changing the username all the time and also make it possible to distribute a RE client with SSO packet for your players, enjoy.
Thanks! At least it's a bit easier to do testing with

 
wah Ind, your method is wrong
default_tongue.png


//----------------------------------------// Function to send char slot counts//----------------------------------------int hc_accept_enter2(int fd, struct char_session_data* sd) WFIFOW(fd,0) = 0x82d; WFIFOW(fd,2) = 0x1d; // packet len 29 WFIFOB(fd,4) = sd->char_slots;; // Normal slots. WFIFOB(fd,5) = 0; // Premium slots. WFIFOB(fd,6) = 0; // Billing slots. WFIFOB(fd,7) = sd->char_slots; // Producible?? WFIFOB(fd,8) = sd->char_slots; // valid ?? memset(WFIFOP(fd,9), 0, 20); // trash bytes WFIFOSET(fd,29); return 0;}// Tell client how many pages, kRO sends 17void hc_charlist_notify( int fd, struct char_session_data* sd ){ WFIFOHEAD(fd, 6); WFIFOW(fd, 0) = 0x9a0; WFIFOL(fd, 2) = 1; // pages to req / send them all in 1 until mmo_chars_fromsql can split them up WFIFOSET(fd,6);}// HC_ACK_CHARINFO_PER_PAGEvoid hc_ack_charinfo_per_page( int fd, struct char_session_data* sd ){ int j = 4; WFIFOHEAD(fd, 6); WFIFOW(fd, 0) = 0x99d; j+=mmo_chars_fromsql(sd, WFIFOP(fd,j)); WFIFOW(fd,2) = j; // packet len WFIFOSET(fd,j);} 
i did some captures on kRO several days ago, to verify the packet order, and it goes like so.

HC = cHarserver -> Client

CH = Client -> cHarserver

PACKET_HC_ACCEPT_ENTER2 = 0x82d // tell how many slots

PACKET_HC_CHARLIST_NOTIFY =  0x9a0 // tell client how many pages of chars

//client then sends one for each value you sent in 0x9a0

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

PACKET_CH_CHARLIST_REQ =  0x9a1

PACKET_HC_ACK_CHARINFO_PER_PAGE =  0x99d, // 3 chars

etc

.. but

you can skip this and just send

PACKET_HC_ACCEPT_ENTER2 = 0x28d

PACKET_HC_ACCEPT_ENTER =  0x6b
T___T and i spent so many hours on this =~ I would've saved the time if I had gone after you instead ;___:
 
if i where you i was glad. I'm a step closer to get ingame . Now i hang on charselect . My Server send this warning 

[Warning]: clif_parse: Received unsupported packet (packet 0x0888, 19 bytes received)
 what now wrong 
default_wacko.png


 
if i where you i was glad. I'm a step closer to get ingame . Now i hang on charselect . My Server send this warning 

[Warning]: clif_parse: Received unsupported packet (packet 0x0888, 19 bytes received)
 what now wrong 
default_wacko.png
0x0888,19,wanttoconnection,2:6:10:14:18

There is this packet in your packet.h ?

Did you write the right version in your clientinfo.xml (or sci.xml) ?

 
so im ingame now 
default_biggrin.png
.I change this in mmo.h 

49: #ifndef PACKETVER50: #define PACKETVER 2013032051: #endif
 now i can login in with ragexe.exe or anything else exe with *.bat file.

 But im lonly while i can not speak with NPC . 
default_rolleyes.gif


 
so im ingame now 
default_biggrin.png
.I change this in mmo.h 

49: #ifndef PACKETVER50: #define PACKETVER 2013032051: #endif
 now i can login in with ragexe.exe or anything else exe with *.bat file.

 But im lonly while i can not speak with NPC . 
default_rolleyes.gif
Can't quite understand what you mean by that?

 
Sorry i read this Topic and I'm trying for some time to login wihtout success. Today i got this unsupported packet error.

i edit the row 50 from Hercules/scr/common/mmo.h from #define PACKETVER 20120418 to  #define PACKETVER 20130320 ,

and after that i could login in the game . But i cannot speak with NPC,thats crash my client .

I hope I have explained it better this time.

 
Last edited by a moderator:
Back
Top