Перейти к содержанию

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

 
 
28 минут назад, GameCube сказал:

Kion тоже не понимаю. Ошибки есть? Может неправильно что прописали. Или проблема в другом. Ещё какие-нибудь файлы до вылета изменяли?

GameCube Предполагаю, что неправильно прописал логику вражеских НПС, так как лог направляет на строку в файле xr_conditions, где прописана репутация актёра к НПС

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте, впервые сделал смарт-террейн (базу). Заспавнил механика с помощью сквада, спавнится нормально, но при попытке прописать ему логику через [exclusive], получаю вылет.
 

Спойлер

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ...k.e.r. call of pripyat\gamedata\scripts\utils.script:469: bad argument #1 to 'gsub' (string expected, got nil)

Не знаю нужно или нет, но вот логика смарта.

Спойлер

[smart_terrain];esc_a1_smart_stalker_base
squad_id = 1
def_restr = esc_def_noweap_base_stalker
safe_restr = esc_def_noweap_base_stalker
smart_control = smart_control
respawn_params = respawn@esc_smart_stalker_base
max_population = 6
arrive_dist = 65

[respawn@esc_smart_stalker_base]
spawn_stalker@advanced
spawn_stalker@mechanic

[spawn_stalker@advanced]
spawn_squads = stalker_sim_squad_advanced, stalker_sim_squad_novice
spawn_num = 2

[spawn_stalker@mechanic]
spawn_squads = esc_mechanic_stalker_base_squad
spawn_num = 1

[smart_control]
noweap_zone = esc_def_noweap_base_stalker
ignore_zone = esc_def_noweap_base_stalker
alarm_start_sound = zat_a2_base_alarm
alarm_stop_sound = zat_a2_base_relax

[exclusive]
esc_mechanic_dn = escape\esc_mechanic.ltx


𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

ух, чувствую много шишек набью пока свою поделку разрабатывать буду)

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

первый урок

второй урок

вот как выглядит файл логики в финальном варианте(т.е после урока от sheva):

Спойлер

[logic@predbannik_pantera]
active = animpoint@predbannik_pantera
suitable = {=check_npc_name(predbannik_pantera)}true
prior = 200
level_spot = mechanic


[animpoint@predbannik_pantera]
use_camp = false
cover_name = predbannik_exclusive_smart_animpoint
avail_animations = stay_wall
 

и вот как выглядела логика после первого урока

Спойлер

[logic@predbannik_pantera]
active = animpoint@predbannik_pantera
suitable = {=check_npc_name(predbannik_pantera)}true
prior = 200
level_spot = mechanic


[animpoint@predbannik_pantera]
use_camp = false
cover_name = predbannik_exclusive_smart_animpoint
meet = no_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
avail_animations = stay_wall

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

Изменено пользователем АлеБард
убрал одну строчку которая случайно продублировалась при копировании

хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард  В логике должен быть: loopholes = имя анимации аниипоинта. Например      loophples = animpoint_sit_low.

 Вроде так

 

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

𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

FalkineIsaku нигде не нашел ничего по этому поводу, но так уж и быть - прописал. не помогло...


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард попробуй посмотреть в логике нпс с затона, лучше со Скадовска, если не ошибаюсь, то название логики Бороды zat_a2_barmen. Я взял его логику анимпоинта и настроил под себя. Все работает


𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард Попробуй такую. Где нужно переименуй.
НПС у тебя становится эксклюзивом? Просто если он у тебя им не стал(т.е как обычный сталкер заспавнился), то проблема в другом месте.

[logic@mart_stalker_tech]
suitable = {=check_npc_name(jup_b217_stalker_tech)} true
trade = misc\trade\only_use\base_upgrades.ltx
prior = 200
active = animpoint@tech
can_select_weapon = false
level_spot = barmen

