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

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

 
 

Mindallius Пробуйте пустую логику рестриктора zat_b215_logic_jupiter.ltx:
 

[logic]
active = sr_idle@nil

[sr_idle@nil]

 


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

Все добра, вопрос такого плана, в логике нпс прописываю  use = false , а он все равно открыт для диалога, где я мог накосячить или что-то упустить.

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


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

Товарищи, вопрос. У меня есть нпс, три анимации. Как мне сделать так, чтобы нпс ходил циклично по этим поинтам, , на каждом из этих трёх поинтов он останавливался на какое-то время и проигрывалась определённая анимация на определённом поинте? Идея была, но я тупой, и изначально делал не так, а как надо - не знаю. вот схемка:

Спойлер

поинт1_walk ---> поинт1_look ("wp00|p=100|t=10000") ---> поинт2_walk ---> поинт2_look ("wp00|p=100|t=10000") ---> поинт3_walk ---> поинт3_look ("wp00|p=100|t=10000") ---> заново.

А в логике это нпс было так:

Спойлер

[logic@polkovnik_skpp_1]
active = walker@polkovnik_skpp_1
suitable = {=check_npc_name(polkovnik_skpp)} true
prior = 200

[walker@polkovnik_skpp_1]
path_walk = polkovnik_walk
path_look = polkovnik_look
def_state_standing = stoop_no_weap
on_info = nil walker@polkovnik_skpp_2
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[walker@polkovnik_skpp_2]
path_walk = polkovnik_2_walk
path_look = polkovnik_2_look
def_state_standing = stoop_no_weap
on_info = nil walker@polkovnik_skpp_3
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[walker@polkovnik_skpp_3]
path_walk = polkovnik_3_walk
path_look = polkovnik_3_look
def_state_standing = guard_chasovoy
on_info = nil walker@polkovnik_skpp_1
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[animpoint@polkovnik_skpp_1]
cover_name = esc_skpp_baze_polkovnik_animpoint
on_info = {=is_day} walker@polkovnik_skpp_1   

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

 


Дополнено 50 минуты спустя
1 час назад, stalker032 сказал:

Товарищи, вопрос. У меня есть нпс, три анимации. Как мне сделать так, чтобы нпс ходил циклично по этим поинтам, , на каждом из этих трёх поинтов он останавливался на какое-то время и проигрывалась определённая анимация на определённом поинте? Идея была, но я тупой, и изначально делал не так, а как надо - не знаю. вот схемка:

  схема (Показать контент)

поинт1_walk ---> поинт1_look ("wp00|p=100|t=10000") ---> поинт2_walk ---> поинт2_look ("wp00|p=100|t=10000") ---> поинт3_walk ---> поинт3_look ("wp00|p=100|t=10000") ---> заново.

А в логике это нпс было так:

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

[logic@polkovnik_skpp_1]
active = walker@polkovnik_skpp_1
suitable = {=check_npc_name(polkovnik_skpp)} true
prior = 200

[walker@polkovnik_skpp_1]
path_walk = polkovnik_walk
path_look = polkovnik_look
def_state_standing = stoop_no_weap
on_info = nil walker@polkovnik_skpp_2
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[walker@polkovnik_skpp_2]
path_walk = polkovnik_2_walk
path_look = polkovnik_2_look
def_state_standing = stoop_no_weap
on_info = nil walker@polkovnik_skpp_3
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[walker@polkovnik_skpp_3]
path_walk = polkovnik_3_walk
path_look = polkovnik_3_look
def_state_standing = guard_chasovoy
on_info = nil walker@polkovnik_skpp_1
on_info1 = {!is_day} animpoint@polkovnik_skpp_1

[animpoint@polkovnik_skpp_1]
cover_name = esc_skpp_baze_polkovnik_animpoint
on_info = {=is_day} walker@polkovnik_skpp_1   

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

 

проблема решена.

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

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


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

Все добра, вопрос такого плана, в логике нпс прописываю  use = false , а он все равно открыт для диалога, где я мог накосячить или что-то упустить.

Конкретно в meet этого НПС? Попробуй добавить ещё строчку:
meet_on_talking = false

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


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

Конкретно в meet этого НПС?

Да, я всю голову уже сломал.

 

1 час назад, Neptun сказал:

meet_on_talking = false

Спасибо, попробую.


Дополнено 22 минуты спустя

