Приветствую всех. Вот уже благодаря помощи пользователей сайта хоть чуть-чуть, но больше понимаю как и что делать в моддинге. На собственном опыте и пятнадцати переписывания и дописывания в файле skill.cfg узнал, что если там не установлен какой-то параметр, его можно дописать самому. (Решил попробовать сделать свой реалистик-мод. Знаю, что таких десятки, но решил попробовать сделать свой). Если кто знает, как узнать параметр (Название) Здоровья, способности, брони, силы... ну в общем понятно. Так например удар зомби называется sk_zombie_dmg_one_slash, а у муравья - swipe_damage Но как узнать названия здоровья, способностей и ударов других нпс? Называются они по другому, а как узнать? В каком файле это прописано? Туториалов в интернете для этого нет, все конфиги пересмотрел и не нашёл.
Здоровье - Health. Урон,удар и тд. - Dmg. Способности бывают разные: sk_rollermine_stun_delay "3" - через сколько-то секунд прицепившаяся к машине шаровая мина(Rollerball) будет атаковать молнией. sk_ally_regen_time "0.2" - регенерация здоровья у Аликс,Барни и Отца Григория через сколько-то секунд. sk_vortigaunt_armor_charge "15" - максимальный лимит брони у игрока если не превышает 15 то вортигонт будет заряжать броню. sk_vortigaunt_armor_charge_per_token "5" - броня за каждую волну получаемую от вортигонта(какой-то зеленый шар). Брони у NPС кажется нет,но можно уменьшить,увеличить урон через параметры: sk_npc_head "5" - урон получаемый нпс при попадании в голову(хэдшот). sk_npc_chest "1" - торс sk_npc_stomach "1" - живот. sk_npc_arm "1" - руки. sk_npc_leg "1" - ноги То же самое для игроков(внизу): sk_player_head "3" sk_player_chest "1" sk_player_stomach "1" sk_player_arm "1" sk_player_leg "1" Это 100% работает для Half-Life 2,но насчет Garry's Mod не уверен. Порывшись в кодах(garrysmod/gamemodes/base/gamemode/npc.lua) я нашел: function GM:ScaleNPCDamage( npc, hitgroup, dmginfo ) -- More damage if we're shot in the head if ( hitgroup == HITGROUP_HEAD ) then
dmginfo:ScaleDamage( 2 )
end
-- Less damage if we're shot in the arms or legs if ( hitgroup == HITGROUP_LEFTARM || hitgroup == HITGROUP_RIGHTARM || hitgroup == HITGROUP_LEFTLEG || hitgroup == HITGROUP_RIGHTLEG || hitgroup == HITGROUP_GEAR ) then
dmginfo:ScaleDamage( 0.25 )
end end Видимо в Gmod есть свой код отвечающий за урон. Вот для игрока(находится в player.lua в той же папке): function GM:ScalePlayerDamage( ply, hitgroup, dmginfo ) if ( hitgroup == HITGROUP_HEAD ) then
dmginfo:ScaleDamage( 2 )
end
if ( hitgroup == HITGROUP_LEFTARM or hitgroup == HITGROUP_RIGHTARM or hitgroup == HITGROUP_LEFTLEG or hitgroup == HITGROUP_RIGHTLEG or hitgroup == HITGROUP_GEAR ) then dmginfo:ScaleDamage( 0.50 ) end end Некоторые значения находятся в .dll файлах и их можно изменить только через lua код.
Параметры прописаны в коде. Скачай Sorce sdk и там загрузи исходный код .dll-ок. Вот файл зомби для примера:https://yadi.sk/d/FVdBQ7tBfKYsE Там есть строчка ConVar.Там и записаны параметры.