|
You last visited: Today at 14:31
Advertisement
[HELP] SENDING PACKETS IN A ROW
Discussion on [HELP] SENDING PACKETS IN A ROW within the SRO Coding Corner forum part of the Silkroad Online category.
09/22/2014, 23:35
|
#16
|
elite*gold: 0
Join Date: Feb 2014
Posts: 885
Received Thanks: 1,415
|
Quote:
Originally Posted by eitai123
Why it should work what is the difference ?
|
cuz it should work! xD
however adding this into your agent thread will confirm any spawns you do it.
|
|
|
09/23/2014, 08:47
|
#17
|
elite*gold: 0
Join Date: Feb 2008
Posts: 961
Received Thanks: 648
|
I think that I understood what you actually want. You want to movetouser and recall another user to your location.
Well, you can't do both of them at the same time, since it would appear like you're recalling in the middle of teleporting and before the spawn is confirmed, which will not work. The solution is to simply put a delay after the movetouser packet.
Check this picture from your parsing :
You are recalling the user while your GM is still teleporting. Do as I suggested above in your agent.cs
Code:
else if (packet.Opcode == 0x34B5) //spawn confirmation packet
{
Packet p = new Packet(0x34b6);
Send(p);
}
This will confirm any spawning your clientless do, without the need to put it in every packet you send that involves teleportation. Afterwards, put a delay after movetouser packet
Code:
Thread.Sleep(3000);
Then, you can use the recalluser, and it should work.
|
|
|
09/23/2014, 15:07
|
#18
|
elite*gold: 0
Join Date: May 2006
Posts: 667
Received Thanks: 345
|
Quote:
Originally Posted by magicanoo
I think that I understood what you actually want. You want to movetouser and recall another user to your location.
Well, you can't do both of them at the same time, since it would appear like you're recalling in the middle of teleporting and before the spawn is confirmed, which will not work. The solution is to simply put a delay after the movetouser packet.
Check this picture from your parsing :
You are recalling the user while your GM is still teleporting. Do as I suggested above in your agent.cs
Code:
else if (packet.Opcode == 0x34B5) //spawn confirmation packet
{
Packet p = new Packet(0x34b6);
Send(p);
}
This will confirm any spawning your clientless do, without the need to put it in every packet you send that involves teleportation. Afterwards, put a delay after movetouser packet
Code:
Thread.Sleep(3000);
Then, you can use the recalluser, and it should work.
|
Yes, you understand what i want, but the log for the packet parser
i posted, is including the spawn confirmation and a proper delay time betwern the packets, thats the thing, and its still doesnt work, its still shows that it cant confirm the spawn when it should be, i will try again, n report back,
|
|
|
10/03/2014, 13:58
|
#19
|
elite*gold: 0
Join Date: May 2006
Posts: 667
Received Thanks: 345
|
Quote:
Originally Posted by Muhab Ashraf
That should work..
PHP Code:
if ((current.Opcode == 0x3017) && (current.ReadUInt8() == 2)) { Packet packet3 = new Packet(0x34b6); Send(packet3); }
just add it into your Agent thread.
|
Quote:
Originally Posted by LastThief*
What's your problem exactly ?
|
Quote:
Originally Posted by magicanoo
I think that I understood what you actually want. You want to movetouser and recall another user to your location.
Well, you can't do both of them at the same time, since it would appear like you're recalling in the middle of teleporting and before the spawn is confirmed, which will not work. The solution is to simply put a delay after the movetouser packet.
Check this picture from your parsing :
You are recalling the user while your GM is still teleporting. Do as I suggested above in your agent.cs
Code:
else if (packet.Opcode == 0x34B5) //spawn confirmation packet
{
Packet p = new Packet(0x34b6);
Send(p);
}
This will confirm any spawning your clientless do, without the need to put it in every packet you send that involves teleportation. Afterwards, put a delay after movetouser packet
Code:
Thread.Sleep(3000);
Then, you can use the recalluser, and it should work.
|
guys, i have tried what you suggested, adding delays between packets, confirming the spawn well now here is the Log for the packets:
Code:
[C->S][7010][8 bytes]
0000000000 08 00 04 00 74 65 73 74 ....test........
[S->C][3017][3 bytes]
0000000000 02 01 00 ................
[S->C][3019][4 bytes]
0000000000 EE 39 00 00 9..............
[S->C][3018][0 bytes]
[S->C][B010][3 bytes]
0000000000 01 08 00 ................
[S->C][34B5][2 bytes]
0000000000 A8 62 b..............
[C->S][34B6][0 bytes]
[C->S][7010][8 bytes]
0000000000 11 00 04 00 74 65 73 74 ....test........
[S->C][34A5][0 bytes]
[S->C][3013][464 bytes]
0000000000 8E 0E 87 4B 76 07 00 00 22 01 01 00 00 00 00 00 ...Kv...".......
0000000016 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000000032 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 C8 00 ..............
0000000048 00 00 01 00 00 00 00 00 00 00 00 00 2D 08 01 00 ............-...
0000000064 00 00 00 38 0E 00 00 00 00 00 00 00 00 00 00 00 ...8............
0000000080 2C 00 00 00 00 01 00 02 00 04 00 00 00 00 39 0E ,.............9.
0000000096 00 00 00 00 00 00 00 00 00 00 00 2C 00 00 00 00 ...........,....
0000000112 01 00 02 00 05 00 00 00 00 3A 0E 00 00 00 00 00 .........:......
0000000128 00 00 00 00 00 00 2C 00 00 00 00 01 00 02 00 06 ......,.........
0000000144 00 00 00 00 30 0E 00 00 00 00 00 00 00 00 00 00 ....0...........
0000000160 00 3E 00 00 00 00 01 00 02 00 07 00 00 00 00 86 .>..............
0000000176 2A 00 00 00 00 00 00 00 00 00 00 00 2E 00 00 00 *...............
0000000192 00 01 00 02 00 0D 00 00 00 00 42 1D 00 00 01 00 ..........B.....
0000000208 0E 00 00 00 00 43 1D 00 00 01 00 0F 00 00 00 00 .....C..........
0000000224 8E 28 00 00 14 00 05 00 00 01 01 01 00 00 00 01 .(..............
0000000240 02 01 00 00 00 01 03 01 00 00 00 01 11 01 00 00 ................
0000000256 00 01 12 01 00 00 00 01 13 01 00 00 00 01 14 01 ................
0000000272 00 00 00 02 00 02 01 00 01 00 00 00 02 02 00 00 ................
0000000288 00 00 00 08 01 8D 01 00 00 10 00 18 08 01 01 00 ................
0000000304 16 00 53 4E 5F 43 4F 4E 5F 51 45 56 5F 41 4C 4C ..SN_CON_QEV_ALL
0000000320 5F 42 41 53 49 43 5F 30 01 00 00 00 00 00 00 00 _BASIC_0........
0000000336 00 00 1B 3A 00 00 A8 62 8F 30 8C 44 C6 B0 DC 42 ...:..b.0.DưB
0000000352 13 FE B2 44 FE 8B 00 01 00 FE 8B 00 00 00 00 00 .D..........
0000000368 00 80 41 00 00 48 42 00 00 C8 42 00 0A 00 54 65 ..A..HB..B...Te
0000000384 6C 65 70 6F 72 74 65 72 00 00 00 01 00 00 00 00 leporter........
0000000400 00 00 00 00 00 00 00 00 00 00 00 FF 02 00 00 00 ...............
0000000416 00 00 00 00 01 00 00 00 01 07 04 01 4A EA 03 00 ............J..
0000000432 64 02 4A F0 03 00 64 03 4A EE 03 00 64 04 4A F8 d.J..d.J..d.J
0000000448 03 00 64 00 00 00 00 00 00 00 00 01 00 01 00 00 ..d.............
[S->C][34A6][0 bytes]
[S->C][3020][8 bytes]
0000000000 1B 3A 00 00 06 00 0A 0E .:..............
[C->S][3012][0 bytes]
[S->C][3809][2 bytes]
0000000000 01 B4 ...............
[S->C][3017][3 bytes]
0000000000 01 01 00 ................
[S->C][3019][50 bytes]
0000000000 2A 4C 00 00 33 01 00 00 A8 62 E1 2A C4 44 25 A4 *L..3...b*D%
0000000016 8B 42 B8 66 8B 44 B5 80 00 01 00 B5 80 01 00 00 .Bf.D........
0000000032 00 00 00 00 00 00 00 00 00 00 00 C8 42 00 02 02 ...........B...
0000000048 01 18 ................
[S->C][3018][0 bytes]
[S->C][3017][3 bytes]
0000000000 01 01 00 ................
[S->C][3019][123 bytes]
0000000000 73 07 00 00 22 00 00 01 2D 05 38 0E 00 00 00 39 s..."...-.8....9
0000000016 0E 00 00 00 3A 0E 00 00 00 31 0E 00 00 00 86 2A ....:....1.....*
0000000032 00 00 00 05 00 00 EE 39 00 00 A8 62 8F 30 8C 44 ......9..b.0.D
0000000048 C6 B0 DC 42 13 FE B2 44 23 07 01 01 A8 62 61 04 ưB.D#...ba.
0000000064 6E 00 97 05 01 00 00 00 00 00 80 41 00 00 48 42 n..........A..HB
0000000080 00 00 C8 42 00 04 00 74 65 73 74 00 01 00 00 00 ..B...test.....
0000000096 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000000112 00 00 00 00 00 00 00 00 00 00 FF ...............
[S->C][3018][0 bytes]
[S->C][303D][36 bytes]
0000000000 15 00 00 00 17 00 00 00 23 00 00 00 27 00 00 00 ........#...'...
0000000016 0C 00 14 00 23 00 18 00 C8 00 00 00 C8 00 00 00 ....#.........
0000000032 14 00 14 00 ................
[S->C][30BF][6 bytes]
0000000000 1B 3A 00 00 04 04 .:..............
[S->C][385F][115 bytes]
0000000000 00 03 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000000016 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................
0000000032 00 01 00 00 00 00 03 00 00 00 00 00 00 00 00 00 ................
0000000048 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000000064 01 00 00 00 00 01 00 00 00 00 06 00 00 00 00 00 ................
0000000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000000096 00 00 00 00 01 00 00 00 00 01 00 00 00 00 01 00 ................
0000000112 00 00 00 ................
[S->C][3077][2 bytes]
0000000000 00 00 ................
[S->C][3122][4 bytes]
0000000000 A0 01 03 05 *...............
[S->C][3153][12 bytes]
0000000000 00 00 00 00 00 00 00 00 00 00 00 00 ................
[S->C][3305][1 bytes]
0000000000 00 ................
it look like it should work but in-game result shows that the clientless GM only moved to character and didnot Recall it.
|
|
|
10/04/2014, 00:49
|
#20
|
elite*gold: 0
Join Date: Feb 2008
Posts: 961
Received Thanks: 648
|
Put the 2 commands in a function in a separate thread, this will prevent the program from sleeping as a whole, only the function will sleep. Google "C# Threading".
|
|
|
10/04/2014, 21:42
|
#21
|
elite*gold: 0
Join Date: May 2006
Posts: 667
Received Thanks: 345
|
well, its working now, not perfectly, sometimes the clientless get dced.
|
|
|
10/08/2014, 18:29
|
#22
|
elite*gold: 60
Join Date: Feb 2012
Posts: 3,942
Received Thanks: 6,475
|
You must send keep alive packet 0x2002
|
|
|
10/09/2014, 03:43
|
#23
|
elite*gold: 0
Join Date: Feb 2008
Posts: 961
Received Thanks: 648
|
Which clientless are you using?
|
|
|
|
|
Similar Threads
|
Sending Packets
03/26/2019 - PW Hacks, Bots, Cheats, Exploits - 432 Replies
As per Smurfin's request:
reposting of what I posted in the Prophet's bot thread.
some example of functions you could use with sending packets (AutoIt code, see link below for C#):
;////Code for sending packets.
|
Sending Packets
11/29/2012 - AutoIt - 6 Replies
Hey,
so I'm trying to send packets to a game called Pokemon World Online, I've been using WPE in order to sniff the packets, using WPE sending the packets its ridiculously easy so I've been trying to do the same with autoit script.
After a lot of research I know that TCP function should do it but I've always failed to use the same socket as the same or even to listen to the right ports or something, I'm completely lost here.
I know this can be done and I'm not asking for someone to...
|
Help sending packets
06/27/2012 - SRO Coding Corner - 2 Replies
well i knew that i need to put the packet in a byte array
so i defined it BYTE pack = {
0x01, 0x00,
0x4F, 0x70,
0x20, 0x00,
0x04
};
and when i send it using the send through a socket like this
|
Help for sending packets
05/11/2012 - PW Hacks, Bots, Cheats, Exploits - 1 Replies
Hello Dear programmers, botovody!
I am a novice programmer, and started programming in the language of Delphi!
there is a couple of my works Каталог файлов - PwRuf - уникальный бот для Perfect World!
But another question!
I would like to implement the sending of packages to craft nirvana clothing, weapons. But I have a problem with traffic light emitted from the fact that the package that I send a very large ie 256 characters!
Please help or point me where to...
|
Sending packets
10/12/2005 - Conquer Online 2 - 10 Replies
I've a question. Is it possible to send 1 packet multiple times at the exact same time?
|
All times are GMT +2. The time now is 14:31.
|
|