В данной теме вы можете задавать любые вопросы касательно 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 - содержит секции конфигов уникального оружия и костюмов.
Теперь я в 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
tbl = {} local str = system_ini():r_string("zone_witches_galantine", "artefacts"); index = 1; for art in string.gmatch(str, "(%a[%w_]+),") do tbl[index] = art; index = index + 1; end
В таблице будут твои названия артефактов.
P.S. Если сделать так:
Код
tbl = {} local str = system_ini():r_string("zone_witches_galantine", "artefacts"); for art, rpob in string.gmatch(str, "(%a[%w_]+),(%d+%.?%d*)") do tbl[art] = rpob; end
То таблица получится ассоциативная, т.е. в таблице ключ будет название артефакта, а значение - вероятность его появления.
Сообщение отредактировал BozKurt - Среда, 29.06.2016, 23:40
makdm, Спасибо! BozKurt, Ты прям в корень зришь! Я рандом по другому думал делать. Так на порядок проще. Можешь расшифровать символы в скобочках, "(%a[%w_]+),(%d+%.?%d*)" Частично нашёл значения, но не всех.
Сообщение отредактировал ins33 - Среда, 29.06.2016, 23:40