Интересует последний пакет направления "Сервер => Клиент", который вызывает окончательный вход в мир (респавн персонажа на карте), уже после передачи всей сопутствующей информации.
Был бы очень благодарен за описание, но так как все равно никто не даст, достаточно его опкода
Просто перед входом идет такая куча данных, что определить нужный пакет, который и вызывает переход с экрана ожидания непосредственно в игру, с ходу не получилось
N00bSa1b0t, это понятно, все эти пакеты давно сделал.
Клиент передает C48, и на экране висит надпись "ожидание 30 сек".
Вопрос как раз в том, каким пакетом должен ответить сервер, чтобы персонаж вошел на карту. Именно тот самый пакет, где по идее должны быть указаны координаты его появления, и вся остальная сопутствующая информация.
И прикол в том, что логи сниффера начиная от С48 каждый раз разные, очередность пакетов меняется 0_0
Большинство из этих пакетов вчера уже разбирал, отсеял пакеты которые явно не относятся к входу, каждый из оставшихся пробовал высылать в ответ (естественно с заменой ключей сессии, аккаунта и чара на свои) - реакции никакой. Знать бы какой именно пакет за это отвечает, мог бы более детально изучать именно его, а так - тычу пальцем в небо
Спросил как раз потому, что возможно кто то уже страдал такой фигней))
Уже есть наброски синхронизации перемещения, есть наброски чата. Но блин, без входа же никуда =)
Был бы еще толковый сниффер, а то мой написан на скорую руку, часто крашится, + консольный))) Пандора, блин, работать не хочет ну никак, сколько бы я её не мучал
________________
PW Emu Development
Последний раз редактировалось faantoom; 06.07.2012 в 15:13.
samosi, вау) не ожидал что прям так всю структуру выложат. Спасибо большое, ткнуть спасибку не могу, видимо постов не хватает. Со временем, как набьются, ткну))
Интересует последний пакет направления "Сервер => Клиент", который вызывает окончательный вход в мир
Клиенту нужен не один пакет, а много. Большинство идет в S00, который сразу за 0x48, а остальные далеко после первого контейнера.
Как правило, финальной чертой является 0x0069-GetUIConfigRe. Клиент в свою очередь предварительно посылает: 0x0068-GetUIConfig
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Быстрое снятие и загрузка скриншотов на хостинг.
Не думаю.
Ведь обсчет почти всей логики игры (перемещение, бои, скиллы, квесты, движения мобов, реакция мобов, торговля, аукцион итп итд) лежит на сервере. А клиент это дело только отображает и посылает команды юзера.
Конечно, написать полный эмулятор сервера и полноценный альтернативный клиент - это довольно тяжелые задачи. Однако, смысла писать полноценный клиент нет - достаточно эмулировать некоторые функции - и получим котобота, котоскана, аукскана и прочие радости жизни.
А вот написать полноценный сервер это прикольно, можно будет ввести какие-нибудь свои фишки, и не зависеть от появление в паблике новых версий сервера.
Однако, алгоритмы расшифровки и сниффинга пакетов уже сколько времени в паблике? Но пока нормальных серверов что-то не видно.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]-cофт и прочее для комфортной игры в PW.
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Просто сервер (скелет) написать легко. Вполне работоспособный логин, и структуру гейма я написал примерно за час. Базовую логику (перемещение, чат, и еще кое-какие вещи) тоже сделать не так сложно, если располагать информацией о структуре пакетов, и механике расчета игровых ситуаций. Но игра ведь не ограничивается чатом и перемещением, есть еще множество других вещей, уже посложнее - таких как спавн, скилы, внешность, различные контроллеры статов (хп, мп, и т.д.), взаимодействие с другими персами/мобами, итемы - каждый со своими дополнениями и функциями, и т.д.
Основная сложность тут не в том чтобы просто сделать логику, а в количестве вещей которые нужно реализовать, учитывая то, что информации о пакетах в шаре почти нет. Заниматься разбором всех этих пакетов, для всех игровых ситуаций, а потом в одиночку их реализовать - вот это на мой взгляд основная сложность. В любом случае, это работа не для одного человека. Но будем стараться
В любом случае, это работа не для одного человека. Но будем стараться
Возьмем идеальные условия:
1. Команда от 4 человек
2. Все члены команды профессиональные разработчики, с богатым опытом создания игровых серверов.
3. У всех членов команды есть обширные знания и умения в сфере реверс-инжиниринга.
4. На руках всегда есть актуальный оригинальный китайский сервер.
Учитывая объем работы, могу смело сказать, что за год разработки (5/2 с 9 до 18) они смогут предоставить открытую бету (тоесть для публичного тестирования(с ограниченным функционалом соответственно)) и не более. Еще как минимум полгода до завершения.
С учетом того, что ниодно из этих условий не выполняется в данный момент - это "мероприятие" затянется, а затем будет брошено в состоянии зародыша.
Цитата:
Сообщение от samosi
Я сам разабрал 30% игровой логики в сервере
Смех да и только. Как вы измерили эти 30%? Вы себе даже представить не можете на сколько там много скрытых от игрока параметров, формул и моделей поведения в разных ситуациях.
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Быстрое снятие и загрузка скриншотов на хостинг.
Последний раз редактировалось Kitsune; 07.07.2012 в 16:51.