|
Модостроение. Конфигурационные файлы
|
|
| denis2000 | Дата: Пн, 10.10.2011, 21:14 | Сообщение # 1 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Конфигурационные файлы
Редактирование параметров конфигурации, создание новых конфигураций
Если у вас появились вопросы по редактированию характеристик оружия, брони, отношения группировок в игре. Задавайте их в этой теме - умные головы, модосторители и просто разбирающиеся в программировании люди вам ответят.
Много интересного материала здесь (wiki), Lua_help.script, Help из SDK 0.7
Сборник модостроения ЗП v10.10.11 (автор: XOBAH): *.CHM, *.HTML [cut noguest=Если у вас не открывается файл CHM]Если у вас не открывается файл: 1. Запустите [Пуск]=>[Выполнить] (либо хот-кей [WIN]+[R]) 2. Введите команду (без кавычек) "regsvr32 %windir%\system32\hhctrl.ocx" 3. Если вылезло окно об успешном завершении вы все сделали правильно и можете перезагружать компьютер (а может и не надо) Также: файлы МОГУТ не открываться если в пути к файлу есть: символы кириллицы, "_", "#" Также: есть не стандартные программы-просмоторщики CHM файлов. Например: FBReader[/cut]
[cut=Где найти лог игры после вылета]Что такое LOG ошибки, и как мне его найти? Это система отладки происходивших вылетов, которая подается игрой в форме текста, хотя не всегда. Для того чтоб найти LOG необходимо зайти вот сюда:
В Win хр лог находится:
C:\Documents and Settings\All Users\Документы\S.T.A.L.K.E.R. - Зов Припяти\logs
Затем открываете первый файл в формате TXT, и в нем отбираете с низу 25 строчек. После кидаете эти 25 строчек в сообщение на форум.
В Win7 лог находится C:\Users\Public\Documents\S.T.A.L.K.E.R. - Зов Припяти\logs
Путь к папке с логом можно найти открыв файл fsgame.ltx который находится в корневой директории ЗП, за это отвечает строка: ... $app_data_root$ = true | false| $fs_root$| users\(тут мы указываем что папка пользователя, будет хранится рядом с Fsgame.ltx) ... $logs$ = true| false| $app_data_root$| logs\(а тут мы указываем что в папке пользователя, в подпапке Logs будут храниться наши логи) ... [/cut][cut=Получение более подробной информации о вылете (ХОВАН)] Открываем файл _g.script и ищем такую функцию: function abort(fmt, ...) Там есть заккомментированная строчка "--error_log(reason)", ее и надо расскомментировать, должно получиться вот так:
Код function abort(fmt, ...) local reason = string.format(fmt, ...) error_log(reason) end Вот для примера два одинаковых вылета, первый с функцией по умолчанию, второй - с поправленной функцией
Первый:
Код Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ....a.l.k.e.r. - Зов Припяти\gamedata\scripts\_g.script:478: bad argument #2 to 'format' (string expected, got nil) Второй:
Код Expression : 0 Function : ErrorLog File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp Line : 49 Description : 'Attempt to read a non-existant string field 'path_walk' in section 'walker@mechanic' [/cut]
Перед тем, как задать вопрос в этой теме, прочтите все предыдущие страницы, статьи в wiki по ссылке из шапки и соседнюю тему "Курс молодого бойца", возможно Ваш вопрос уже рассматривался.
Если произошел вылет - выкладываем лог! Вопрос ставим четко, не забываем указывать версию игры, установленные моды их версии, установленные фиксы модов и подробно ваши правки. Помните чем подробнее вопрос, тем точнее ответ.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| sergej5500 | Дата: Вт, 14.10.2014, 20:56 | Сообщение # 496 |
 Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Добрый вечер. Возник такой вопрос.