Neptun Я даже пробовал в диалоге выдать инфопоршень, после которого он должен перейти на другую секцию логики, где прописано meet = no_meet и он зараза все равно юзается, я понимаю, что этого не может быть, но это так. Просто в ветре времени при диалоге с одним нпс он должен после заткнуться по замыслу автора, а он все равно остаётся юзабельным и при повторном нажатии говорить происходит вылет.

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


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

Mindallius Пробуйте пустую логику рестриктора zat_b215_logic_jupiter.ltx:
 


[logic]
active = sr_idle@nil

[sr_idle@nil]

 

Работает, но из-за этого все npc на янове ничего не делают, ничего не говорят. Видимо нужно выдать какие-то инфопоршни. Но где и какие?


Дополнено 18 минуты спустя
17 минут назад, Mindallius сказал:

Работает, но из-за этого все npc на янове ничего не делают, ничего не говорят. Видимо нужно выдать какие-то инфопоршни. Но где и какие?

 

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


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

Mindallius посмотри видео урок вырезание сюжета ЗП, там есть урок вырезание катсцены при первом появлении на Юпитере.

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


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

Но где и какие?

Какие нужно выдать вам уже сообщали, где выдать зависит от вас хотите в скрипте, хотите в логике, например в том же рестрикторе:
 

[logic]
active = sr_idle@nil

[sr_idle@nil]
on_info = nil %+jup_first_meet_made +jup_b217_welcome_faded +jup_b217_welcome_guide_talked +jup_b217_pp_end_in_scene +jup_b217_welcome_tech_talked +jup_b217_guide_welcome_end +jup_b217_tech_welcome_end +jup_b217_tech_instruments_start +jup_b217_stalker_tech_met%

А по честному, нужно было бы отредактировать логику и диалоги этих НПС.

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

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

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

Дык, НПС эту логику просто не юзает, так что бесполезно в ней что-то писать, пока НПС к ней не буде подключен.


Дополнено 0 минут спустя
5 минут назад, denis2000 сказал:

хотите в логике, например в том же рестрикторе:

Только в %%
on_info = %+jup_first_meet_made +jup_b217_welcome_faded +jup_b217_welcome_guide_talked +jup_b217_pp_end_in_scene +jup_b217_welcome_tech_talked +jup_b217_guide_welcome_end +jup_b217_tech_welcome_end +jup_b217_tech_instruments_start +jup_b217_stalker_tech_met% nil

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


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

Только в %%

Вот что значит нет практики долгое время...


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

Дык, НПС эту логику просто не юзает, так что бесполезно в ней что-то писать, пока НПС к ней не буде подключен.


Дополнено 0 минут спустя

Только в %%
on_info = %+jup_first_meet_made +jup_b217_welcome_faded +jup_b217_welcome_guide_talked +jup_b217_pp_end_in_scene +jup_b217_welcome_tech_talked +jup_b217_guide_welcome_end +jup_b217_tech_welcome_end +jup_b217_tech_instruments_start +jup_b217_stalker_tech_met% nil

что значит в %%?

это как? скидка в пятерочке?

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


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

Mervin62 Все просто в активных секциях логики НПС нужно вписать:
meet = no_meet
Данная секция (no_meet) дефолтом настроена в скрипте логики встречи xr_meet.script. В частности параметр use = false.

И вообще логику бы стоило привести.

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

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


Ссылка на сообщение
Поделиться на другие сайты
 
В 06.06.2022 в 16:44, Apka сказал:

Текстура бинокля из ганса, scopes.xml, scopes_16.xml и ui_ingame.xml тоже родные гансовские... Куда еще копать?

Если еще не ответили. Текстура сохранена с мип-мапами. Для GUI так текстуры сейвить нельзя. Пересохраняйте без мип-мап.


6 ГБ ОЗУ DDR3 1152 мГц (Разносорт)

Процессор Intel Xeon E5420 4/4 2.7 ГГц (OC)

Видеокарта Gigabyte GeForce GT 240 512 МБ GDDR5 (Samsung) DirectX v10.1

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


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

Дык, НПС эту логику просто не юзает

Так в том то и дело, что юзает, если меняю торговлю на false он во время первого диалога уже не торгует.


Дополнено 7 минуты спустя
1 час назад, denis2000 сказал:

Все просто в активных секциях логики НПС нужно вписать:
meet = no_meet

Так и делаю и все равно надпись говорить активна. Думал что правлю не ту логику, а после проверки правки на торговлю  оказалось, что все правильно и там только одна секция. Как писал выше я с помошью инфопоршня переключал его на другую секцию которую писал сам и там указывал  no_meet,  но потерпел фиаско.

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


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

Mervin62 ОК займусь самоцитированием.

