Register for your free account! | Forgot your password?

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

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

Advertisement



Request Server Listing ?

Discussion on Request Server Listing ? within the SRO Coding Corner forum part of the Silkroad Online category.

Reply
 
Old   #1

 
sarkoplata's Avatar
 
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
Request Server Listing ?

Trying to find out hpmp update packets .. see
sarkoplata is offline  
Old 06/04/2011, 23:59   #2
 
elite*gold: 0
Join Date: May 2007
Posts: 99
Received Thanks: 39
hi,

before posting something like that,
Please search in forum threads. there's source code of your request
benco is offline  
Old 06/05/2011, 11:22   #3
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
In the login screen is a button to choose the server u want to play on. If u click on it u will receive your A101. Before receiving it, you will get the 6101 (S->C). Now, just send C->S 6101 (without data) and u will get the A101 as response.
Not hard at all, hm? Just need to know how to use an analyzer.
Kraizy​ is offline  
Thanks
1 User
Old 06/07/2011, 23:04   #4

 
sarkoplata's Avatar
 
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
I didnt want to create a new topic and cause spam.
Now im trying to find how hpmp update packets are built
i tried already but couldn't find anywhere and there is no any clear guide for it.
Thank you , sarkolata
sarkoplata is offline  
Old 06/08/2011, 09:36   #5
 
kevin_owner's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,484
Received Thanks: 809
You can take lesderid's login server documentation that should do the trick it's stickied btw.

Owh and something which isn't told in his documentation. the server list of isro (idk if it's also in another version) is a bit different since the amount of players is in a float so 0.00 = server empty 0.50 = half full and 1 = server full.
in some other version or older ones the capacity was a word or dword I can't remember and there are 2 of them so the first one is the current amount of players and the second one the max amount of players.

Keep this in mind if you get strange values
kevin_owner is offline  
Thanks
1 User
Old 06/08/2011, 14:16   #6
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
Quote:
Trying to find out hpmp update packets .. see Request Server Listing ?
Code:
HP/MP Update

AD 8A 4E 00		object id
04			type 1
02			type 2
FC 00 00 00		new value 

If type 2 = 3 or 5, then a trailing dword is added for MP value.


Type 1:

10			increase
01			hp decrease
04			mp decrease

Type 2:

01			hp
02			mp
03			hp & mp
04			?
05			mob hp & mp
From SREmu...
Kraizy​ is offline  
Old 06/08/2011, 14:38   #7

 
sarkoplata's Avatar
 
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
Quote:
Originally Posted by xKraizy View Post
Code:
HP/MP Update

AD 8A 4E 00		object id
04			type 1
02			type 2
FC 00 00 00		new value 

If type 2 = 3 or 5, then a trailing dword is added for MP value.


Type 1:

10			increase
01			hp decrease
04			mp decrease

Type 2:

01			hp
02			mp
03			hp & mp
04			?
05			mob hp & mp
From SREmu...
I have the same. I couldn't understand it from there..
sarkoplata is offline  
Old 06/08/2011, 16:14   #8
 
kevin_owner's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,484
Received Thanks: 809
Owh sorry I thought your were talking about the server list xD
kinda confusing title.

but if you want the hp and mp of your character and follow the updates you need to parse the 0x3013 or 0x34e5 packet if i am correct at least the big character data packet. one of the first bytes is the hp and mp and the stats packet which comes a bit after that one (idk the opcode) contains the current hp and mp.

now you need to do something which changes your hp like casting a pot and check the packets you logged to find the correct one which contains the hp and mp and with edx silkroad loader it'll already be parsed so all you need to do is read the packet.
kevin_owner is offline  
Old 06/08/2011, 18:51   #9
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
Well, I didn't test it yet so there could be some mistakes, but you could try something like that (no C&P-Code):
PHP Code:
int objectid packet.read_dword
byte type1 
packet.read_byte //increase or decrease, unnecessary atm...
byte type2 packet.read_byte //hp or mp or hp&mp

switch type2
{
case 
//hp
if objectid me.objectid then
me
.currenthp packet.read_dword
elseif moblist.contains(objectidthen
moblist
(objectid).currenthp packet.read_dword
end 
if
case 
//mp
if objectid me.objectid then
me
.currentmp packet.read_dword
end 
if
case 
//hp & mp
if objectid me.objectid then
me
.currenthp packet.read_dword
me
.currentmp packet.read_dword
end 
if

Kraizy​ is offline  
Old 06/08/2011, 19:05   #10

 
sarkoplata's Avatar
 
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
Quote:
Originally Posted by kevin_owner View Post
Owh sorry I thought your were talking about the server list xD
kinda confusing title.

but if you want the hp and mp of your character and follow the updates you need to parse the 0x3013 or 0x34e5 packet if i am correct at least the big character data packet. one of the first bytes is the hp and mp and the stats packet which comes a bit after that one (idk the opcode) contains the current hp and mp.

now you need to do something which changes your hp like casting a pot and check the packets you logged to find the correct one which contains the hp and mp and with edx silkroad loader it'll already be parsed so all you need to do is read the packet.
Pservers doesnt support edx loader
@xKraizy
I will check it out. thanks
sarkoplata is offline  
Old 06/21/2011, 12:23   #11

 
sarkoplata's Avatar
 
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
Fixed it finally... Here if it helps you ;
PHP Code:
  Dim ms As New MemoryStream(data)
        
Dim bn As New BinaryReader(ms)
        
Dim objectid As UInt32 bn.ReadUInt32
        Dim i 
As Byte bn.ReadByte
        Dim type 
As Byte bn.ReadByte

        Select 
Case CByte((type 1))
            Case 
0
                hpcur 
bn.ReadUInt32
                
Exit Select
            
Case 1
                mpcur 
bn.ReadUInt32
                
Exit Select
            
Case 2
                hpcur 
bn.ReadUInt32
                mpcur 
bn.ReadUInt32
                
Exit Select
            
Case 3
                Dim b 
As Byte bn.ReadByte
                
Exit Select
        End Select 
sarkoplata is offline  
Old 06/22/2011, 11:59   #12
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
Why do u do type -1? Just do type and:
1: Char.HP
2: Char.MP
3: Char.HP & Char.MP
4: dunno
5: Mob.HP (u will need it later if u r gonna make a bot)
Kraizy​ is offline  
Reply


Similar Threads Similar Threads
Privat server listing
02/28/2021 - Perfect World - 119 Replies
If you want to post or advertise a private server for perfect world, do it here. All other threads will be deleted. Please post some more info than only the address, something like rates or server details. All thanks posts, questions etc. will be deleted without a comment. (better you write a PM to the author)
Charakter Stats listing
11/03/2010 - General Gaming Discussion - 24 Replies
</span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td> QUOTE </td></tr><tr><td id='QUOTE'>&#60;!--QuoteEBegin--> Mage Base Attributes Basic Attack: 60 Range Attack: 90 Special Attack: 100 Grip Attack: 100
ZhuXian private server listing
05/08/2010 - Private Server Advertising - 15 Replies
These are all private servers in chinese found... Some tested and others not so much, so try them out and give me some feedback on them... No flaming/spamming/cursing of any kind, or you'll have some fun with infractions and what not.... ALL THESE SERVERS REQUIRE THE CHINESE CLIENT!!! 1) 008zx.com Registration:
How is top 20 listing determined?
10/13/2007 - Conquer Online 2 - 11 Replies
Hi, i have 3 lvl 130 archer, however, it nvr shown in the top 20 listing of my server.. i noted those top 20 are always the same few player. anyone know how is it determined?



All times are GMT +1. The time now is 11:58.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.