Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Coding Corner
You last visited: Today at 13:29

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Disconnect when select character

Discussion on Disconnect when select character within the SRO Coding Corner forum part of the Silkroad Online category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Disconnect when select character

Hello, I am trying to log into the game but I always get DC when send packet with opcode (0x7001)

I am trying to log clientless...

Receved packet (S) - My response
(Ex. 0xA103 received by server, I send packet with opcode 0x7624)
0xA103 - 0x7624 (w/o any data, not encrypted)
0xb624 - 0x7625 (with data, not encrypted) That should be passcode
0xb625 - 0x7007 (with data, not encrypted) Requesting the character list
0xb007 - 0x7001 (with data, not encrypted) That should enter the game with selected character
After I send the packet 0x7001 I get DC... Sometimes I even get the response from server with packet 0xB001 but it always DC...

Packet structure:
Code:
case 0xA103:
{
	StreamUtility & b = container.data;
	uint8_t success = b.Read<uint8_t>();
	if (success == 1) 
	{
		Inject(0x7624, false); // I don't know what is the purpose of this packet, but I saw with packet parser that client is sending it to the server... Maybe it is passcode request
	}
}break;

case 0xb624: // Server returns it with value 1 
{					   
	StreamUtility m;
	m.Write<uint8_t>(2); // Enter the passcode (1 is change passcode... I guess)
	m.Write<uint16_t>(8); // Passcode length
	m.Write_Ascii("12345671"); // Passcode
	Inject(0x7625, m, false); // Injecting passcode packet
}break;

case 0xb625: // Passcode has been entered successfully so send the character list request
{
	 StreamUtility m;
	 m.Write<uint8_t>(2); // Code for character list
	 Inject(0x7007, m, false); // Injecting character list request packet
}break;

case 0xb007: // Returns character list, now have to enter the game with character
{
	StreamUtility m;
	m.Write<uint16_t>(4); // Character name length
	m.Write_Ascii("test"); // Character name
	Inject(0x7001, m, false); // Injecting packet to enter the game with character test
	// After injecting that packet I am always disconnected
}break;

case 0xB001: // Response on the packet 0x7001
{
	// Received the packet 0xB001						   
} break;
FireBlow is offline  
Old 12/20/2014, 10:58   #2
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11
The format of 0x7001 packet is
04 00 //Length in 2 bytes
74 65 73 74 //Name

I thing "uint8_t" for 1 byte so you need to use "uint16_t" to write 2 bytes length
Try and give me feedback.
tarek1500 is offline  
Old 12/20/2014, 11:27   #3
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by tarek1500 View Post
The format of 0x7001 packet is
04 00 //Length in 2 bytes
74 65 73 74 //Name

I thing "uint8_t" for 1 byte so you need to use "uint16_t" to write 2 bytes length
Try and give me feedback.
Oh ye... I had uint16_t but was testing something and forgot to change it back...

But the result is still same... Disconnect



EDIT:

Alright I firugred it out...

I must not inject 0x7642 packet...

Code below is wrong... When I receive 0xA103 packet I must wait for the passcode packet and never Inject 0x7624...
Code:
case 0xA103:
{
	StreamUtility & b = container.data;
	uint8_t success = b.Read<uint8_t>();
	if (success == 1) 
	{
		Inject(0x7624, false); // Wrong !!! Never inject it...
	}
}break;
FireBlow is offline  
Old 12/20/2014, 12:04   #4
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11
I don't know. But I sent it anyway and work fine
tarek1500 is offline  
Old 12/20/2014, 12:39   #5
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by tarek1500 View Post
I don't know. But I sent it anyway and work fine
How did you answer on the hackshield packet? Did anyone upload somewhere hackshield packet (0x2114) structure and how to deal with it?
FireBlow is offline  
Old 12/20/2014, 12:49   #6
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11
Create ur own HS server just like ibot
tarek1500 is offline  
Old 12/20/2014, 15:47   #7
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by tarek1500 View Post
Create ur own HS server just like ibot
Is ibot source code available? So I can see how it works...
FireBlow is offline  
Old 12/20/2014, 19:19   #8
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11
no , will try to upload a source code
tarek1500 is offline  
Old 12/20/2014, 23:41   #9
 
elite*gold: 0
Join Date: Feb 2009
Posts: 43
Received Thanks: 5
first at all, witch proxy u use with this client less code ?
second u sent town respawn packet after u recv b001 packet ?
theking200051 is offline  
Old 12/21/2014, 20:35   #10
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11


