[CoP] Ковыряемся в файлах - Страница 324 - Скрипты / конфиги / движок - AMK Team
Перейти к контенту

[CoP] Ковыряемся в файлах


Рекомендуемые сообщения

 Опишите, пожалуйста, полную картину создания укрытий от выбросов. В видеоуроках Непряхина есть только та часть которая в сдк (спейс-рестриктор+шейп+точки сбора нпс в самом укрытии), а в каких файлах и что вносить/изменять, к сожалению нет, как и описания действий нпс чтоб они бежали в укрытие. @BoBaH_671 летом затрагивал эту тему, но на форуме я так и не нашел ответа, как на ютубе и на Вики.

Изменено пользователем Серый Волк

@tatarinrafa, работой детектора управляет движок сталкера. В конфигах можно прописать, что конкретно "видит" детектор.

То есть ни каких дополнительных действий в скриптах к ним нет? ладно, спасибо.

 

 

То есть ни каких дополнительных действий в скриптах к ним нет?

Ну так добавь - script_binding = ля-ля-ля.init + класс биндера никто вроде не отменял...

 

 

 

а в каких файлах и что вносить/изменять, к сожалению нет

Плохо искал, в "Уроках по модостроению" - 2-я страница...

  • Спасибо 1

@UnLoaded, Спасибо, там не искал, я думал там только по ТЧ...

и кстати, там написано "вносим изменения в "алл.спавн" - если я с сдк работаю, мне всё равно надо его конвертером распаковывать, а потом тем же макаром запаковать, или есть другой вариант?

 

 

...если я с сдк работаю... или есть другой вариант?

Ну и как ты с СДК работаешь, если спрашиваешь про другие варианты ?

Ну и как ты с СДК работаешь

ну так я в процессе обучения, несколько дней ковыряюсь... потому и спрашиваю. Там ведь не написано, что вот это:

"Переходим к all.spawn - создаем секцию укрытия в файле alife_escape.ltx и Создаем точки пути по количеству мест в укрытии в файле way_escape.ltx"

можно не вписывать в ал.спаун а в сдк поставить...

Изменено пользователем Серый Волк

@Серый Волк

Ну извини, я думал что ты уже с такими мелочами разобрался(957 сообщений)...

Тогда на всякий случай: после правки\добавления спавн-объектов и любых путей в СДК необходимо сделать MakeGame, затем прогнать xrAI с ключом -s. Получишь новый all.spawn, хотя для CoP может быть не так как в ТЧ.

  • Спасибо 1

@UnLoaded, да ничё, я не обидчивый :grin2: .

 

Возникла дилемма.

В СДК по уроку Непряхина поставил аномальную зону, создал файл аномальной зоны, прописал ее название в пда.

Создал укрытие от выброса по уроку от Nuklia, по ссылке выше.

В СДК скомпилил без проблем, дальше тоже компиляция без эксцессов, а вот при запуске игры - ловлю вылет

 

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   : ...ов Припяти\gamedata\scripts\bind_anomaly_zone.script:17: attempt to index field 'ini' (a nil value)
 

stack trace:

 

поскольку файлы по укрытию я уже убрал из геймдаты, то я понимаю что проблема в аномальной зоне, но найти ее пока для меня проблематично, соответственно обращаюсь к вам, подскажите плиз, где я накосячил.

в геймдате по ней лежат только scripts\pda.script и файл аномальной зоны лежит configs\scripts\hoz_dvor_anomal_zone_1.ltx

 

[anomal_zone]hoz_dvor_anomal_zone_1
layers_count = 3
respawn_tries = 1
max_artefacts = 2
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_medusa, af_cristall_flower, af_night_star, af_vyvert, af_gravi, af_gold_fish
start_artefact = af_night_star
coeff = 3, 3, 2, 2, 1, 1
artefact_ways = hoz_dvor_af_way, hoz_dvor_af_way_2, hoz_dvor_af_way_3
field_name = hoz_dvor_zone_mine_electric_weak

[mines_core]


[layer_1]
mines_section = mines_layer_1

[mines_layer_1]:mines_core
hoz_dvor_zone_mine_electric_weak
hoz_dvor_zone_mine_electric_weak_0000
hoz_dvor_zone_mine_electric_weak_0001
hoz_dvor_zone_mine_electric_weak_0002
hoz_dvor_zone_mine_electric_weak_0003
hoz_dvor_zone_mine_electric_weak_0004
hoz_dvor_zone_mine_electric_weak_0005
hoz_dvor_zone_mine_electric_weak_0006
hoz_dvor_zone_mine_electric_weak_0007
hoz_dvor_zone_mine_electric_weak_0008
hoz_dvor_zone_mine_electric_weak_0009