[animpoint@tech]
cover_name = jup_smart_tech_yanov
avail_animations = animpoint_sit_normal
use_camp = false
meet = meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
;out_restr = jup_space_restrictor_noweapon
invulnerable = true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false

[meet]
close_snd_hello = jup_b217_stalker_tech_greeting
close_snd_bye 	= jup_b217_stalker_tech_farewell
close_anim 		= nil
close_victim 	= nil
far_anim 		= nil
far_victim 		= nil
close_distance  = 0
far_distance 	= 0
close_snd_distance = 3
use = {=actor_enemy} false, {=dist_to_actor_le(3)} true, false
snd_on_use = {!dist_to_actor_le(3)} nil
allow_break = false
meet_on_talking = false

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте,я добавил сны по гайду Шевы с ютуба,и видео файлы из оригинала игры при сне отображаются корректно,а то видео которое я добавил(скачал с ютуба и перефоматировал в ogv формат отображается чёрным экраном.Я проверял видео находится в нужной папке

Секция со сновидениями в файле game_tutorials выглядит так:

    <dream_sleep_tutor>
        <play_each_item>1</play_each_item>
        <global_wnd x="0" y="0" width="1280" height="720">
            <auto_static x="0" y="0" width="1024" height="768" stretch="1">
                <window_name>back</window_name>
                <texture>intro\intro_back</texture>
            </auto_static>
        </global_wnd>

        <item>
            <function_check_start>dream_sleep.drem_sleep_function_1</function_check_start>
            <pause_state>on</pause_state>

            <main_wnd/>
        </item>

        <item type="video">
            <sound>characters_voice\scenario\video\outro</sound>
            <function_check_start>dream_sleep.drem_sleep_function_2</function_check_start>
            <pause_state>on</pause_state>
            <can_be_stopped>on</can_be_stopped>
            <video_wnd x="0" y="0" width="1280" height="720" stretch="1">
                <texture x="0" y="1" width="512" height="286">intro\outro_half</texture>
            </video_wnd>
        </item>

        <item type="video">
            <sound>characters_voice\scenario\video\intro</sound>
            <function_check_start>dream_sleep.drem_sleep_function_3</function_check_start>
            <pause_state>on</pause_state>
            <can_be_stopped>on</can_be_stopped>
            <video_wnd x="0" y="0" width="1280" height="720" stretch="1">
                <texture x="0" y="1" width="512" height="286">intro\intro_half</texture>
            </video_wnd>
        </item>
        
        <item type="video">
            <sound>characters_voice\scenario\video\sleep_sound_vibros</sound>
            <function_check_start>dream_sleep.drem_sleep_function_4</function_check_start>
            <pause_state>on</pause_state>
            <can_be_stopped>on</can_be_stopped>
            <video_wnd x="0" y="0" width="1280" height="720" stretch="1">
                <texture x="0" y="1" width="512" height="286">intro\aes_sky_red</texture>
            </video_wnd>
        </item>    

        <item type="video">
            <sound>characters_voice\scenario\video\joke</sound>
            <function_check_start>dream_sleep.drem_sleep_function_5</function_check_start>
            <pause_state>on</pause_state>
            <can_be_stopped>on</can_be_stopped>
            <video_wnd x="0" y="0" width="1280" height="720" stretch="1">
                <texture x="0" y="1" width="512" height="286">intro\black_stalker_joke</texture>
            </video_wnd>
        </item>
    </dream_sleep_tutor>

Заранее спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
48 минут назад, АлеБард сказал:

 

  логика 1 (Скрыть контент)


suitable = {=check_npc_name(predbannik_pantera)}true

  логика 2 (Скрыть контент)

suitable = {=check_npc_name(predbannik_pantera)} true

 

Кстати, ты там пробел не поставил, может из-за этого?


𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Belka_mod 

Спойлер

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
18 минут назад, Vodka сказал:

НПС у тебя становится эксклюзивом?

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


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард У тебя нпс заспавнен через смарт-террейн или алл.спавн?


𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

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


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард обычные нпс это обычные нпс.
Эксклюзивные это те, которые имеют логику. Пропиши ему trade = как в логике выше(из оригинала возьми), и проверь, подхватит ли он торговлю. Если он торгует гармошками с батонами - значит не подхватил. Если этого не произошло - значит он заспавнился как обычный нпс, а тут уже проблема не в логике. Тебе придётся скинуть и логику смарта, и то что у тебя в сквад дескре написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, АлеБард сказал:

Вот урок по заселению эсклюзивного НПСа

Вот урок по заселению эсклюзивного НПСа

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Vodka хм, и правда не подхватил...

Спойлер

[smart_terrain]
squad_id = 1
max_population = 1
arrive_dist = 100

[exclusive]
predbannik_pantera = predbannik\predbannik_pantera

Спойлер

; Здесь содержатся дескрипшены сквадов, которые потом можно создавать используя спец функции.

[predbannik_pantera_squad]:online_offline_group
faction = stalker
npc = predbannik_pantera
target_smart = predbannik_exclusive_smart
;spawn_point = 
story_id = predbannik_pantera_squad

 


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

АлеБард У тебя нпс зарегистрирован в spawn_sections?


𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

FalkineIsaku да

Спойлер

[predbannik_pantera]:stalker
$spawn                     = "respawn\predbannik_pantera"
character_profile     = predbannik_pantera
spec_rank = veteran
community = stalker
story_id = predbannik_pantera

 


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
9 минут назад, АлеБард сказал:

АлеБард 


[exclusive]
predbannik_pantera = predbannik\predbannik_pantera

 

predbannik_pantera = predbannik\predbannik_pantera.ltx

.ltx на конце забыли

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Emmis после добавления .ltx проблема не решилась 


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
4 часа назад, АлеБард сказал:

ух, чувствую много шишек набью пока свою поделку разрабатывать буду)

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

