В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
Нет, просто гдето читал что в конфигах смарта нужно прописыть. А че тогда оно не работает....ладно разберусь. Поможешь с вылетом: При запаковке спавна билдовского Когдона (2205), вылет с логом: [error]Expression : assertion failed [error]Function : CGraphMerger::CGraphMerger [error]File : D:\prog_repository\sources\trunk\utils\xrAI\xr_graph_merge.cpp [error]Line : 597 [error]Description : tpGraphs.size()
Я видел много решений проблем но ни одна не подходит. На уровне 2 графа на АИ - сетке и актор. Помогите... В конфигах вроде все вравильно прописано
Цитата Expression : assertion failed Function : CGraphMerger::CGraphMerger File : D:\prog_repository\sources\trunk\utils\xrAI\xr_graph_merge.cpp Line : 597 Description : tpGraphs.size()
Возникает из-за того, что локация не прописана в конфигах.
Лечение: прописать локацию в конфигах(game_graphs, game_levels, game_map_single).
Добавлено (04.06.2014, 03:24) --------------------------------------------- Подскажите, есть ли возможность передать actor-a, как way_point? Тоби'ж, сделать так, что бы место положение гг, воспринималось мобом, как динамический way_point?
Решил сейчас спросить тут, вдруг кто-то уже решал этот вопрос? Если, кто знает, подскажите. плз. А так, на утро, есть идея, поковырять xr_remark.script на предмет target = actor. Как говориться утро вечера мудреней.
Изучаю функции в xr_conditions. При встрече с функцией function health_le(actor, npc, p) return p[1] and npc.health < p[1] end возник вопрос: зачем прописывается в конце скобок "p" в половине функций и как это используется?
antonnkz76, В вызове ф-ии в p передаётся какое либо значение. В твоём примере, это уровень здоровья, и если здоровье меньше p, то ф-ия вернёт true. =health_le(0.25) В этой ф-ии можно указывать от 0 до 1. В ф-ии give_item(actor, npc, p) в качестве p в вызове передаётся айтем =give_item(medkit)
Посмотри сами ф-ии, или посмотри, как они вызываются из логики.
ins33, ясно. Спасибо. В модах часто замечаю, что в динамических новостях когда сталкер отвечает другому, это происходит мгновенно без задержки, будто он за милисекунду достает ПДА читает сообщение, думает и отвечает. Так вот, как сделать, чтобы сообщения шли последовательно с определенным интервалом?(не динамические новости, а конкретно функцией для определенной ситуации)
Первое сообщение запустится сразу. Второе - через 4,5 секунды, третье - через 9 секунд после начала и через 4,5 секунды относительно второго сообщения, четвертое - через 13,5 секунд от начала и спустя 4,5 секунды от третьего.
Подскажите, есть ли возможность передать actor-a, как way_point? Тоби'ж, сделать так, что бы место положение гг, воспринималось мобом, как динамический way_point?
Поковыряй лучше скрипт xr_attendant.script. Это файл отвечающий за схему follower, а там НПС может следовать за другим НПС без указания строгих путей, т.е. грубо говоря, вей-поинты как раз вычисляются динамически.
Цитатаantonnkz76 ()
зачем прописывается в конце скобок "p" в половине функций и как это используется?
Последний параметр - это таблица, в неё можно передавать не один аргумент, а несколько... вообще, сколько угодно. При этом в самом вызове такой функции из логики, первые два параметра (как правило это actor, собственной персоной, и npc, тот для кого вызывается функция) передаются автоматически (в файле xr_logic.script), а модмейкеру достаточно указать лишь аргументы последнего параметра, в последствии они группируются, записываются в таблицу, которая и передаётся уже непосредственно в саму функцию.
Добавлено (04.06.2014, 11:31) --------------------------------------------- FantomICW, on_geme_timer отсчитывает секунды игрового времени, поэтому 45 будет равно 4.5 секунды тогда, когда time_factor в игре установлен как 10. В остальных случаях это будет 45/time_factor секунд.
Сообщение отредактировал BozKurt - Среда, 04.06.2014, 11:28
;дисперсия стрельбы с учетом ходьбы и бега disp_base = 0.72 ;угол (в градусах) разлета пуль, когда актер стоит на месте disp_aim = 0.04 disp_vel_factor = 2.0 ;на сколько увеличится дисперсия при скрости в 10 м/с (не обязательно при беге) disp_accel_factor = 2.0 ;еще на сколько увеличится, если актер бежит (+ скорость) disp_crouch_factor = -0.2 ;уменьшение если актер сидит disp_crouch_no_acc_factor = -0.4 ;уменьшение если актер сидит + no acceleration ;disp_jump_factor = 3.0
Кто нибудь сталкивался с изменением файла конфига, при зависе игры? Сам вижу такое в первые, что бы игра сама меняла ф-ил в папке геймдата. И вообще, это может повториться? И есть ли лекарство от такой беды?
В Зов Припяти в начале игры пытаюсь отослать сообщение через db.script Вот такая вот функция(взято со stalkerin): function storyline_start_message() local sactor = alife():actor() local cactor = level.object_by_id(sactor.id) cactor:give_game_news( "Неизвестный:\\nТекст.", "ui\\ui_actor_newsmanager_icons", Frect():set(0,611,83,47), math.random(300, 400), 2000 ) end
Но при НИ вообще ничего не происходит, не вылета, не бага, не сообщения. Как будто ничего и не было. НО: другие функции, добавленные через db.script(например выдача задания в начале игры), работают. Что делать?
Не пытаться изобрести велосипед. Достаточно посмотреть, как это сделано в ЗП, и воспользоваться готовыми функциями разрабов игры.
В файле xr_effects.script есть функция send_tip При старте новой игры, первой начинает обрабатываться секция sr_idle в логике рестриктора zat_b101_logic Вот сюда и вписывайте функцию и получите сообщение при начале игры.
Сообщение отредактировал makdm - Четверг, 05.06.2014, 07:48