[layer_2]
mines_section = mines_layer_2

[mines_layer_2]:mines_core
hoz_dvor_zone_mine_electric_average
hoz_dvor_zone_mine_electric_average_0000
hoz_dvor_zone_mine_electric_average_0001
hoz_dvor_zone_mine_electric_average_0002
hoz_dvor_zone_mine_electric_average_0003
hoz_dvor_zone_mine_electric_average_0004

[layer_3]
mines_section = mines_layer_3

[mines_layer_3]:mines_core
hoz_dvor_zone_mine_electric_strong

 

Изменено пользователем Серый Волк

 

 

но найти ее пока для меня проблематично

Учись\внимательнее читать\читай логи ошибок: у тебя четко написано, что проблема в bind_anomaly_zone.script, строка 17. Выложи или часть скрипта, чтоб строка 17(+- 10строк) были видны, или весь bind_anomaly_zone.script. Глянем, подскажем...

  • Спасибо 1

@Серый Волк, ты в СДК, в кастом-дате аномальной зоны прописал путь к конфигу hoz_dvor_anomal_zone_1.ltx?

Аномальное поле hoz_dvor_zone_mine_electric_weak и все аномалии прописанные в твоем конфиге присутствуют на уровне?

 

Да и в файле hoz_dvor_anomal_zone_1.ltx:

[anomal_zone]hoz_dvor_anomal_zone_1 - поставь знак комментирования строки (;) -

[anomal_zone];hoz_dvor_anomal_zone_1


Да и еще - пути для артефактов есть в аномальной зоне?

  • Спасибо 1
в СДК, в кастом-дате аномальной зоны прописал путь к конфигу hoz_dvor_anomal_zone_1.ltx?

именно оно, спасибо. батарея на буке села, не успел сохранить, а потом забыл. В остальном - запустилось, работает, но почему-то только первый ряд аномалий hoz_dvor_zone_mine_electric_weak в игре есть, а остальных hoz_dvor_zone_mine_electric_average (внутренний круг) и hoz_dvor_zone_mine_electric_strong (в центре), внутри круга нет.

 

14607710_m.jpg

 

 

и еще один момент: создал укрытие от выброса по ссылке выше (но там нет по сдк ничего), подскажите, что писать в кастом-дате спейс-рестриктора укрытия?

Изменено пользователем Серый Волк

 

 

создал укрытие от выброса по ссылке выше (но там нет по сдк ничего), подскажите, что писать в кастом-дате спейс-рестриктора укрытия?

Ничего вписывать в кастом дату не надо. Просто назови его, поставь тип NOT A restrictor и добавь его имя в surge_manager.ltx по аналогии с другими укрытиями.

  • Спасибо 1

Ранее был известен под ником BoBaH_671.

 

 

зона в которой убирается оружие по той же схеме или нет? и в каких файлах она прописывается?

Тип NONE default restrictor, в кастом дату:

[logic]
active = sr_no_weapon

[sr_no_weapon]
  • Спасибо 1

Ранее был известен под ником BoBaH_671.

Такой вот вопрос по музыке - если использовать ogg с частотой дискретизации выше 44100 это как-нибудь скажется на игре отрицательно?Просто я в этом совсем-совсем не шарю,а у нужного мне трека она 48000. Затычку для xrSound сделал, вроде в главном меню не вылетает и проигрывается.

@Серый Волк, там по аномальным полям схема работы такая:

[mines_core] - список аномалий, которые включены постоянно.

