В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.
Не флудить
Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.
1. Какая стоит игра, с каким патчем? 2. Какой мод, версия мода? 3. Что правили своими ручками? 4. Конфиг компа. 5. Лог вылета и последние 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 - содержит секции конфигов уникального оружия и костюмов.
У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.
С логикой авто в Зоне разобрался Мне теперь интересно как заставить стрелять пулемет "тренога"?У меня пулемет сам как бы есть ,но у него видно только вспышку ,а сам он где?Есть ли у кого исправленная версия модели под названием wpn_mounted_pkm_trenoga?
Добавлено (25.04.2014, 12:11) --------------------------------------------- И можно ли поставить целью этого пулемета простых неписей ,монстров которые проходят рядом.Которых не я создал ,а уже которые бродят по локации.
Добавлено (25.04.2014, 12:46) --------------------------------------------- Без story_id они вроде.Вот как их прописать в логику пулемета?
Сообщение отредактировал saxar - Пятница, 25.04.2014, 12:44
Как создать кодированную дверь которая будет открываться с помощью ключ-карты? Да очень просто. Я беру пример из моего мода в котором подключена локация из ТЧ Лаборатория Х-18. Как вы помните в игре необходимо достать коды, обыскав трупы экологов, и ввести код на пульте управления. Как это реализовать я не знаю, просто я не ставил перед собой такой задачи у нас она будет открываться с помощью ключ-карты. Поехали: В распакованном файле allspawn открываем фаил alife_l04u_labx18.ltx и вставляем вот эту секцию;
[7989] ; cse_abstract properties section_name = physic_object name = lab_door_1 position = -1.90032958984375,6.37723541259766,-10.3238143920898 direction = 0,3.14159226417542,0
; cse_alife_object_physic properties physic_type = 0x3 mass = 10 fixed_bones = link
У вас может будет другой game_vertex так что ставьте свой. Если у вас уже есть секция такой двери, просто поменяйте логику. И не забутье про модель самой двери.
Создайте фаил логики lx18_door_1.ltx и в него вставьте вот это;
Поясняю самые главные параметры; card_lab_x18_key_1 - это название карты которую вы создадите в файле quest_items.ltx который лежит по пути gamedata\configs\misc.
snd_open_start = trader_door_open_start snd_close_start = trader_door_close_start snd_close_stop = trader_door_close_stop Звуки дверей, в данном случае звуки открывания\закрывания тяжелой металлической двери.
В файле quest_items.ltx, о котором я упоминал ранние, в конце вставляем вот это;
Описание и название ключ-карты вставим в фаил st_items_quest.xml который лежит по пути gamedata\configs\text\rus
<string id="st_card_lab_x18_key_1_desc"> <text>Магнитная ключ-карта синего цвета, от дверей первого уровня. На одной из плоскостей видна надпись «Х18».</text> </string> <string id="st_card_lab_x18_key_1_name"> <text>Синяя ключ-карта - «Х18»</text> </string>
Иконку карты возмём готовую из SGM мода, координаты поставите свой.
Пропишем нашу карту в файле death_generic.ltx который лежит по пути gamedata\configs\misc. Это нужно чтобы карта была в инвентаре трупа.
card_lab_x18_key_1 = true
Если предполагается что карта будет выдаваться в качестве награды за выполнение квеста то нужно её зафиксировать во все файлах торговцев вот такой строкой;
card_lab_x18_key_1 = ;NO TRADE
И в файле ui_si.script который лежит по пути gamedata\script после; "lx8_service_instruction"
прописать; "card_lab_x18_key_1"
должно получиться так; "lx8_service_instruction", "card_lab_x18_key_1"
На этом всё. Здесь описан способ для дверей, которые находиться в лабораторий Х18 но он подойдёт и для других дверей. Способы получить ключ-карту могут быть разные, всё зависит от вашей фантазий.
Всем доброго вечера, друзья! Интересует один вопрос. Допустим, я добавил динамическую музыку в игру, но она работает постоянно и её нельзя включить или выключить на выбор. Возможно ли сделать её включение и выключение через меню в опциях? Я в курсе, что для этого нужна консольная команда и нужно править движок, но всё же, я думаю, что скриптами тоже как-то можно, или нет?
Скриптёры, выручайте.
Платформа: SoC v. 1.0006.
Сообщение отредактировал Streels - Пятница, 25.04.2014, 19:33
рекомендую посмотреть в сторону АМК. Там есть собственное меню с настройками.
Было такое дело. Проблема в том, что в скриптах там легко запутаться, поэтому, решил спросить здесь. Но, как вариант, можно будет опять его глянуть. Да и было бы неплохо сделать именно в опциях оригинальной игры, но там нужна консольная команда. Вот если бы её можно было бы зарегистрировать скриптово, а при её вызове активировать нужную функцию, но это вряд ли.
Не, не так. actor - одно из зарезервированных значений. Еще в комментариях указаны значения paths и story_ids, но последнее в скриптовой форме не вижу.
Streels, настройки оригинала, да - инициализированы настройками из .xml. Сделай дополнительные настройки, в чём проблема состоит?
ЦитатаKrievu_Okupants ()
Есть строка target = actor, определяет цель. Что здесь actor? Класс? Или что?
Это объект актора. Убедиться можно загляну в файл xr_remark.script. В конечном счёте можно указывать три значения для параметра target: актор, story_id персонажа и имя работы и имя гулага через запятую, целью будет тот НПС который ходит на этой работе.
[zmey_stalker_condition] satiety_v = 0.00001 ;скорость уменьшения сытости со временем radiation_v = 0.0001 ;скорость уменьшения радиации satiety_power_v = 0.0005 ;увеличение силы при уменьшении сытости satiety_health_v = 0.0 ;0.0001 ;увеличение здоровья при уменьшении сытости satiety_critical = 0.0 ;критическое значения сытости (в процентах от 0..1) когда здоровье начианает уменьшаться radiation_health_v = 0.000 ;уменьшение здоровья при воздействии радиации morale_v = 0.0001 ;скорость восстановления морали health_hit_part = 0.0005 ;процент хита, уходящий на отнимание здоровья power_hit_part = 0.0 ;процент хита, уходящий на отнимание силы psy_health_v = 0.01 ; скорость восстановления psy-здоровья health_restore_v = 0.00001 ;скорость восстановления здоровья
sleep_health = 1.0 ;коэффициенты скоростей изменения параметров во время сна sleep_power = 1.0 sleep_satiety = 1.0 sleep_radiation = 1.0 sleep_psy_health = 1.0
use_limping_state = off limping_threshold = 0.5
;открытые раны bleeding_v = 0.01 ;потеря крови при номинальной ране в секунду wound_incarnation_v = 0.001 ;крутизна кривой заживления (какой процент раны останется после заживления в игровую секунду) min_wound_size = 0.1
[meet@zmey] meet_state = 3 | ward@wait meet_state_wpn = 3 | ward@wait victim = 2 | actor victim_wpn = 2 | actor use = true use_wpn = true
Поршень zmey_deads, использую для спавна нескольких зверушек, из cond = { zmey_deads} Функция =release_sid(sid_id) на других sid_id работает, как часы. А теперь о главном, вылетов словил тонну, и всегда об одном:
! Unknown command: *INFO:can't find object with story id 9739 * Log file has been saved successfully! ! Unknown command: *INFO:can't find object with story id 9739 * Log file has been saved successfully! ! Unknown command: *INFO:can't find object with story id 9739 * Log file has been saved successfully! sv reject. id_parent [3470][stalker:zmeyenish] id_entity [3473][wpn_ak74u:wpn_ak74u3473] [2333] ! Unknown command: *INFO:[zmeyenish] killed by [single_player] * Log file has been saved successfully! ! Unknown command: *INFO:_bp: killed_by_actor: true * Log file has been saved successfully! ! Unknown command: *INFO:try to send tips for [nil] * Log file has been saved successfully! sv destroy object [3470][stalker:zmeyenish] [2333] sv destroy object [3471][device_pda:device_pda3471] [2333] sv reject. id_parent [3470][stalker:zmeyenish] id_entity [3471][device_pda:device_pda3471] [2333] sv destroy object [3472][ammo_5.45x39_fmj:ammo_5.45x39_fmj3472] [2333] sv reject. id_parent [3470][stalker:zmeyenish] id_entity [3472][ammo_5.45x39_fmj:ammo_5.45x39_fmj3472] [2333] sv destroy object [22964][bolt:bolt] [2333] sv reject. id_parent [3470][stalker:zmeyenish] id_entity [22964][bolt:bolt] [2333]
FATAL ERROR
[error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...\s.t.a.l.k.e.r\gamedata\scripts\smart_terrain.script:1137: attempt to index local 'obj' (a nil value)
Решил проверить: Unknown command: *INFO:can't find object with story id 9739
Вызвав:
Код
function release_zmeyenish() local sim = alife() local se_obj = sim:story_object(9739) if se_obj then sim:release(se_obj, true) end end
И! О чудо, оказывается стори_ид 9739, существует! Перед, тем, как отправить этот потс, не поленился, и дошёл, до подобного нпс, с логикой:
И он удалился! Помогите, разобраться, по какой причине, чудило не удаляется. П.С. у него есть пару квестов, но у всех прописано <infoportion_fail>zmey_dead</infoportion_fail>, и перед убийство, я закрываю этим поршнем все не выданные квесты, хотя думаю это не причём. П.П.С. вызывал ф-ию release_zmeyenish(), через поршень, но всё равно словил вылет.
wind, Работает на патче 1.6.02: вводим bind cam_2 kz нажимаем символ - на цифровой клавиатуре, и худ исчез нажимаем + на цифровой клавиатуре, худ возвращается