1 час назад, denis2000 сказал:

И вообще логику бы стоило привести.

 


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

denis2000 

1 час назад, denis2000 сказал:

ОК займусь самоцитированием

Я бы с удовольствием, но на данный момент нахожусь на работе и пишу с телефона.

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


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

это как? скидка в пятерочке?

Ну, если у вас такое представление о модостроении, то сложно, конечно, что-либо объяснять. Советую открыть скрипты самой игры и посмотреть, как они пишутся. Вы не поверите, но иной раз даже знак $ используется в коде и вовсе не для бартера деревянных в зелёные.

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


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

Ну, если у вас такое представление о модостроении, то сложно, конечно, что-либо объяснять. Советую открыть скрипты самой игры и посмотреть, как они пишутся. Вы не поверите, но иной раз даже знак $ используется в коде и вовсе не для бартера деревянных в зелёные.

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


Дополнено 3 минуты спустя
2 минуты назад, Mindallius сказал:

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

Кстати,  а какой элемент логики отвечает за пиление досок? 


Дополнено 6 минуты спустя
31 минуту назад, Neptun сказал:

Ну, если у вас такое представление о модостроении, то сложно, конечно, что-либо объяснять. Советую открыть скрипты самой игры и посмотреть, как они пишутся. Вы не поверите, но иной раз даже знак $ используется в коде и вовсе не для бартера деревянных в зелёные.

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


Дополнено 29 минуты спустя

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

ss_yakuzza_06-08-22_17-29-00_(jupiter).jpg


Дополнено 36 минуты спустя
3 часа назад, Mindallius сказал:

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


Дополнено 3 минуты спустя

Кстати,  а какой элемент логики отвечает за пиление досок? 


Дополнено 6 минуты спустя

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


Дополнено 29 минуты спустя

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

 

Диалог кстати вполне нормально работает

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


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

ОК займусь самоцитированием.

 

Спойлер

suitable = {=check_npc_name(kalancha)}
active = walker@leader
can_select_weapon = false
prior = 200

[walker@leader]
path_walk = kalancha_leader_walk
path_look = kalancha_leader_look
meet = meet
show_spot = false
combat_ignore_cond = true
СЃombat_ignore = combat_ignore
combat_ignore_keep_when_attacked = true
corpse_detection_enabled = false
gather_items_enabled = false
invulnerable = true

[meet]
close_snd_hello = nil
close_snd_bye = nil
close_snd_distance = 0
no_move = false
abuse = false
allow_break = false
meet_on_talking = false
trade_enable = false
close_distance = 0
close_anim = sit_ass
close_victim = nil
meet_dialog = lim_kalancha
use = {-lim_a10_kalancha_done_dialog} true, false
snd_on_use = nil

Это логика из оригинала мода которую я хотел заставить корректно работать, но увы. Но я нашел причину вылета при повторном юзанье этого нпс, автор мода просто не прописал его в файле   dialog_manager.ltx, теперь хотя бы так игрок не наткнется на вылет. Всем спасибо за то, что откликнулись.

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


Ссылка на сообщение
Поделиться на другие сайты
 
В 05.06.2022 в 15:17, denis2000 сказал:

Boomer Нет проблем. Удаляйте штатной функцией destroy_object по стори_ид. Но убедитесь что труп не удаляется release_body_manager.script

А можно пример такой функции, пожалуйста? 

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


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

Boomer %=destroy_object(story:jup_a10_stalker_vano)%


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

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

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


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

Хелп! Первый раз в жизни меня игра загнала в тупик, вот лог и я не могу понять в чем проблема, движок я не редактировал

Спойлер

* Detected CPU: AuthenticAMD , F15/M2/S0, 3505.00 mhz, 78-clk 'rdtsc'
* CPU Features: RDTSC, MMX, SSE, SSE2

Initializing File System...
using fs-ltx fsgame.ltx
FS: 27482 files cached 26 archives, 4175Kb memory used.
Init FileSystem 1.747455 sec
'xrCore' build 3795, Jun 25 2009

