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

pvPrivateData (что это и с чем едят)
http://www.aghl.ru/forum/viewtopic.php?f=39&t=31
Страница 1 из 1

Автор:  KORD_12.7 [ 08 июн 2010, 12:25 ]
Заголовок сообщения:  pvPrivateData (что это и с чем едят)

pvPrivateData (что это и с чем едят)

pvPrivateData - это свойство, описанное в структуре edict_s (см. HLSDK, файл edict.h). Содержит блок памяти, в котором находятся дополнительные свойства объекта, относящиеся к конкретному моду (mod-related). Доступ к нему осуществляется посредством модификации памяти - по смещению. Чтобы узнать структуру этого блока памяти, необходимы исходники мода. А так как у вас их нет и вряд ли будут (речь о CS/CZ), то информацию о типе и назначении групп ячеек памяти можно получить исследовательским методом (а-ля хакинг). Т.е. вы определяете для себя область данных, которую будете исследовать, запоминаете значения, потом выполняете действия, смотрите - изменилось ли что - и т.о. делаете вывод (если повезет) о назначении этого участка памяти.
Т.к. это колоссальный и утомительный труд, то информация по ячейкам памяти бесценна. К сожалению, полученная информация не может со 100% гарантией распространяться на родственные моды и даже на различные версии одного и того же мода.

Итак, что же содержится в pvPrivateData?

Процитирую VEN'a: "Player's Money, BackPackAmmo, Defuse/Plant skill, Deaths, Weapon's Type, Ammo и многое-многое другое". Не путайте эти свойства со свойствами PEV структуры. Они друг друга дополняют.

Как работать с ними?

Для этого в fakemeta.inc есть следующие функции:
get_pdata_<type>
set_pdata_<type>
где <type> может быть int, float ,string.

Т.к. вы напрямую работаете с памятью, то делать это надо очень и очень акуратно, особенно если используете set_pdata_string/get_pdata_string.

Перечень смещений в pdata (просьба не стесняться и дополнять список): viewtopic.php?f=20&t=30

Источник: http://amxmodx.ucoz.ru/forum/9-67-1

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