Understand it and make your own. Try not to copy and past.
Code not belongs to me
tarek1500 is offline  
Old 12/22/2014, 11:27   #11
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by theking200051 View Post
first at all, witch proxy u use with this client less code ?
second u sent town respawn packet after u recv b001 packet ?
1. I don't use any proxy... I am connecting with TCP socket to the joymax gateway server and then redirect to the agent server...

2. No... I sent town spawn packet after recieving 0xb007 packet... 0xb001 just notifies whetger the spawn was successful...

Quote:
Originally Posted by tarek1500 View Post


Understand it and make your own. Try not to copy and past.
Code not belongs to me
Thank you...

One question... What does that IP address represents?

Code:
HackShield hs = new HackShield("31.193.168.141", 15775);
FireBlow is offline  
Old 12/22/2014, 13:29   #12
 
elite*gold: 0
Join Date: Aug 2009
Posts: 152
Received Thanks: 11
It should be the IP & port for iSro which is "121.128.133.29 / 30" and port 15779

But what do you mean by "I sent town spawn packet after receiving 0xb007 packet... 0xb001 just notifies whether the spawn was successful"

When I receive 0xB007 from server I send 0x7001 to select which char to login then it sends 0xB001 to confirm it. Is that what are you doing?
tarek1500 is offline  
Old 12/22/2014, 17:51   #13
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by tarek1500 View Post
When I receive 0xB007 from server I send 0x7001 to select which char to login then it sends 0xB001 to confirm it. Is that what are you doing?
Thats why my char was invisible... I am now sending packet 0x34C5 to confirm spawn and char appears in the game... Do you know what are 0x750E and 0x3537 packets?
FireBlow is offline  
Old 12/22/2014, 22:33   #14
 
elite*gold: 0
Join Date: Feb 2009
Posts: 43
Received Thanks: 5
Quote:
Originally Posted by FireBlow View Post
Thats why my char was invisible... I am now sending packet 0x34C5 to confirm spawn and char appears in the game...
so the client less work stable ?

Quote:
Originally Posted by FireBlow View Post
1. I don't use any proxy... I am connecting with TCP socket to the joymax gateway server and then redirect to the agent server...
u used pushedx,silkroadsecurityAPI codes for handling security bytes and handshake process or u just make u r own ?
theking200051 is offline  
Old 12/22/2014, 22:54   #15
 
elite*gold: 0
Join Date: Nov 2013
Posts: 9
Received Thanks: 0
Quote:
Originally Posted by theking200051 View Post
so the client less work stable ?
Not yet... I have to deal with the hackshield packet...

Quote:
Originally Posted by theking200051 View Post
u used pushedx,silkroadsecurityAPI codes for handling security bytes and handshake process or u just make u r own ?
I have used WeeMans code which is based on pushedx code...
FireBlow is offline  
Reply


Similar Threads Similar Threads
[HELP] Disconnect 5101 on screen "Select Character"
02/17/2014 - Rohan - 2 Replies
i have a little problem, my server some user will disconnect 5101 on screen "Select Character". Can you tell me how to fix it. I do not know how to solve it. help me please..
character select help me pls
10/11/2013 - Dekaron Private Server - 2 Replies
Imageshack - eujq.png , I wanted to change loa castle, how do?
Disconnect after select server
06/19/2012 - Shaiya Private Server - 10 Replies
Hey, im getting Disconnected after i select server and press ok. why? :P and just give me a answer please... ive been trying to search for a really long time Heres the latest logs i got after this happend: and second log
Can't select Character
04/27/2011 - Ragnarok Online - 0 Replies
Hey i get the problem with Openkore that i can't login after character select i get this error: Packet Parser: Unhandled packet: 006C Handler: connection_refused what should i do
Metin 2 Select Character select error
02/26/2011 - Metin2 Private Server - 1 Replies
Dabei-ist das spiel Charakter-Auswahl Error help Log Files 0225 23:37:16227 :: CEffectManager::RegisterEffect - LoadScript(d:/ymir work/effect/hit/percent_damage1.mse) Error 0225 23:37:16227 :: CInstanceBase::RegisterEffect(eEftType=264, c_szEftAttachBone=, c_szEftName=d:/ymir work/effect/hit/percent_damage1.mse, isCache=1) - Error 0225 23:37:16227 :: CEffectManager::RegisterEffect - LoadScript(d:/ymir work/effect/hit/percent_damage2.mse) Error 0225 23:37:16227 ::...



All times are GMT +2. The time now is 13:29.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.