Initializing Engine...
Starting INPUT device...
Loading DLL: xrRender_R2.dll
Loading DLL: xrRender_R3.dll
refCount:m_pAdapter 1
command line 
Executing config-script "user.ltx"...
[c:\users\public\documents\stalker-st\user.ltx] successfully loaded.
Loading DLL: xrRender_R2.dll
Loading DLL: xrGame.dll
! Player name in registry is empty! (InstallUserName)
* [win32]: free[4055900 K], reserved[54804 K], committed[83536 K]
* [ D3D ]: textures[0 K]
* [x-ray]: crt heap[8298 K], process heap[2885 K], game lua[0 K], render[0 K]
* [x-ray]: economy: strings[4585 K], smem[0 K]
SOUND: OpenAL: enumerate devices...
SOUND: OpenAL: EnumerationExtension Present
devices Generic Hardware
SOUND: OpenAL: system  default SndDevice name is Generic Hardware
SOUND: OpenAL: default SndDevice name set to Generic Software
SOUND: OpenAL: All available devices:
1. Generic Software, Spec Version 1.1 (default) eax[0] efx[no] xram[no]
2. Generic Software, Spec Version 1.1 (default) eax[0] efx[no] xram[no]
Executing config-script "user.ltx"...
Executing config-script "d:\s.t.a.l.k.e.r\gamedata\configs\rspec_extreme.ltx"...
[d:\s.t.a.l.k.e.r\gamedata\configs\rspec_extreme.ltx] successfully loaded.
[c:\users\public\documents\stalker-st\user.ltx] successfully loaded.
SOUND: Selected device is Generic Software
* sound: EAX 2.0 extension: absent
* sound: EAX 2.0 deferred: absent
* sound : cache: 65537 kb, 4856 lines, 13820 bpl
Starting RENDER device...
* GPU [vendor:10DE]-[device:1380]: NVIDIA GeForce GTX 750 Ti
* GPU driver: 27.21.14.6679
* CREATE: DeviceREF: 1
* Vertex Processor: PURE HARDWARE
*     Texture memory: 4084 M
*          DDI-level: 9.0
* GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
* GPU vertex cache: unrecognized, 16
* NVidia MGPU: Logical(1), Physical(1)
* Starting rendering as 2-GPU.
* DVB created: 1536K
* DIB created: 512K
! Renderer doesn't support blender 'effects\shadow_world'
! Version conflict in shader 'models\model_pn'
* NULLRT supported
* ...and used
* HWDST/PCF supported and used
* NV-DBT supported and used
- r__tf_aniso 16
- r2_tf_mipbias 0.
Starting engine...
! Player name in registry is empty! (InstallUserName)
Loading DLL: xrGameSpy.dll
! Invalid ogg-comment version, file:  d:\s.t.a.l.k.e.r\gamedata\sounds\characters_voice\scenario\video\ati.ogg
* DVB created: 1536K
* DIB created: 512K
- r__tf_aniso 16
- r2_tf_mipbias 0.
* GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
* GPU vertex cache: recognized, 24
* NVidia MGPU: Logical(1), Physical(1)
* Starting rendering as 2-GPU.
*** RESET [707 ms]
* MEMORY USAGE: 99591 K
* End of synchronization A[1] R[1]
* DVB created: 1536K
* DIB created: 512K
- r__tf_aniso 16
- r2_tf_mipbias 0.
* GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30)
* GPU vertex cache: recognized, 24
* NVidia MGPU: Logical(1), Physical(1)
* Starting rendering as 2-GPU.
*** RESET [306 ms]
bin\xrengine.exe 
* phase time: 0 ms
* phase cmem: 105951 K
Кэширование объектов...
Loading objects...
Loading models...
* [prefetch] time:    212 ms
* [prefetch] memory:  0Kb
! Player name in registry is empty! (InstallUserName)
* phase time: 235 ms
* phase cmem: 96701 K
Сервер: Старт...
* phase time: 170 ms
* phase cmem: 97346 K
Сервер: Загрузка симуляции жизни...
* phase time: 2 ms
* phase cmem: 97346 K
Создание новой игры...
* Creating new game...
* Loading spawn registry...
* 12074 spawn points are successfully loaded
stack trace:

0023:0529A255 xrGame.dll
 

 

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

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


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

Я не знаю как правильно сформулировать, но попытаюсь. Я попытался перенести Рыжий лес для своего мода, но на нём происходит какая-то лажа с текстурами террейна, я прикреплю фото чтобы понятнее было что у меня не так.1012357028_ss__06-11-22_23-49-14_(red_forest).thumb.jpg.ba3a9bce58dc1ff9a115f0c9f7d51551.jpg1456850686_ss__06-12-22_12-55-47_(red_forest).thumb.jpg.36e5acec03b74ab7d74be669a5502a0b.jpg

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


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

DimonGaika вот это колбасит)) кстати я переносил конечно банальным acdc и проблем небыло с этим

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

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


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

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

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

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

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

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

Войти

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

Войти

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

    Ни одного зарегистрированного пользователя не просматривает данную страницу