Параметр sim_avail определяет доступность смартов для посещения симуляционными сквадами. Можно ли сделать так, чтобы на смарт могли заходить только сталкеры, а бандиты нет? Что надо прописать в sim_avail ?
|
| |
|
| Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
| denis2000 | Дата: Вт, 14.10.2014, 23:44 | Сообщение # 497 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| sergej5500, Готового решения нет, крайняя возможность запретить смарт для симуляции по определенным условиям (наличие или отсутствие неких инфопорций) в файле simulation_objects_props.ltx параметр sim_avail поддерживает кондлист.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| makdm | Дата: Ср, 15.10.2014, 07:29 | Сообщение # 498 |
 Рожденный в СССР
Разработчики
Сообщений: 1294
| Цитата sergej5500 (  ) на смарт могли заходить только сталкеры, а бандиты нет? Скрипт sim_board.script Таблица simulation_activities содержит прекондишн для различных группировок. Смотрим бандитов: [cut noguest=Бандиты]bandit = { squad = { stalker = { prec = function(squad, target) return in_time_interval(8,21) and not xr_conditions.surge_started() and simulation_objects.sim_dist_to(squad, target) <= 150 end } }, smart = { base = { prec = function(squad, target) return in_time_interval(21,8) and not xr_conditions.surge_started() and not travel_manager.check_squad_for_enemies(squad) and (target:name() == "zat_stalker_base_smart" or target:name() == "jup_a10_smart_terrain") end }, territory= { prec = function() return in_time_interval(8,21) and not xr_conditions.surge_started() end }, surge = { prec = function() return xr_conditions.surge_started() end }[/cut]
Нас интересует параметр territory Из скрипта видно, что бандитам с 8 утра до 21 вечера, разрешено "шариться" по территории ( локации ) по всем смартам. Вот сюда и вставляем запрет на смарт. Например имя смарта zat_a150_smart. Тогда вписываем
territory= { prec = function() return in_time_interval(8,21) and not xr_conditions.surge_started() and not target:name() == "zat_a150_smart" end },
Сам не тестировал, но по идее должно работать.
Терпение...... И все получится!
|
| |
|
| Эти 0 пользователя(ей) поблагодарили makdm за это полезное сообщение: |
|
|
| sergej5500 | Дата: Ср, 15.10.2014, 21:04 | Сообщение # 499 |
 Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Цитата makdm (  ) Сам не тестировал, но по идее должно работать.
К сожалению, это не сработало. Прописал в строку territory= { prec = function() return in_time_interval(8,21) and not xr_conditions.surge_started() and not target:name() == "mar_smart_terrain_1" end },
Игра стартовала успешно. Но в момент спавна квестового сквада бандитов при проверке квеста на Кордоне
[cut=Сквад][esc_b2_bandit_invaders_squad]:online_offline_group faction = bandit relationship = enemy npc_random = sim_default_bandit_0, sim_default_bandit_1, sim_default_bandit_2 npc_in_squad = 3, 6 target_smart = esc_smart_terrain_2 story_id = esc_b2_bandit_invaders_squad spot = quest_enemy_squad_1_location [/cut]
по функции
[cut=функция]function esc_b2_bandit_invaders_squad_spawn(actor,npc) local esc_b2_bandit_invaders_squad_spawn=math.random(1,3) if esc_b2_bandit_invaders_squad_spawn==1 then create_force("esc_b2_bandit_invaders_squad",-96.980690002441,-8.8172283172607,8.2377262115479,167483,1734) end if esc_b2_bandit_invaders_squad_spawn==2 then create_force("esc_b2_bandit_invaders_squad",24.09771156311,-9.8008232116699,-31.188014984131,333001,1787) end if esc_b2_bandit_invaders_squad_spawn==3 then create_force("esc_b2_bandit_invaders_squad",-5.9614119529724,-17.701292037964,-160.36766052246,293069,1797) end end[/cut]
поймал жука с прямым указанием на sim_board
[cut=лог]FATAL ERROR [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 : ...iles 1\Зов Припяти\gamedata\scripts\sim_board.script:42: attempt to index global 'target' (a nil value)
stack trace:[/cut]
Сквад в момент спавна находится в онлайне. Смарт mar_smart_terrain_1 вообще находился на другой локации. После восстановления первоначального sim_board вылетов не было.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
| denis2000 | Дата: Ср, 15.10.2014, 21:20 | Сообщение # 500 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| sergej5500, Ну так если ты скваду прописал: Код target_smart = esc_smart_terrain_2 и отключил ему симуляцию: то чего он пойдет на смарт mar_smart_terrain_1? И вообще локация задействована в симуляции? И что у тебя в 42 строке target:name() == "mar_smart_terrain_1"?
Попробуй прописать prec = function(squad, target) - это передест параметры squad и target в функцию прекондишена.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| sergej5500 | Дата: Ср, 15.10.2014, 21:32 | Сообщение # 501 |
 Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| denis2000,
Сквад esc_b2_bandit_invaders_squad квестовый. У него задача занять Деревню Новичков (esc_smart_terrain_2) на Кордоне. С симуляцией на Кордоне проблем нет. Сталкеры ходят туда-сюда. Звери бегают.
Смарт mar_smart_terrain_1 находится на Болотах. Это база ЧН. У меня есть желание закрыть этот смарт для посещения обычными симуляционными сквадами бандитов. Желательно, чтобы сталкеры на этот смарт заходили.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
| denis2000 | Дата: Ср, 15.10.2014, 22:02 | Сообщение # 502 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Цитата sergej5500 (  ) С симуляцией на Кордоне проблем нет. Сталкеры ходят туда-сюда. Звери бегают. В смысле именно между смартами под симуляцией ходят? Цитата sergej5500 (  ) Смарт mar_smart_terrain_1 находится на Болотах. Это база ЧН. Это старая база ЧН? Она хоть сеткой с основной локацией связана, но попасть на нее НПС из остальной части локации не смогут - упруться в забор. Цитата denis2000 (  ) Попробуй прописать prec = function(squad, target) - это передест параметры squad и target в функцию прекондишена.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| slick585 | Дата: Пт, 24.10.2014, 21:22 | Сообщение # 503 |
 Боец резерва
Пользователи
Сообщений: 448
| Народ, возможно кто либо уже задавал такой вопрос но я не нашел.... Вообщем... Как добавить возможность модификации броне в зп? Прост стоит мод и некоторые броньки модифицировать не нельзя...
КМБ Урок 30. denis2000
|
| |
|
| Эти 0 пользователя(ей) поблагодарили slick585 за это полезное сообщение: |
|
|
| sergej5500 | Дата: Ср, 05.11.2014, 11:24 | Сообщение # 504 |
 Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Доброе утро.
Создаю на Кордоне аномальные зоны. Заинтересовал такой момент.
[cut=Аномалия][anomal_zone] layers_count = 3 respawn_tries = 1 max_artefacts = 3 ;applying_force_xz = 200 ;applying_force_y = 400 artefacts = af_blood, af_mincer_meat, af_soul, af_fuzz_kolobok, af_baloon, af_glass start_artefact = af_blood coeff = 3, 3, 2, 2, 1, 1 artefact_ways = zat_b39_af_way, zat_b39_af_way_2, zat_b39_af_way_3 field_name = zat_b39_zone_field_acidic_weak, zat_b39_zone_field_acidic_average, zat_b39_zone_field_acidic_strong, zat_b39_zone_field_psychic_average
[mines_core] zat_b39_zone_mine_acidic_weak zat_b39_zone_mine_acidic_weak_0000 zat_b39_zone_mine_acidic_weak_0001 zat_b39_zone_mine_acidic_weak_0002 zat_b39_zone_mine_acidic_weak_0003 zat_b39_zone_mine_acidic_weak_0004 zat_b39_zone_mine_acidic_weak_0005 zat_b39_zone_mine_acidic_weak_0006 zat_b39_zone_mine_acidic_weak_0007 zat_b39_zone_mine_acidic_weak_0008 zat_b39_zone_mine_acidic_weak_0009 zat_b39_zone_mine_acidic_weak_0010 zat_b39_zone_mine_acidic_weak_0011 zat_b39_zone_mine_acidic_weak_0012 zat_b39_zone_mine_acidic_weak_0013 zat_b39_zone_mine_acidic_weak_0014 zat_b39_zone_mine_acidic_weak_0015 zat_b39_zone_mine_acidic_weak_0016
[layer_1] mines_section = mines_layer_1
[mines_layer_1]:mines_core zat_b39_zone_mine_acidic_weak_0017 zat_b39_zone_mine_acidic_weak_0018 zat_b39_zone_mine_acidic_weak_0023 zat_b39_zone_mine_acidic_weak_0024 zat_b39_zone_mine_acidic_weak_0027 zat_b39_zone_mine_acidic_weak_0029
[layer_2] mines_section = mines_layer_2
[mines_layer_2]:mines_core zat_b39_zone_mine_acidic_weak_0022 zat_b39_zone_mine_acidic_weak_0026 zat_b39_zone_mine_acidic_weak_0028 zat_b39_zone_mine_acidic_weak_0030 zat_b39_zone_mine_acidic_weak_0031
[layer_3] mines_section = mines_layer_3
[mines_layer_3]:mines_core zat_b39_zone_mine_acidic_weak_0019 zat_b39_zone_mine_acidic_weak_0020 zat_b39_zone_mine_acidic_weak_0021 zat_b39_zone_mine_acidic_weak_0025 [/cut]
На что влияет параметр respawn_tries? Для чего аномалии поделены на секции mines_layer_1, mines_layer_2 и т.д.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
| denis2000 | Дата: Ср, 05.11.2014, 19:25 | Сообщение # 505 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| respawn_tries - это по моему количество одновременно появляющихся артефактов за один спавн (может быть индивидуальным для каждого слоя), max_artefacts - максимальное количество артефактов. Слои для того чтобы менялась конфигурация аномального поля после выбросов, в каждый момент времени активен только один слой, после выброса аномалии активного слоя выключаются и включаются аномалии другого слоя.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| sergej5500 | Дата: Вс, 09.11.2014, 11:45 | Сообщение # 506 |
 Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Добрый день.
В СГМ для квеста заминировал подход к определенному объекту.
[cut=Мина] [2299]
; cse_abstract properties section_name = zone_mine_field name = mar_mine_field_1 position = 171.569320678711, 8.96681976318359, 585.191345214844 direction = 0, 0, 0 id = 65535 version = 128 script_version = 12 spawn_id = 5950
; cse_alife_object properties game_vertex_id = 2099 distance = 53.899998 level_vertex_id = 237533 object_flags = 0xffffff3e
; cse_shape properties shapes = 1 shape_0:type = sphere shape_0:offset = 0,0,0 shape_0:radius = 3.5
; cse_alife_space_restrictor properties restrictor_type = 3
; cse_alife_custom_zone properties
; cse_alife_anomalous_zone properties offline_interactive_radius = 50 artefact_spawn_count = 32 artefact_position_offset = 0x5720
; se_zone_anom properties
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;[/cut]
Вроде все нормально. Мины отображаются на сканере мин. Начал тестирование.
Заспавнил на минах сквад кабанов. Мина взорвалась. Кабаны подохли. Но следующий сквад кабанов уже гуляет свободно. Как сделать мину "многоразовой"?
[cut=Мина][zone_mine_field]:zone_base GroupControlSection = spawn_group_zone $spawn = "zones\scenes\mine_field" $prefetch = 16 $def_sphere = 1.5 class = Z_MBALD hit_impulse_scale = 0.15;0.5 ;0.1 effective_radius = 1.5 ;размер радиуса в процентах от оригинального, где действует зона
ef_anomaly_type = 1 ef_weapon_type = 13
;postprocess = mosquito_bald
hit_type = explosion
;----------- Anomaly settings ----------------------- max_start_power = 11.00 attenuation = 1
idle_particles = ;static\mine blowout_particles = explosions\explosion_mine blowout_once = true
;hit_small_particles = ;hit_big_particles = ;idle_small_particles = ;idle_big_particles = ;entrance_small_particles = ;entrance_big_particles =
;idle_sound = blowout_sound = weapons\f1_explode ;во время выброса(удара) в центре аномалии hit_sound = anomaly\anomaly_gravy_hit1 ;на персонаже, когда тот получает хит entrance_sound = weapons\mine_on ;при попадании объекта в аномалию
awaking_time = 50 blowout_time = 10000 accamulate_time = 4000 ;200
blowout_light_time = 150 blowout_explosion_time = 150 blowout_particles_time = 150 blowout_sound_time = 150
disable_time = -1 ; 5000 ;время игнорирования неживого объекта в зоне (-1 если не нужно) disable_time_small = -1 ;время игнорирования маленького неживого объекта в зоне (-1 если не нужно) disable_idle_time = -1 ;время отключения idle партиклов
ignore_nonalive = false ignore_small = true ignore_artefacts = true
blowout_light = on light_color = 0.9,0.9,0.8 light_range = 30.0 light_time = 0.3;0.35 light_height = 1.5 ;подъем источника света на высоту
idle_light = off
shape_transp_color = 255, 0, 0, 60 shape_edge_color = 32, 32, 32, 255
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ветер blowout_wind = on
blowout_wind_time_start = 0 blowout_wind_time_peak = 5500 blowout_wind_time_end = 10000 blowout_wind_power = 0.5 ;сила поднимаего ветра (от 0 до 1), в момент blowout_wind_time_peak [/cut]
И ещё вопрос. Взорвавшиеся мины продолжают отображаться на карте. То есть они остаются в игре.
В оригинальном ЗП мины используются на Юпитере. После осмотра вертолета на минном поле спавнятся звери. Там сработавшие мины точно удаляются с карты. Или там есть рестриктор, убирающий мины?
Сообщение отредактировал sergej5500 - Вс, 09.11.2014, 11:46 |
| |
|
| Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
| ZLURov | Дата: Ср, 03.12.2014, 19:36 | Сообщение # 507 |
|
Отмычка
Пользователи
Сообщений: 26
| Подскажите кто знает. Как включить звук 5.1 в игре? Играю на Win7 64 SP1 В ТЧ помогает "-dsound" в свойствах ярлыка. А вот с ЗП и ЧН такое не срабатывает. Патчи соят последние звукавуха реалтек
|
| |
|
| Эти 0 пользователя(ей) поблагодарили ZLURov за это полезное сообщение: |
|
|
| Сахар | Дата: Пт, 05.12.2014, 06:45 | Сообщение # 508 |
 Гражданский
Пользователи
Сообщений: 2
| Всем привет. Попробовал сегодня покопаться в оружейных конфигах и создал «уникальный» ствол. Код [m3_wpn_abakan_1]:wpn_abakan installed_upgrades = up_gr_fifthab_abakan P.S модификация позволяет использовать подствольник. Прописал НПС. Код m3_wpn_abakan_1 = 1, scope launcher \n Подхожу к тому НПС а у него на стволе отсутствует подствольный гранатомёт.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Сахар за это полезное сообщение: |
|
|
| makdm | Дата: Пт, 05.12.2014, 09:56 | Сообщение # 509 |
 Рожденный в СССР
Разработчики
Сообщений: 1294
| Сахар, не ту секцию указал в предустановленных апгрейдах.
Так попробуй
Код [m3_wpn_abakan_1]:wpn_abakan installed_upgrades = up_fiftha_abakan
Между scope launcher должна быть "запятая".
P.S. Сам ствол должен быть прописан в файле inventory_upgrades.ltx Правда не уверен, что при спавне НПС движок установит подствольник на оружие.
Терпение...... И все получится!
Сообщение отредактировал makdm - Пт, 05.12.2014, 10:35 |
| |
|
| Эти 0 пользователя(ей) поблагодарили makdm за это полезное сообщение: |
|
|
| TARANOV | Дата: Чт, 18.12.2014, 16:19 | Сообщение # 510 |
|
Удаленные
| Товариши! Нужна ваша помощь. Весь рунет обгуглил. В Call of Pripyat - слишком тихий звук выстрелов из любого оружия относительно окружающего мира. Атмосфера не та, знаете ли, когда гопари за 100 метров громче матерятся чем автомат ГГ стреляет. Чисто небо - работает без таких проблем. Пробовал разные моды и дистрибутивы. Не помогло. HELP.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили TARANOV за это полезное сообщение: |
|
|
|