В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
function функция_удаления_нпс() for a=10,65634,1 do local obj=alife():object(a) if obj and string.find(obj:name(),"имя секции обьекта") then alife():release(obj,true) end end
Если поршень выдаёт нпс которого хочешь удалить, и выдаёшь из диалога, то функцию удаления надо запускать через таймер. Пару секунд хватит.
Rap4ik, по поводу диалога,ещё не пробовал,но наверное так же,как и в Тенях.Вставляешь в логику НПС,в секцию [meet]: use = {-инфопоршень} self, true В диалоге выдаёшь инфопоршень, чтобы больше захват не повторялся и ещё в логике этого НПС укажи расстояние на котором происходит захват:on_actor_dist_le_nvis = 2.
Такой вопрос создал новый сквад в ЗП на новой локе (локи все заранее настроил через скрипты). В общем при заходе на локу, где должен стоять сквад, я его не обнаружил. Пришлось заспавнить его через повелитель Зоны. И я словил вылет
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ... - Зов Припяти\gamedata\scripts\smart_terrain.script:584: attempt to index local 'job_data' (a nil value)
Сначала сделал смарт,сквад к нему из одного НПС.В simulation.ltx сквад не активирушь.При выдаче инфопоршня,твой НПС появляется.
Можно через спавнер.Тогда в логике смарта пишешь: respawn_only_smart = true respawn_params = respawn@stalker
[respawn@stalker] spawn_stalker
[spawn_stalker] spawn_squads = название сквада spawn_num = {+твой инфопоршень} 1,0
Тут ещё надо прописать твой сквад в файле:simulation_objects_props.ltx [название сквада]:default_squad surge = 1 sim_avail = {+твой инфопоршень} true, false
Через респавн рестриктор не нужен.Точка спавна в скваде. А удалить сквад через логику рестриктора: [logic] active = sr_idle
[sr_idle@nil] ------------------------------ =squad_exist(название сквада) - это необязательно.По моему - это проверка,что сквад в игре, типа:=is_alive() в ТЧ.
Добавлено (21.12.2012, 21:52) --------------------------------------------- strelok200, сквад у тебя называется agr_army_squad,а в simulation.ltx ты пишешь:agr_army_squad1 = agr_smart_terrain_1 Это:
не нужно или пиши sim_avail = true в файл simulation_objects_props.ltx.Про респавн, мой пост выше.Это: spawn_squads = agr_army_guard1_novice ; у тебя сквад называется agr_army_squad!!!Значит: spawn_squads = agr_army_squad.Там же spawn_num = 14 Ты хочешь,чтобы у тебя респавнилось без всяких условий в начале игры 14 сквадов? В общем,для начала удали респавн(пока) и закоментируй эксклюзивов,если будет вылет.И это: agr_army_squad = agr_smart_terrain_1
Добавлено (21.12.2012, 21:57) --------------------------------------------- Дальше: [logic@agr_army_commander] active = walker@commander suitable = {=target_squad_name(agr_army_commander) !check_npc_name(agr_army_commander)} true У командира проверка:=check_npc_name(agr_army_commander)*****=(равно)
Помогите с рандомом звука. Как его реализовать в этом скрипте:
Код
function pls() local s = xr_sound.get_safe_sound_object([[characters_voice\scenario\yantar\dream_talk_1]]) s_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0) end
Добавив на пример [[characters_voice\scenario\yantar\dream_talk_1]]
Скачал большую карту(ui_global_map.dds).Как её уполовинить в фотошопе?Фотошопом ни разу не пользовался.Если кто знает,порядок команд, например: 1.Открыть 2.Обрезать 3.Так далее. Вот попал
local device_active = true local snd_obj function pls() if device_active then local F = math.random(1,1) snd_obj = sound_object([[characters_voice\scenario\yantar\dream_talk_]]..F) snd_obj:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d) end end
Если надо выбрать из пяти звуков math.random(1,5) В bind_stalker.script на update.
Товарищи, у меня вопрос. Каким приёмом высылаются сообщения на ПДА Меченого в ТЧ? Нашёл только некоторые файлы, в которых прописаны только ссылка на озвучку и условие выдачи. (ph_sound). А где тексты сообщения хранятся, или какой -то скрипт участвует?
LaRento, все сообщения в игре отсылаются одной единственной функцией give_talk_message. Из-за своих особенностей она используется в функции send_tip, что в файле news_manager.script. ВСЕ тексты в оригинале хранятся в папке config\text\rus.