В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
Roman_Dmitrov, в данном случае только через нет пакеты. Самый распространённый способ - это с помощью АМК скриптов, там уже есть готовые функции. P.S. И не "id_story", а story_id.
Roman_Dmitrov, конечно. Пишешь свой скрипт и пользуешься. Но повторюсь - делается это с помощью нет-пакетов. Вот есть пример, правда с помощью АМК функций: >>ClicK Me<<. А вообще ты скажи, для чего тебе это?
Сообщение отредактировал ColR_iT - Вторник, 22.01.2013, 13:46
Как создать точку respawn для мутантов, допустим псевдогигантов? И еще, как сделать чтобы в этой точке днем спавнилось от 2 до 5 мутантов, а ночью от 5 до 14. Видимо за это отвечает функция {is_day} и {!is_day}, но может кто-нибудь объяснить, куда это нужно вписывать, в логику?
--# Будем хранить серверный объект. local sObjArt --# Функция спавна. function SpawnArt () --# Получаем серверный объект во время спавна. sObjArt = alife():creat(vector(),level_vertex_id, game_vertex_id) end --# Функция метки. function PutLabels () --# Если объект существует. if sObjArt then --# Поставим на него метку. level.map_add_object_spot(sObjArt.id, "treasure", "Метка.") end end
Сначала спавнишь, затем вызываешь функцию для метки.
Добавлено (22.01.2013, 14:05) --------------------------------------------- BadQvik, читать, читать и ещё раз читать... Ссылка прежняя. На Wiki есть ответы на все твои вопросы.
level - пространство имён экспортированное из движка; map_add_object_spot - собственно функция, которая ставит метку на объект. Принимает следующие параметры:
sObjArt.id - id объекта на который ставим метку; "treasure" - тип метки. Какие есть ещё, можно глянуть в файле map_spots.xml; "Метка." - подсказка при наведении мышкой на метку.
Ребят, хелп ми. Уже замонался с этой проблемой, 4 месяца вожусь и никак. Я взялся за простой перенос модели зомба из ЧН в ТЧ. Первым делом удалил 2 ненужных сустава в Милке 2)В СДК прописал user data, обозначил make progressive 3) Выбрал анимацию zombie_animtaion.omf с добавлением 2 новых, которые требовала игра при вылете(death_init.skl и wanded_1_idle_0.skl 3)выбрал настройку костей.
В игре вылета не было, пока не загружу сейв. Вылетает с пустым логом. В чём проблема, где накосячил именно в ЗОМБАМИ? С другими моделями всё окей, вывод - наверное дело в анимациях.
local sObjArt function SpawnArt () sObjArt = alife():creat(vector(),189935, 163) end function PutLabels () if sObjArt then level.map_add_object_spot(sObjArt.id, "treasure", "Метка.") end end
function spawn_ak74u() amk.spawn_item("af_blood",vector():set(-255.81,-19.49,-127.58),163,189935) -- спавн end
function escape_volk_ak74u_have() return sak.have_item_namber("af_blood",1) ~= false -- проверка на нахождение предмета в рюкзаке end
function give_volk_ak74u(first_speaker, second_speaker) -- передача предмета sak.out_item_namber("af_blood", 1) end
function complete_volk_quest(first_speaker, second_speaker) -- получение награды dialogs.relocate_money(second_speaker, 1500, "in") end
Roman_Dmitrov, высоко ты хочешь прыгнуть, однако... Может для начала почитаешь мануалы, статейки по скриптам и по Lua в частности, или хотя бы посмотришь на них в оригинале? То что сделал ты - белиберда. Бессмысленный копи-паст, да ещё и с удалением комментариев.
BadQvik, так я не копировал никогда, я по уроку делал, просто спросил потому что времени на квесты пока нет я другим занят) а если таково необходимо обязательно с указанием автора. А вот про самому разбираться я согласен!
Сообщение отредактировал Roman_Dmitrov - Вторник, 22.01.2013, 14:58
Roman_Dmitrov, где же по уроку, если я дал тебе функцию, ты её просто "всунул" в свой скрипт, и надеешься на чудо свыше!? Это и есть копи-паст! Причём, повторюсь, - бездумный. В общем, я заканчиваю оффтоп. Будут конструктивные вопросы - постараюсь помочь, а пока...