PDA

Просмотр полной версии : [Packets] Приватное сообщение от любого ника


Yohan
29.04.2008, 17:58
0x00 | 23 00 02 03 62 62 62 00 00 00 00 00 00 00 00 00
0x10 | 00 00 00 00 00 0c 3a 20 61 61 61 00 00 00 00 00
0x20 | 00 00 00
Этот пакет пошлёт сообщение персу с ником "bbb" сообщение "aaa". Как видите, в пакете нет ника отправителя как во всех остальных пакетах на чат. Поэтому в лоб его подделать не получится =)
Ну и ладно, вспоминаем о спец-символе "\x0a" - переход на следующую строчку.
Послав сообщение вида:
3a 20 0a 0a 0a .... (раз 100) .... 0a 0a 0a <любой_ник> 20 3a 20 61 61 61
Персонаж, которому адресовано это сообщение увидит сообщение от <любой_ник>. В данном случае само сообщение - 61 61 61 - то есть "aaa".

Единственное палево заключается в том, что у него очищается чат. То есть над приватным сообщением больше ничего не будет. Но, проверено, если человек не знает о баге, он не догадается в чём дело списав всё на глюки игры.

ПС: обратите внимание на "0c" перед сообщением в пакете. Это длина сообщения (включая ник и " : "). Так что при составлении пакета, это нужно обязательно учитывать. Как видите, под длину отведён 1 байт, так что само отсылаемое сообщение должно быть длиной: 255 - длина реального ника - 5 байт (" : : ") - 100 переносов - длина вымышленного ника. Получается почти смска Но если что, переносов можно и поменьше..

Leo_ня
05.08.2008, 09:29
если пакет длиннее 255 байтов, то размер пакета будет в двух байтах.
тоесть ты прелагаешь, написать сообщение с кучей пробелов, а потом в самом сообщении ник? с опытным игроком у тебя так не получится)
мож попробую ещё чтонить сделать..

*извините за археологию

Морда
11.08.2008, 16:47
есть длина пакета, есть длина сообщения.
длина пакета всегда 2 байта.
длина сообщения 1 байт.

Leo_ня
11.08.2008, 18:00
я это уже говорил.. гыгы, протестил на одном нубе)) он мне аж дал пасс акка) правда я ему потом сказал, что это шутка) всё равно у него на акке ничего ценного, но даже если б было, я б не заходил)