HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Xash3D > Реально ли, используя данные из исходников Xash3D сделать логгер для CS 1.6?
То есть программу, которая будет тупо записывать координаты игроков, например в файл.
Страницы (5): [1] 2 3 4 5 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
Chuvi
Частый гость

Дата регистрации: Nov 2012
Проживает: Россия/Санкт-Петербург
Сообщений: 36
Возраст: 33

Рейтинг



Question Реально ли, используя данные из исходников Xash3D сделать логгер для CS 1.6?

Да, скажу сразу, с перехватом сетевых пакетов проблемы не возникнет, уже проверил. Видно как пакеты от игроков к серверу, так и к серверу от игроков, ибо сеть на хабе.
Сейчас пытаюсь осилить функцию Huff_DecompressPacket и "вывести" её наружу dll-ки, но что-то пока не получается...

А вопрос, собственно, такой. Допустим, у меня таки получится декомпрессировать пакет. Смогу ли я получить из него хоть какую-нибудь информацию? Ведь, вроде как, CS это "надстройка" над HL, значит и структура пакетов должна быть примерно одинаковой ?
Или в CS 1.6 пакеты сжимаются другим методом и все эти мероприятия бесполезны?

Кстати, где можно поподробнее посмотреть структуру GoldSrc пакетов, а то я понял, что:
1-е 2 байта это его порядковый номер, причём в развёрнутом виде, то есть 0-й и 1-й байт нужно поменять местами, но где этот номер отлавливается в Xash3D я так и не нашёл.
Далее 2 байта, которые, похоже, постоянно равны нулю.
4-й и 5-й байт тоже похожи на какой-то счётчик,
6-й постоянно 0
7-й либо 0 либо 0х80
а дальше, насколько я понимаю, идут данные в сжатом виде.



Пытался найти место, где пакет "разворачивается" на данные, но не нашёл. Может, потому, что впервые пытаюсь копаться в столь большом для меня коде. Раньше на Си писал только консольные приложения, в основном для облегчения рутинных расчётов во время учёбы.

Да, для удобства "копания" в коде соорудил с помощью Doxygen документацию по Xash3D.
(Не сочтите ссылку на сайт за рекламу, сервер давно почил, ибо мне одному его держать надоело, интерес к стрелялке угас, зато возникло желание понять "а как эта стрелялка вообще работает?". Так что используется этот сайт для моих нужд. Надо будет снести заглавную страницу за ненадобностью.)

PS: Не ругайтесь, если что, ибо я действительно в этом деле нуб.
PPS: Утром-днём перечитаю сообщение, и, если форум позволяет, возможно что-то исправлю. Ибо голова почти не соображает, и спать осталось менее 3-х часов.
Оххх.. просмотрел беглым взглядом пост. Ну нуб-нубом.

Да, совсем забыл спросить. А что такое "предиктинг" из-за которого все проблемы? Можно ссылкой, можно на английском.

Отредактировано Chuvi 19-11-2012 в 23:14

Сообщить модератору | | IP: Записан
Сообщение: 110083

Старое сообщение 19-11-2012 23:07
- За что?
underworlddemon
Житель форума
Девойс

Дата регистрации: Jun 2011
Проживает: Россия/Москва
Сообщений: 469
Возраст: 37

Рейтинг



Цитата:
Chuvi писал:
Да, совсем забыл спросить. А что такое "предиктинг" из-за которого все проблемы? Можно ссылкой, можно на английском.

http://en.wikipedia.org/wiki/Prediction
предсказание...
серверный и клиентский просчёт в будущее для лагокомпенсации

Сообщить модератору | | IP: Записан
Сообщение: 110084

Старое сообщение 20-11-2012 00:42
- За что?
Chuvi
Частый гость

Дата регистрации: Nov 2012
Проживает: Россия/Санкт-Петербург
Сообщений: 36
Возраст: 33

Рейтинг



Спасибо.
Так же нашёл описание на сайте Valve описание на сайте Valve, правда для Source.

В общем, понял.

Сообщить модератору | | IP: Записан
Сообщение: 110086

Старое сообщение 20-11-2012 02:49
- За что?
PomanoB
Житель форума

Дата регистрации: Aug 2010
Проживает: (void)
Сообщений: 157

Рейтинг



Первые четыре байта - это номер последовательности пакета. Он может дополняться различными флагами, например (1<<31), это и есть твои 80, обозначающие гарантированный пакет вроде.
Вторые четыре байта - номер ответа, аналогично дополняется. Дальше идёт код команды, а дальше зависит от того, какая это команда. Потом в GoldSrc всё это, начиная от номера команды, ещё и перемешивается функциями типа Munge2, Munge3. В общем, сложное это дело...

Сообщить модератору | | IP: Записан
Сообщение: 110087

Старое сообщение 20-11-2012 04:10
- За что?
qpAHToMAS
Интернетовское трепло

Дата регистрации: Sep 2007
Проживает: (void)
Сообщений: 1788
Возраст: 32

Рейтинг



Эти бы старания — да в нужное русло. Например, для написания эмулятора какого-нибудь закрытого сервера, Battlefield 3 например.