первый урок

второй урок

вот как выглядит файл логики в финальном варианте(т.е после урока от sheva):

  логика 1 (Показать контент)

[logic@predbannik_pantera]
active = animpoint@predbannik_pantera
suitable = {=check_npc_name(predbannik_pantera)}true
prior = 200
level_spot = mechanic


[animpoint@predbannik_pantera]
use_camp = false
cover_name = predbannik_exclusive_smart_animpoint
avail_animations = stay_wall
 

и вот как выглядела логика после первого урока

  логика 2 (Скрыть контент)

[logic@predbannik_pantera]
active = animpoint@predbannik_pantera
suitable = {=check_npc_name(predbannik_pantera)}true
prior = 200
level_spot = mechanic


[animpoint@predbannik_pantera]
use_camp = false
cover_name = predbannik_exclusive_smart_animpoint
meet = no_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
avail_animations = stay_wall

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

У тебя в  2 логике cover_name = predbannik_exclusive_smart_animpoint не правильно написано должно быть написано во так cover_name = predbannik_pantera_animpoint

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
6 минут назад, Daniil1989 сказал:

 должно быть написано во так cover_name = predbannik_pantera_animpoint

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


хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, АлеБард сказал:

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

А точно какая проблема у тебя

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 минуту назад, Daniil1989 сказал:

А точно какая проблема у тебя

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

Изменено пользователем АлеБард

хочешь обмануть человека - скажи ему правду.  хочешь обмануть меня - скажи... блин, в голове звучало лучше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, АлеБард сказал:

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

Тебе ну жен чотобы он был эксклюзивным тогда нуждно написать в логике 

Для Торговца:

level_spot = trader

trade = misc\trade\trade_Имя нпс у которого есть файл торговли.ltx

Для Механика:

level_spot = mechanic

Для Медика:

level_spot = medic

trade = misc\trade\trade_jup_b202_stalker_medic.ltx

Может это видио тебе поможет

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   1 пользователь онлайн