В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
Цитата SMGames ()Expression : fatal error Function : CBuild::PreOptimize File : D:\prog_repository\sources\trunk\utils\xrLC\xrPreOptimize.cpp Line : 137 Description : <no expression> Arguments : * FATAL: 61 invalid faces. Compilation aborted Компилировал терреин чтобы проверить его в игре. Но на терреине нету инвалид фейсов, проверено с помощью скрипта для 3д макс от гениора, да и в СДК после build точек нету. Магия... установи компиляторы которые позволяют компилить с инвалид фейсами и не парься в поиске)
Это и так через обход. Без обхода вылетает на Build UV mapping
Всем добрый вечер. Играл сегодня в оригинальный ТЧ и заметил, что в нем нет такого повреждения как химический ожог. При попадании в аномалию увеличивается только кровотечение. И вот возник вопрос, можно ли реализовать в ТЧ данный тип повреждений? Заранее спасибо.
FantomICW, еще вопрос. создал простого НПС, как теперь посредством диалога сделать, чтобы он выдал предмет взамен другого предмета? т.е. я ему, а он мне.
У меня простой (и может быть кому-нибудь покажется дурацкий вопрос) - как быстрее убрать с экрана сообщение для ГГ, чтобы оно не висело слишком долго - может быть есть функция типа clear tip (да, туплю, но всё-равно это очень нужно для работы).
Пример:
news_manager.send_tip(db.actor, "%c[255,255,128,128]СПРАВОЧНИК АРТЕФАКТОВ:\n%c[default]Вы подняли вредный антиартефакт.\\nНи в коем случае не ложите его в ячейку костюма - это смертельно опасно.\\nНайдите возле аномальной зоны металлический изолирующий контейнер и скиньте антиартефакт во внутрь его.\\nИ не забудьте принять антирад и возможно подлечиться аптечкой.", nil, nil, 30000)
news_manager.send_tip(db.actor, "%c[255,255,128,128]СПРАВОЧНИК АРТЕФАКТОВ:\n%c[default]Вы подняли вредный антиартефакт.\\nНи в коем случае не ложите его в ячейку костюма - это смертельно опасно.\\nНайдите возле аномальной зоны металлический изолирующий контейнер и скиньте антиартефакт во внутрь его.\\nИ не забудьте принять антирад и возможно подлечиться аптечкой.", nil, nil, 30000)
Попробуй изменить значение выделенных цифр на 10000, например.
Сообщение отредактировал Streels - Суббота, 01.03.2014, 20:01
FantomICW, Streels, спасибо - попробую. Ещё будет вопрос по замещению части одного скрипта другим (более компактным) - ну через время выложу куски кодов. Думаю, один Вам будет знаком.
К примеру, есть много таких блоков (для каждого вида артефактов - не важно вредных или не сильно):
if db.actor:object("af_electra_crazy") then news_manager.send_tip(db.actor, "%c[255,255,128,128]СПРАВОЧНИК АРТЕФАКТОВ:\n%c[default]Вы подняли смертельно опасный антиартефакт. Внимание! Критический уровень радиации! Опасность! Опасность!.\\Мониторинг жизненных показателей: нитевидная форма пульса.\\Связь прекращена в связи с наступившей гибелью носителя.", nil, nil, 30000) local snd = sound_object([[device\pda\pda_alarm]]) snd:play_no_feedback(db.actor,sound_object.s2d, 0, vector():set(0, 0, 0), 2.0) level.add_pp_effector("radiation.ppe", 1995, false) db.actor:kill(db.actor) --убийство игрока самым сильным антиартефактом и сообщение о наступлении песца else level.remove_pp_effector(1995) end
Нужно объединить такие блоки во что-то более компактное (возможно с перебором имён артов, если сильно вешать память не будет, конечно). К примеру в одном из скриптов СВ: Послушник видел вот этот кусок кода:
--/Эффект при поднятии артефакта function on_item_take(obj) if (obj:section()=="af_cristall_flower" or obj:section()=="af_night_star" or obj:section()=="af_gravi" or obj:section()=="af_medusa" or obj:section()=="af_vyvert" or obj:section()=="af_gold_fish") then this.art_hit_gravitational() elseif (obj:section()=="af_cristall" or obj:section()=="af_fireball" or obj:section()=="af_dummy_glassbeads" or obj:section()=="af_eye" or obj:section()=="af_fire" or obj:section()=="af_blood") then this.art_hit_fire() elseif (obj:section()=="af_mincer_meat" or obj:section()=="af_soul" or obj:section()=="af_fuzz_kolobok" or obj:section()=="af_glass" or obj:section()=="af_baloon") then this.art_hit_chemical() elseif (obj:section()=="af_electra_sparkler" or obj:section()=="af_electra_flash" or obj:section()=="af_electra_moonlight" or obj:section()=="af_dummy_battery" or obj:section()=="af_dummy_dummy" or obj:section()=="af_ice") then this.art_hit_electrical() end end
В чём разница - у меня фонит (с постэффектами и сообщением об опасности), если лежит в рюкзаке, если взяли арт, у вас же - при подборе самого арта идёт быстрый удар-шок и постэффекты от него. Можно ли сделать гибридную компиляцию кода, при которой и первый скрипт удастся оптимизировать, и во второй можно будет добавить что-то? (скорее всего может пригодиться для полной версии СВ).
Сообщение отредактировал UX-3000 - Суббота, 01.03.2014, 21:16
Asfagan, я могу тебе сразу готовый вариант кинуть с любым названием предметов и самой функции. Но прежде этого, давай ты попробуешь это сделать сам? Туторы по диалогам - просто дофига. А про скриптовую часть - открываем файл dialogs_лока.script (ЗП) и смотрим, как там реализовано перемещение предметов. Берем как основу, меняем название, все. Каждый успешный модмейкер в свою время ломал голову над вот такими задачками. И старались понять и освоить многое сами. Вот поверь, ты если сам это сделаешь, тебе будет приятней. Это ведь не текстурирование или сложное скриптование, о которых нужно лекции читать. Давай, попробуй, не получиться, отпишешься.
Добавлено (01.03.2014, 21:19) --------------------------------------------- UX-3000, ты как функцию запускаешь?