Сообщить модератору | | IP: Записан
Сообщение: 110092

Старое сообщение 20-11-2012 11:21
- За что?
marikcool
Житель форума

Дата регистрации: Jul 2011
Проживает: kz
Сообщений: 1522
Возраст: 37

Рейтинг



в разборе структуры 1.6 смысла нет, скилла этого не добавит, точность данных и какие именно можешь посмотреть в delta.lst, все типы месаг можешь посмотреть на alliedsmods, все структурки сообщений зарегестрированые клиентом можешь глянуть там же или в sdk.

__________________
vk.com/skullcapstudios

Сообщить модератору | | IP: Записан
Сообщение: 110095

Старое сообщение 20-11-2012 11:48
- За что?
Chuvi
Частый гость

Дата регистрации: Nov 2012
Проживает: Россия/Санкт-Петербург
Сообщений: 36
Возраст: 33

Рейтинг



qpAHToMAS что-то мне подсказывает, что начинать с эмулятора закрытого сервера как-то слишком жёстко. Тем более, что мой комп физически не способен потянуть Battlefield 3.
marikcool, знакомые лица
Не, смысл есть. Не столько для скилла, сколько для других нужд.

Сообщить модератору | | IP: Записан
Сообщение: 110096

Старое сообщение 20-11-2012 12:35
- За что?
qpAHToMAS
Интернетовское трепло

Дата регистрации: Sep 2007
Проживает: (void)
Сообщений: 1788
Возраст: 32

Рейтинг



Цитата:
Chuvi писал:
Не, смысл есть. Не столько для скилла, сколько для других нужд.

Клонировать CS хочешь?

Сообщить модератору | | IP: Записан
Сообщение: 110098

Старое сообщение 20-11-2012 13:23
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34527
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


У меня подозрение, что все эти вещи делаются исключительно с целью читерства.

__________________

Сообщить модератору | | IP: Записан
Сообщение: 110099

Старое сообщение 20-11-2012 13:56
-
pRoxxx
Житель форума

Дата регистрации: Jan 2011
Проживает: UA DP
Сообщений: 360
Возраст: 32

Рейтинг



Цитата:
XaeroX писал:
У меня подозрение, что все эти вещи делаются исключительно с целью читерства.

Я почему тоже так подумал. (=

Сообщить модератору | | IP: Записан
Сообщение: 110102

Старое сообщение 20-11-2012 14:23
- За что?
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 33

Рейтинг



Цитата:
XaeroX писал:
У меня подозрение, что все эти вещи делаются исключительно с целью читерства.

А может сплойт, чтобы сервера валить.

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | | IP: Записан
Сообщение: 110104

Старое сообщение 20-11-2012 14:43
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



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

Цитата:
Chuvi писал:
А что такое "предиктинг" из-за которого все проблемы?

Да есть в ксаше предиктинг, есть. Просто он работает неправильно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 110106

Старое сообщение 20-11-2012 14:48
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34527
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Цитата:
fire64 писал:
А может сплойт, чтобы сервера валить.

Читеры, хакеры - для меня это одно и то же. Это люди, которые пытаются воспользоваться недокументированными возможностями и дырами в своих интересах, вместо того, чтобы вести честную игру.

__________________

Сообщить модератору | | IP: Записан
Сообщение: 110115

Старое сообщение 20-11-2012 15:09
-
PomanoB
Житель форума

Дата регистрации: Aug 2010
Проживает: (void)
Сообщений: 157

Рейтинг



Скорее всего, что бы зафлуживать сервера "игроками".
Были уже такие, но они дальше первого пакета, который никак не преобразуется, не шли

Сообщить модератору | | IP: Записан
Сообщение: 110116

Старое сообщение 20-11-2012 15:11
- За что?
Chuvi
Частый гость

Дата регистрации: Nov 2012
Проживает: Россия/Санкт-Петербург
Сообщений: 36
Возраст: 33

Рейтинг



Поздравляю, все догадки не верны.
В общем, всё начилось с такой ситуации на работе.

Не, я конечно, всё понимаю, контра-святое, но не когда дел дофига. В итоге получаем - много-много играем в контру, осознаём что завтра дед-лайн, производим кирпичи и в панике носимся-работаем.

В общем, долго-ли коротко, выключать им сервер различными способами как-то поднадоело, ибо таки "ввёлся" в курс дела, и сижу, потихоньку, работаю.
Переодически, правда, гашу им сервер, когда сильно шуметь начинают, но это бывает очень редко.

А с протоколом хотел разобраться, чтобы вносить им в игру различные развлечения, аля "внезапный" kill, телепортация, и прочие радости.

Сообщить модератору | | IP: Записан
Сообщение: 110125

Старое сообщение 20-11-2012 15:59
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 03:23. Новая тема    Ответить
Страницы (5): [1] 2 3 4 5 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Xash3D > Реально ли, используя данные из исходников Xash3D сделать логгер для CS 1.6?
То есть программу, которая будет тупо записывать координаты игроков, например в файл.
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024