0x3026/0x30B8 Packet Problem

08/11/2017 05:51 Mr.Awesome1337#1
First problem:i try to use this packet(0x3026) to get
Charname&Message in Stall Chat

this is Full Packet:
Code:
[S -> C][3026]
09                                                ................
09 00                                             ................
41 62 64 65 6C 61 7A 69 7A                       BOT.......
03 00                                             ................
68 65 79                                          testchat.............
this C# Corner:
Code:
                             if (current.Opcode == 0x3026)
                            {

                                string Charname = current.ReadAscii();
                                string Message = current.ReadAscii();
                                try
                                {
                                    Globals.MainWindow.listBox1.Items.Add(Charname);
                                    Globals.MainWindow.listBox1.Items.Add(Message);

                                }
                                catch
                                {
                                }

                            }
But i faced a problem when i got the Charname/Messsage and try to send any notice or anything related to Agent i Got this error

[Only registered and activated users can see links. Click Here To Register...]

NOTE:this packet works fine i got the charname/Message but behind that i faced (SilkroadSecurityAPI) Packet Problem


Second problem:when i try to use this packet(0x30B8) to get
Charname of the Stall Creator behind me

Full Packet:
Code:
[S -> C][30B8]
66 53 07 00                                       fS..............
0D 00                                             ................
5B 66 64 5D 27 73 20 73 74 61 6C 6C 2E            [BOT]'s.stall....
07 0F 00 00                                       ................

C# Corner:
Code:
if (current.Opcode == 0x30B8)
{
string charname = current.ReadAscii();
llistBox1.Items.Add(charname);
}
but i got in my listbox something like a (dot)

[Only registered and activated users can see links. Click Here To Register...]
hope can any one help me
08/11/2017 12:36 DaxterSoul#2
First and foremost, you should take a look at my documentation regarding those packets.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]

You can match them (most of the time) line by line with your output from edxAnalyzer. But you need respect any branches (if else) that may occur.

Your 0x3026 code is ignoring the chatType and also the branches.

Visually speaking this is what happens with your code...
[Only registered and activated users can see links. Click Here To Register...]

...and what it should look like
[Only registered and activated users can see links. Click Here To Register...]

Your 0x308B code is ignoring the UniqueID. But more importantly, you can only read the stall name that "someone" created from 0x30B8 using ReadAscii().
In order to get the character name using the UniqueID you have to read the spawn packets first. More on that [Only registered and activated users can see links. Click Here To Register...]and [Only registered and activated users can see links. Click Here To Register...].
08/11/2017 16:13 Mr.Awesome1337#3
Quote:
Originally Posted by DaxterSoul View Post
First and foremost, you should take a look at my documentation regarding those packets.
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]

You can match them (most of the time) line by line with your output from edxAnalyzer. But you need respect any branches (if else) that may occur.

Your 0x3026 code is ignoring the chatType and also the branches.

Visually speaking this is what happens with your code...
[Only registered and activated users can see links. Click Here To Register...]

...and what it should look like
[Only registered and activated users can see links. Click Here To Register...]

Your 0x308B code is ignoring the UniqueID. But more importantly, you can only read the stall name that "someone" created from 0x30B8 using ReadAscii().
In order to get the character name using the UniqueID you have to read the spawn packets first. More on that [Only registered and activated users can see links. Click Here To Register...]and [Only registered and activated users can see links. Click Here To Register...].
Opcode 0x30B8
i can read the charname if the stall created normally like [Bot]'stall
and remove [,]'stall name from stall so i got the char name wihout problem
but if the stall created like that Bot without [BOT]'stall i got a something like dot so i want to know what the diff between get the charname by remove it from [,]'stall and by get as BOT ?



in case of opcode 0x3026 ur images i cannot see it to understant what you say

and about spawn packet and read Unique id and charname and it's items
it's complex with me i try to handle it but every time fail !
08/13/2017 13:27 Eslam Galull#4
Quote:
Originally Posted by Mr.Awesome1337 View Post
Opcode 0x30B8
i can read the charname if the stall created normally like [Bot]'stall
and remove [,]'stall name from stall so i got the char name wihout problem
but if the stall created like that Bot without [BOT]'stall i got a something like dot so i want to know what the diff between get the charname by remove it from [,]'stall and by get as BOT ?



in case of opcode 0x3026 ur images i cannot see it to understant what you say

and about spawn packet and read Unique id and charname and it's items
it's complex with me i try to handle it but every time fail !
so simply you cannot parse single spawn packet , and want to read the char name from opening a stall by the target char , DaxterSoul trying to tell you how to handle the packet itself and the chat type byte


anyways when i back home i will send to you the code that you want ..
08/13/2017 17:44 Mr.Awesome1337#5
Quote:
Originally Posted by Eslam Galull View Post
so simply you cannot parse single spawn packet , and want to read the char name from opening a stall by the target char , DaxterSoul trying to tell you how to handle the packet itself and the chat type byte


anyways when i back home i will send to you the code that you want ..
Thanks alot..
How i can contact with you?
08/14/2017 10:31 Eslam Galull#6
Quote:
Originally Posted by Mr.Awesome1337 View Post
Thanks alot..
How i can contact with you?
im sry i forget you yesterday i was so tired ,
skype : eslam.galull

i will post the code at night today isa
08/14/2017 17:43 Mr.Awesome1337#7
Quote:
Originally Posted by Eslam Galull View Post
im sry i forget you yesterday i was so tired ,
skype : eslam.galull

i will post the code at night today isa
ok thanks iam waiting
08/15/2017 20:56 Eslam Galull#8
0x30B


0x3026

P.S we just try to help you as somebody else helped us before, next time no one would gives you a ready to use Code

G.L
08/17/2017 00:20 theking200051#9
Eslam , can i ask why u create new thread for every if & elseif (_pck.Opcode == 0xZZZZ) case ?
08/17/2017 17:47 memoxl#10
iam trying to get character name in general chat but always i get its id, how can i get the character name ?

case 1:
uint num2 = current.ReadUInt32();
string str5 = current.ReadAscii();
String timeStampx = GetTimestamp(DateTime.Now);
Globals.MainWindow.richTextBox2.AppendText("[" + timeStampx + "](General) " + num2 + " : " + str5 + "\r\n");


break;
08/17/2017 18:46 Eslam Galull#11
It was an old src , now i just run it in a packet handler moud.


You cant get char name in all chat untill u parse single spawn packet
08/17/2017 20:44 memoxl#12
Quote:
Originally Posted by Eslam Galull View Post
It was an old src , now i just run it in a packet handler moud.


You cant get char name in all chat untill u parse single spawn packet
can you please show me how to parse it ? and put character name in all chat case ?

Thanks in advance
08/18/2017 16:45 Eslam Galull#13
You want me give you a ready to use codes , so u can makes your auto events for your coming server ?
08/18/2017 23:55 memoxl#14
Quote:
Originally Posted by Eslam Galull View Post
You want me give you a ready to use codes , so u can makes your auto events for your coming server ?
iam not requesting a ready to use codes... i requested a guide ... anyway thanks.
08/19/2017 01:50 B1Q#15
Quote:
Originally Posted by memoxl View Post
iam not requesting a ready to use codes... i requested a guide ... anyway thanks.
parse 3015, 3017, 3019 (single & group spawn packets)

save nearby players in a dictionary (or a custom list) and delete players by UniqueID upon receiving 0x3016 (gameobj despawn)

Code:
if(_nearbyPlayers.ContainsKey(uniqueidfromchatpacket))
   string charname = _nearbyPlayers[uniqueidfromchatpacket];
TIP: you don't need to parse the whole thing. google BinaryReader.Position