Half-Life и Adrenaline Gamer форум
http://www.aghl.ru/forum/

Кто читает логи debug
http://www.aghl.ru/forum/viewtopic.php?f=10&t=2301
Страница 4 из 6

Автор:  Stimul [ 24 дек 2015, 00:24 ]
Заголовок сообщения:  Re: Кто читает логи debug

Я уже давно анализирую логи. Падения, как я понял, провоцирует не одна моя ошибка в коде.
В одном падении есть закономерность, это случается через 3 секунды после смены карты, а вот что провоцирует это через 3 секунды - загадка.
Если бы еще знать, какой код в pawn приводит к ошибке сегментации.

Автор:  s1lent [ 24 дек 2015, 16:40 ]
Заголовок сообщения:  Re: Кто читает логи debug

Stimul, скинь cs.so

p.s я помню когда реверсил cs.so от клапана, заметил странную вещь в CBasePlayer::TraceAttack, там напрочь отсутствует проверка на валидность игрока pevAttacker перед тем как обращаться из CBaseEntity к CBasePlayer (т.к атакующий может быть и не игроком), что это вполне может положить сервер при обращение к члену метода CBasePlayer::m_iTeam.

далее по дебаг логу, видно еще битсумма bitsDamageType=64, т.е это DMG_BLAST (1<<6), значит вызывалось при взрыве c4 (env_explosion) или хешки (hegrenade)

Автор:  Stimul [ 25 дек 2015, 00:47 ]
Заголовок сообщения:  Re: Кто читает логи debug

Держи: http://rghost.ru/8Nj6bwwQ6
Цитата:
далее по дебаг логу, видно еще битсумма bitsDamageType=64, т.е это DMG_BLAST (1<<6), значит вызывалось при взрыве c4 (env_explosion) или хешки (hegrenade)
Бомба взорваться не могла, потому что это deathrun-сервер, значит граната.

Автор:  s1lent [ 25 дек 2015, 03:29 ]
Заголовок сообщения:  Re: Кто читает логи debug

Stimul писал(а):
Бомба взорваться не могла, потому что это deathrun-сервер, значит граната.

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

Stimul писал(а):

как я был прав.
Цитата:
eip = 0xf3318552 in CBasePlayer::TraceAttack (../cstrike/dlls/player.cpp:997); saved eip 0xf2986496

476 это и есть оффсет до m_iTeam, 476 / 4 = 119, как и говорил крашится при обращение к филду m_iTeam, это означает что pevAttacker не игрок.

Stimul писал(а):
У меня есть 2 плагина использующие Ham_TraceAttack, но в них нет удаления оружия. Или это может быть не в Ham_TraceAttack?
p.s было бы не плохо их показать.

Вложения:
kiss_216kb.1450992557.jpg
kiss_216kb.1450992557.jpg [ 216.62 КБ | Просмотров: 3317 ]

Автор:  Stimul [ 25 дек 2015, 04:17 ]
Заголовок сообщения:  Re: Кто читает логи debug

s1lent, пропатчить cs.so нельзя? Или как быть?
Цитата:
p.s было бы не плохо их показать.
 

Автор:  s1lent [ 25 дек 2015, 04:56 ]
Заголовок сообщения:  Re: Кто читает логи debug

Stimul, и нет никаких ExecuteHam?

Автор:  Stimul [ 25 дек 2015, 05:08 ]
Заголовок сообщения:  Re: Кто читает логи debug

s1lent писал(а):
Stimul, и нет никаких ExecuteHam?
Есть, я и забыл.
 

Автор:  s1lent [ 25 дек 2015, 05:22 ]
Заголовок сообщения:  Re: Кто читает логи debug

Stimul писал(а):
Есть, я и забыл.
код немного сомнительный, возможно и в нём причина, точно сказать не могу.

Автор:  Lev [ 25 дек 2015, 13:53 ]
Заголовок сообщения:  Re: Кто читает логи debug

Поищи по исходникам DMG_BLAST.

Автор:  Stimul [ 25 дек 2015, 14:37 ]
Заголовок сообщения:  Re: Кто читает логи debug

Lev писал(а):
Поищи по исходникам DMG_BLAST.
Нигде не используется.

Посмотрел, сервер упал на карте deathrun_green_h. В ней есть один env_explotion:
Изображение

И еще, падение было во время режима "Терминатор", код которого в предыдущем моем сообщении.

Страница 4 из 6 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/