1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Взаимодействие с пхп с БД игры (пакеты)

Тема в разделе 'Архив', создана пользователем wsok, 27 авг 2013.

Статус темы:
Закрыта.
  1. TopicStarter Overlay

    wsok Программист Пользователи

    Сообщения:
    606
    Лайки:
    173
    Пол:
    Мужской
    Репутация:
    3
    Уважаемые коллеги, разработчики, нужна Ваша помощь.
    Сам по себе пхп я достаточно неплохо знаю, но вот методы работы с сокетами и пакетами мало представляю, мануалы мало информации дают.

    интересует конкретно как правильно пользоваться снифером, ловить нужный пакет и уже дальше с ним работать в пхп. Например, я пытаюсь поймать пакет при применении действия, бан аккаунта...

    Забанил сам себя, снифер сразу показал две серые строчки после этого (скрин) Я ищу пакет, который именно отсылал информация для бана аккаунта, цель научиться из пхп банить и не менее важно. разбанивать. Помню Алекс как то писал, что для этого и надо нужный пакет отправить, поисками которого я сейчас и занимаюсь, а так как с пакетами я плохо представляю как работать (поиск, работа с ними и т.д.) То и прошу у вас подсказать каким образом это делать, хотя бы на простом примере, поиска пакета БА и разбан БА.

    Посмотреть вложение 1306

    Пытался разобраться на примере Морзовского скрипта, получающего список персов, но понял, что все же надо со знающими пообщаться.
    Тыщ нравится это.
  2. TopicStarter Overlay

    wsok Программист Пользователи

    Сообщения:
    606
    Лайки:
    173
    Пол:
    Мужской
    Репутация:
    3
    попробовал декодировать один из паетов

    PHP:
    $binarydata "\x08\x00\x27\x00\xc8\xdb\x08\x00\x27\x2b\xad\x3d\x08\x00\x45\x00\x00\x40\x3c\x63\x00\x00\x40\x11\xbe\x45\xc0\xa8\x7f\x03\xc0\x3a\x80\x1e\x7a\x4d\x00\x35\x00\x2c\xdc\x1a\x97\x8c\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x44\x0c\x52\x4f\x4f\x54\x2d\x53\x45\x52\x56\x45\x52\x53\x03\x4e\x45\x54\x00\x00\x1c\x00\x01";
    $array unpack("c2/n"$binarydata);
    var_dump($array);
    на выходе получил некий массив...

    Код:
    array(2) { [1]=> int(9984) [2]=> int(0) }
    Но так понял, это не тот пакет, что я ищу...
  3. Gibat Команда форума Администратор Программист Пользователи

    Сообщения:
    135
    Лайки:
    163
    Пол:
    Мужской
    Репутация:
    0
    Над окошком hex данных, тыкни по сегменту data, это именно пакет, без хедера.
    А дальше разбирай пакет в текстовике\hex редакторе, учитывая что первые 2 байта - опкод, следующий 1(2 или 4) байт(а) длина пакета, остальное - данные
  4. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Ты так и писал свой лк...?

    С чего ты взял что там все инты?
    Код:
    GMForbidRole {
      "opcode" => "cuint",
      "length" => "cuint",
      "fbtype" => "byte",
      "gmroleid" => "int",
      "localsid" => "int",
      "rid" => "int",
      "time" => "int",
      "reason" => "octets",
    }
    Вот и ищи похожий пакет. Опкод если что: cuint(366).
  5. Gibat Команда форума Администратор Программист Пользователи

    Сообщения:
    135
    Лайки:
    163
    Пол:
    Мужской
    Репутация:
    0
    А что тебя не устраивает в моем ответе? Длина опкода в пакете бана 2 байта как ни крути

    p.s. неизвестные пакеты таким образом и разбирал в первой версии gcp, зачем ТСу кидать готовую структуру (которую он кстати мог посмотреть в config.xml), если можно подсказать как разбирать пакет в целом?
  6. TopicStarter Overlay

    wsok Программист Пользователи

    Сообщения:
    606
    Лайки:
    173
    Пол:
    Мужской
    Репутация:
    3
    вот перед самым дисконнектом от БА, был передан пакет

    Посмотреть вложение 1307

    я так понял его мне копать и надо? Попробовал декодировать в калькуляторе (в режиме программиста), но ничего похожего на ид аккаунта, персонажа, времени бана и т.д. там не нашел...
  7. Gibat Команда форума Администратор Программист Пользователи

    Сообщения:
    135
    Лайки:
    163
    Пол:
    Мужской
    Репутация:
    0
    Это не тот пакет, который ты ищешь

    В wireshark есть поиск по байтам, поищи айдишку перса которого банил, найдешь и пакет
  8. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Ты серьезно?! А ничего что идут пакеты с опкодом в 1 байт (пакеты чатов внутрисервера к примеру)? Или ты не в курсе что опкод это тоже куинт и он может быть не только 2 байта? GCP начал попахивать диким велосипедом...
    https://mmorpg-devs.ru/threads/Взаимодействие-с-пхп-с-БД-игры-пакеты.14484/#post-118085

    Не забудь что этот инт там перевернут.
  9. TopicStarter Overlay

    wsok Программист Пользователи

    Сообщения:
    606
    Лайки:
    173
    Пол:
    Мужской
    Репутация:
    3
    искал, не нашел, даже с перевернутым (на скрине не перевернутый) может не правильно перевернул? )

    Посмотреть вложение 1308
  10. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    А ничего что инт это 4 байта?
  11. dpakon1 Пользователи

    Сообщения:
    101
    Лайки:
    14
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    myself
    Переворачивать нужно в hex:
    если был 0x01 0x02 0x03 0x04 , то перевернув, получится 0x04 0x03 0x02 0x01
    еще пример: 0x00 0x01 0x02 0x03 => 0x03 0x02 0x01 0x00
    думаю,уловили смысл.
  12. TopicStarter Overlay

    wsok Программист Пользователи

    Сообщения:
    606
    Лайки:
    173
    Пол:
    Мужской
    Репутация:
    3
    эх... запутали.. сказали искать по идшнику перса.. потом мол надо перевернуть.. а теперь вовсе в хексе... но поиск так и не ищет.
  13. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Код:
    id - 1925
    to int - 00 00 07 85
    reverce - 85 07 00 00
  14. Электрон B L A C K    L I S T

    Сообщения:
    188
    Лайки:
    124
    Пол:
    Мужской
    Репутация:
    -1
    Команда:
    ElDev
    Kenpachi™ нравится это.
  15. Gibat Команда форума Администратор Программист Пользователи

    Сообщения:
    135
    Лайки:
    163
    Пол:
    Мужской
    Репутация:
    0
    КО, в топике ведется речь про взаимодействие с бд через сокеты, а не проксирование трафика между сервисами, а если еще точней, речь идет о пакете бана, где опкод 2 байта. Да и впринципе, все опкоды для написания веб обвязок идут в 2 байта

    p.s. электрон опередил =(
  16. Evgeniy Пользователи

    Сообщения:
    113
    Лайки:
    120
    Репутация:
    0
    Команда:
    Ratio club
    Да посоны, просто Kenpachi™ до сих пор думает что он единственный в этом деле собаку съел

    Бог мой сколько эмоций
  17. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Раки в матче попались(league of legends) надо было эмоции выплеснуть.
    Не увидел то, что Электрон выделил жирным шрифтом, потому и зачеркнул все что написал (вину признаю).

    В общем, опять с твоей стороны тухлый вброс. (отвечать на это сообщение не обязательно, закончим оффтопить).
  18. salitypw Программист Пользователи

    Сообщения:
    673
    Лайки:
    458
    Пол:
    Мужской
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Сомневаюсь, что кто-то в шару выложит подробную инфу на эту тему) Это заберет кусок хлеба у многих разработчиков, а по морге и подобным форумам начнут колесить "велосипеды" новоиспеченных разработчиков ЛК :)
  19. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Вся инфа и так в шаре, просто вы собрать её не можете.
  20. salitypw Программист Пользователи

    Сообщения:
    673
    Лайки:
    458
    Пол:
    Мужской
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Ну никто ж не выкидывает в шару готовые классы для работы с базой персов )
Черновик сохранён Черновик удалён
Similar Threads
  1. moncorel
    Ответов:
    11
    Просмотров:
    5.752
  2. loko9988
    Ответов:
    15
    Просмотров:
    2.125
  3. Emptik
    Ответов:
    2
    Просмотров:
    1.062
  4. Getto
    Ответов:
    6
    Просмотров:
    1.466
  5. aToMiX
    Ответов:
    8
    Просмотров:
    1.671
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей