В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
[error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ...all of pripyat\gamedata\scripts\smart_terrain.script:512: attempt to index field 'alife_task' (a nil value)
stack trace:
немогу понять почему вылетает не хочет эксклюзива в сталкер зп спавнить
safra2011, Если будешь менять расстояние в конфиге, то это коснётся всех НПС. Как вариант, можешь воспользоваться ф-ей:
Код
function new_talk() local npc = level_object_by_sid(number) -- где number = story_id db.actor:run_talk_dialog(npc) -- тут будет читаться диалог нпс, из профиля нпс прописанный в dialogs_*.xml end
Только тебе надо добавить прозрачного нпс с которым будешь говорить, на стандартном расстоянии. И вызвать ф-ию из логики нпс или рестриктора. П.С. По другому вроде никак. Гуру, поправьте, если есть альтернативный вариант.
Если будешь вызывать из xr_effects.script то добавь в него:
Код
function new_talk(actor, npc, p) local nps = level_object_by_sid(p[1]) db.actor:run_talk_dialog(nps) end
Вызов из логики: =new_talk(story_id) N.B. Проверь наличие ф-ии level_object_by_sid в _g.script, если её нет, то замени на подобную из ЗП, или добавь:
Код
function level_object_by_sid( sid ) local sim = alife()
if sim then local se_obj = sim:story_object( sid ) if se_obj then return level.object_by_id( se_obj.id ) end end
return nil end
Это из ТЧ, но сработает и в ЗП.
Добавлено (12.05.2014, 21:08) --------------------------------------------- RICK, Покажи секцию НПС. Полное название путей не помогло?
Сообщение отредактировал ins33 - Понедельник, 12.05.2014, 21:10
название точек в сдк l01_a1_stalker_base_smart_post_guarder_1_walk l01_a1_stalker_base_smart_post_guarder_1_look
[error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ...all of pripyat\gamedata\scripts\smart_terrain.script:512: attempt to index field 'alife_task' (a nil value)
Сообщение отредактировал RICK - Понедельник, 12.05.2014, 21:17
story_id может быть в данном случае буквенным, или только числовым? И если только числовым,то как назначит это самое число? Всегда задавался этим вопросом...
safra2011, SID = number Стори_айди задаётся в all.spawnstory_id = number или скриптом, к приме с помощью ф-ий АМК:
Код
function name() local sobj = alife():create("section_name",vector():set(x,y,z),lv,gv) local paramss=amk.read_stalker_params(sobj) paramss.sid = number amk.write_stalker_params(paramss, sobj) end
Код
--------------------------------------------------------------------- -- =new_talk_by_name(name) -- Поговорим с нпс по имени --------------------------------------------------------------------- function new_talk_by_name(actor, npc, p) local obj = p[1] for a=10,65635,1 do local npc=level.object_by_id(a) if npc and string.find(npc:name(),obj) then if npc == nil then printf ("Can't find npc with story id %d", obj) else db.actor:run_talk_dialog(npc) end end end end
RICK, боюсь показаться не осведомленным. Является ли допустимым в написании названии логики в секции с заглавной буквы (в вашем случае Walker)? Просто нигде не встречал подобных примеров и стало интересно.