Plugin for SA:MP 0.3a R4 server Structure Access by 009
Плагин позволяет брать данные типов float и integer из структур сервера CPlayer , CVehicle , CObject Изменить данные нельзя,и нет смысла делать это т.к. клиенту эти данные не передаются(сервер просто посылает эти данные остальным игрокам - синхронизация) Для получения данных требуется знать offset нужного вам значения структуры
Функции: GetPlayerStructureInfoInt(playerid,structure_offset) Получает значение типа integer из структуры CPlayer игрока с id = playerid с offset = structure_offset
GetPlayerStructureInfoFloat(playerid,structure_offset) Получает значение типа float из структуры CPlayer игрока с id = playerid с offset = structure_offset
GetVehicleStructureInfoInt(vehicleid,structure_offset) Получает значение типа integer из структуры CVehicle транспорта с id = vehicleid с offset = structure_offset
GetVehicleStructureInfoFloat(vehicleid,structure_offset) Получает значение типа float из структуры CVehicle транспорта с id = vehicleid с offset = structure_offset
GetObjectStructureInfoInt(vehicleid,structure_offset) Получает значение типа integer из структуры CObject обьекта с id = objectid с offset = structure_offset
GetObjectStructureInfoFloat(vehicleid,structure_offset) Получает значение типа float из структуры CObject обьекта с id = objectid с offset = structure_offset
stock GetPlayerCameraPos(playerid,&Float:X,&Float:Y,&Float:Z) { X = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_X); Y = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Y); Z = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Z); }
stock GetPlayerCameraLookPos(playerid,&Float:X,&Float:Y,&Float:Z) { X = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_X) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_X); Y = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Y) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_Y); Z = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Z) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_Z); }
Я тут набросал небольшой фильтерскрипт-тест http://slil.ru/28667762 [offtop]команда /createobj создает рядом с игроком в воздухе шарик для бильярда и выдает снайперку при наведении прицела на шарик пишется Nice Aim в лог сервера выводится расстояние прицела до шарика[/offtop] работает как часы
Думаю ты про офсеты там команда поиска офсетов есть,если это она конешно...не думаю что Alex009 без исходников сервера знает каждый офсет структур [pwn]if(!strcmp(cmd,"/gsd",true)) { new string[128], start = strval(strtok(cmdtext,idx)), end = strval(strtok(cmdtext,idx)); if(IsPlayerInAnyVehicle(playerid)) { new vehicleid = GetPlayerVehicleID(playerid); for(new i = start;i < end;i++) { format(string,sizeof(string),"0x%x: %d , %f",i,GetVehicleStructureInfoInt(vehicleid,i),GetVehicleStructureInfoFloat(vehicleid,i)); SendClientMessage(playerid,0xFFFFFFFF,string); } } else { for(new i = start;i < end;i++) { format(string,sizeof(string),"0x%x: %d , %f",i,GetPlayerStructureInfoInt(playerid,i),GetPlayerStructureInfoFloat(playerid,i)); SendClientMessage(playerid,0xFFFFFFFF,string); } } return 1; }[/pwn] вот эта команда( я один чтоли в samples.pwn заглядываю? ) P.S. если всё же я не так тебя понял то извини
Добавлено (18.02.2010, 15:15) --------------------------------------------- Никто ещё не нашёл офсеты в CVehicle: пробита/не пробита шина( массив из 4 ячеек должен быть ) включена/выключена сирена и поломки визуальные? я пока только нашёл жизнь транспорта на 0xA6 и прицеп на 0x66 вроде так
дадада....(про скрипт) так, всё что ты перечислил ваще нафег ненада впринципе, я лишь хочу использовать данный плагин для создание ништяковского античита... вааааааааааййй..// :(0
Aleksey, и чем отличается твой античит от уже существующих? ничем. GetPlayerMoney юзайет тотже офсет, что и GetPlayerStructureInfoFloat You know you're right!
Если взять цветной бумаги, ручку, ножницы и клей, и еще чуть-чуть отваги - можно сделать сто рублей.
xJester, проверка на хайдшот, дигл, проверка на айм, проверка на фэйк килл.... Даже проверка на поворот тачи относительно ofs(x,y,z)
Добавлено (18.02.2010, 22:34) --------------------------------------------- можно вести адекватный подсчет очков при дрите, можно устроить тир, епте. нужен только мозг и идея