[layer_#] - наборы, которые случайно переключаются после выброса.

 

Из этого и исходи.

Когда я играл в "Контракт на хорошую жизнь" у меня случилось это:

Expression : FS.exist(file_name, "$game_spawn$", *m_spawn_name, ".spawn")
Function : CALifeSpawnRegistry::load
File : .\alife_spawn_registry.cpp
Line : 86
Description : Can't find spawn file:
Arguments : mary - autosave

В справочнике этот вылет я не нашёл. Может подскажете, в чём дело?

@Hadzirim Hajad
Насколько я понимаю, не совпадают текущая версия all.spawn с версией all.spawn, при которой делалось сохранение

 

---

 

Был у меня один товарищ Журналист, коего я спавнил скриптом на Янов. Его логика висела на remark'е и no_move = true. Решил переделать, ибо не комильфо.

Выбрал ему место, поставил стульчик и анимпоинт в СДК.

Далее вписал его в смарт Янова - jup_a6.

[exclusive]
...
jup_jurnalist = jupiter\jup_a6_jurnalist.ltx
...

Потом переписал ему логику на боле-менее сносную (но похоже, что нет)

[logic@jup_jurnalist]
suitable = {=check_npc_name(jup_jurnalist)} true
active = animpoint@base
prior = 100

[animpoint@base]
cover_name = jup_a6_animp_jurnalist
avail_animations = animpoint_sit_normal
out_restr = jup_a6_sr_noweap
invulnerable = true 
meet = default_meet
combat_ignore_cond = true 
combat_ignore_keep_when_attacked = true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false

Вписал в simulation.ltx

;;;;;;;;;;;;;;;;;;;;;; FINAL JUPITER ;;;;;;;;;;;;;;;;;;;;;;;;;

[start_position_jupiter]
...
jup_a6_jurnalist_squad = jup_a6
...

Записал его и в simulation_objects_props.ltx

[jup_a6_jurnalist_squad]:default_squad
sim_avail = false

В итоге данный товарищ предпочитает созданному лично для него анимпоинту (jup_a6_animp_jurnalist) другие - у кровати jup_a6_animp_16 и у ящиков jup_a6_animp_17, когда первый занят. Пока что логика (по крайней мере НПС) для меня - темный лес, но полагаю, что она его под необходимый контроль не берет. Не подскажет кто, в чем может быть проблема?


P.S.: Дырявая моя голова, сквад есть, если что:
 

[jup_a6_jurnalist_squad]:online_offline_group
faction = stalker
npc = jup_jurnalist
target_smart = jup_a6
spawn_point = jup_a6_spawn_point
story_id = jup_a6_jurnalist_squad
Изменено пользователем Rozben
  • Полезно 1

ROZBEN.gif

Rozben,

Дабы не плодить лишних файлов для нпс-статистов:

 
\jup_a6.ltx
 
[exclusive]
...
jup_a6_jurnalist = jupiter\jup_a6_logic.ltx
 
---
 
\jup_a6_logic.ltx (на основе ковера Коряги)
...
[logic@jup_a6_jurnalist]
active = animpoint@jup_a6_jurnalist
suitable = {=check_npc_name(jup_a6_jurnalist) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 200
 
[animpoint@jup_a6_jurnalist]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_jurnalist
on_info = {=npc_in_zone(jup_surge_hide_a6)} animpoint@jup_a6_jurnalist_reached
 
[animpoint@jup_a6_jurnalist_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_jurnalist
 
---
 
avail_animations = animpoint_sit_normal ; это нужно для использования другой анимки (кат-сцены), например ковер сидячий (loopholes: sit), а в игре будет лежать (avail_animations = zat_b106_wounded_idle, спец анимки из state_mgr_scenario.script)
 
Сам ковер должен находиться на аи-сетке и иметь точные lv/gv-вертексы (во избежании при переходе оффлайн/онлайн, перемещения нпс в начало lv/gv для текущей карты, для Юпитера это район плавней)
 
В составе зп-сдк, есть папка help (куча инфы), там есть справка по логике (Gamedesigner_education.pdf).

Такой вот вопрос по музыке - если использовать ogg с частотой дискретизации выше 44100 это как-нибудь скажется на игре отрицательно?Просто я в этом совсем-совсем не шарю,а у нужного мне трека она 48000. Затычку для xrSound сделал, вроде в главном меню не вылетает и проигрывается.

Судя по документам я в этом большой специалист, но на деле нет. Эта частота вроде вообще нужна только для ацп, в цифре битрейт у руля, как-то пару недель был момент я играл с некоторыми часто используемым звуками по 48Кгц, в игре самой ничего не происходило.

 

Иными словами, чем больше частота, тем больше вес файла, потому-что сжатие будет меньшим, это если мы здесь рассматриваем качество как константу. Если ты увеличишь частоту и не поменяешь битрейт ну понятно что будет. Есть некоторые звуки для которых 48 реально может быть много(я их не знаю, надо слушать). Вроде верха там подтянешь на пару килогерц, но честно сказать профан я в этом, хоть и экзамен "хорошо", но то больше заслуга коньяка.

 

И еще сюда же стоит добавить, что SDK декодер это цирк на батуте, для таких, например, как я, его декодер только вред несет, потому что мне в "сырой" формат приходится декодировать руками, что ведет к потере качества, а потом еще раз кодировать в другой формат, соответственно какой-нибудь mp3 на выходе получаем совсем не тот который мы брали на входе, это вот конечно печально.

Изменено пользователем Карлан

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...