В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга
• Не флудить • Предварительно просматривайте раздел, ведь ответ на ваш вопрос может быть там • В своем вопросе указывайте платформу моддинга — Тень Чернобыля, Чистое небо или Зов Припяти
1. Какая стоит игра, с каким патчем? 2. Какой мод, версия мода? 3. Что правили своими ручками? 4. Лог вылета и последние 25 строк (помещать под спойлер).
Структура папок и файлов в корневом каталоге игры:
...\S.T.A.L.K.E.R\gamedata\anims – папка содержит исполнительные файлы эффектов (например от ПНВ).
...\S.T.A.L.K.E.R\gamedata\config – папка содержит основные конфигурационные файлы (т. е. большинство настроек игры)
...\S.T.A.L.K.E.R\gamedata\meshes – содержит модели игровых предметов и персонажей...
...\S.T.A.L.K.E.R\gamedata\scripts – папка со скриптами (рабочими файлами содержащими в себе наборы функций) – основная папка, отвечающая за ответные действия игры и действия производимых игроком в игре.
...\S.T.A.L.K.E.R\gamedata\shaders – папка содержит в себе конфигурационные файлы шейдеров.
...\S.T.A.L.K.E.R\gamedata\sounds – здесь находятся все звуки игры (разложены по своим каталогам и папкам)
...\S.T.A.L.K.E.R\gamedata\spawns – содержит файл спавна – очень важный файл – не трогать без нужды!!!
...\S.T.A.L.K.E.R\gamedata\textures – содержит разложенные по каталогам и папкам текстуры используемые в игре.
Теперь разберем папки в каталоге «config»
...\S.T.A.L.K.E.R\gamedata\config\creatures - содержит массу конфигурационных файлов, в основном отвечающих за взаимодействие Главного героя игры (в дальнейшем ГГ) и прочего окружения в игре и ТТХ самого ГГ.
...\S.T.A.L.K.E.R\gamedata\config\gameplay – содержит конфиг. файлы персонажей игры (НПС) отвечающие за внешний вид, статус, снаряжение. Файлы: character_desc_ххх (где ххх – название локации) и character_desc_general (отвечает за зомбированного персонажа). Также содержит файлы диалогов и профилей НПС.
…\S.T.A.L.K.E.R\gamedata\config\misc – конфиг.файлы торговцев (папки с именами торговцев), артефактов, брони, квестовых предметов, уникальных предметов, файл отвечающий за награды за автозадания, файл эффектов (алкоголизма, ранения, ПНВ и прочих)...
…\S.T.A.L.K.E.R\gamedata\config\mp – среди прочих содержит важный файл mp_ranks – отвечающий за выпадение оружия и патронов из рук ГГ и НПС – без прописывания добавляемого в игру оружия в этот файл при выпадении нового оружия из рук ГГ\НПС будут следовать вылеты.
…\S.T.A.L.K.E.R\gamedata\config\text\rus – содержит файлы описаний всего и вся находящегося в игре (брони, артефактов, оружия, предметов и прочего).
…\S.T.A.L.K.E.R\gamedata\config\weapons – содержит конфиг.файлы оружия и боеприпасов используемых в игре.
…\S.T.A.L.K.E.R\gamedata\config\weathers – содержит конфиг.файлы настройки погоды на локациях.
Теперь немного подробнее о файлах.
...\S.T.A.L.K.E.R\gamedata\config\misc:
Папка shop_ххх (ххх – имя торговца) – содержит конфиг.файлы ассортимента торговца.
outfits – содержит секции конфигов костюмов.
artefacts - содержит секции конфигов артефактов.
items - содержит секции конфигов предметов.
monster_items - содержит секции конфигов частей монстров
postprocess - содержит секции конфигов пост. процессов (например: ПНВ).
quest_items - содержит секции конфигов квестовых предметов.
task_manager - содержит секции наград за автоквесты.
unique_items - содержит секции конфигов уникального оружия и костюмов.
Krachkovskii, Тогда в биндере ГГ (bind_stalker.script) в апдейт колбеке (actor_binder:update) пишите что-то типа:
Код
local torch = db.actor:object("device_torch") if (torch:torch_enabled()) and (not torch_on) then torch_on = true --ON!!! elseif (not torch:torch_enabled()) and torch_on then torch_on = false --OFF!!! end
Krachkovskii, в ЛВО это были движковые правки. А так в общем-то тебе правильно подсказывают - колбек это обычная функция, которую вызвали в нужном месте или в нужный момент. Момент тебе подсказали, так что - пробуй.
ins33, если для ЗП - то можешь попробовать постучаться Real Wolf'у в личку, они же перетащили мод на платформу ЗП, может поможет с правками на работу артов из рюкзака. Скриптом это делать не очень красиво.
Теперь я в LE не могу оружие заспавнить, т.е. если есть инклуды - то дубликат, если нет инклудов - то вообще оружия нету. Вот скрин https://yadi.sk/i/uzKFPwAEssHbQ
13Шустрый13, дубликаты секций в SDK появляются не по названию самих секций предметов, а по значению параметра $spawn в этих секциях. Я более чем уверен, что у тебя не родная gamedata и в ней присутствуют новые секции оружия. Так вот поправь для этих новых секций этот параметр на предмет уникальности (или добавь по аналогии если его нет). Ещё раз - значение этого параметра должно быть УНИКАЛЬНЫМ! Обычно там указывается секция отображения (в случае с оружием, это weapons) и через слеш - уникальное название самого оружия.
Добро. ЗП Работаю с GUI-элементами. Каким образом можно разместить на gui-окне счетчик, который будет показывать число, например, аптечек в рюкзаке ГГ?
Добавлено (29.06.2016, 17:43) --------------------------------------------- makdm, tdl ==> af_electra_sparkler,0.7,af_electra_flash,0.25,af_electra_moonlight,0.05 local t = {tbl} local n = #t local ret_table = {} local k = 1 while k <= n do table.insert(ret_table, t[k]) k = k + 2 end на выходе --> af_electra_sparkler,0.7,af_electra_flash,0.25,af_electra_moonlight,0.05
* local ltx = system_ini() local osect = obj:section() local str = ltx:r_string(osect, "artefacts") if str and string.find(str, "af_") then get_console():execute(string.format('load ~[ex_test] TO: %s',tbl)) *
Добра всем. Скиньте пожалуйста модели домов для SDK 0.7 Именно таких домов, в которые можно заходить и т.д, самому в 3d max'e лень их делать. Или шепните, где скачать/найти можно.
Подскажите, как из этой таблицы af_electra_sparkler,0.7,af_electra_flash,0.25,af_electra_moonlight,0.05 удалить циферки и лишние запятые
Это не таблица, а строка!!!
local ltx = system_ini() local str = ltx:r_string("zone_witches_galantine", "artefacts") local t = utils.parse_names(str) local n = #t local ret_table = {} local k = 1 while k <= n do table.insert(ret_table, t[k]) k = k + 2 end
local ltx = system_ini() local str = ltx:r_string("zone_witches_galantine", "artefacts") local t = utils.parse_names(str) local n = #t local ret_table = {} local k = 1 while k <= n do table.insert(ret_table, t[k]) k = k + 2 for k, v in ipairs(ret_table) do if ret_table ~= nil then alife():create(v, db.actor:position(),db.actor:level_vertex_id(),db.actor:game_vertex_id(),db.actor:id()) end end end
local ltx = system_ini() local str = ltx:r_string("zone_witches_galantine", "artefacts") local t = utils.parse_names(str) local n = #t local ret_table = {} local k = 1 while k <= n do table.insert(ret_table, t[k]) k = k + 2 end for k,v in pairs(ret_table) do alife():create( v, vector(), 0, 0, db.actor:id() ) end