Overf1rst 1 425 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 16 9 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NewValveCom 123 Опубликовано 20 декабря, 2023 15 часов назад, denis2000 сказал: АИ-секта :) (Показать контент) Так это и есть первейшая причина. А вот если сетка валидна, но мобы застревают, тут область полемики - почему, такое может происходить. Еще в сотый раз про механизм: если сетка имеет разрывы (состоит из нескольких не связанных фрагментов - это и обнаруживает компилятор при валидации), то ИИ моба в движке может выбрать ноду для премещения находящуюся на изолированной части сетки, в результате часть движка - патфайндер (предназначен для построения маршрута между нодами) не может найти решение маршрута и моб находиться на месте, но при этом анимация движения проигрывается. Интересная теория, но первое - при валидной сетке такого быть не должно, второе - снорк прыгает только при атаке (или в специальной схеме логики) и третье - что что по вашему в этом месте не так? Однозначно - нет. Статическая геометрия локации на это никак не влияет напрямую, она может влиять косвенно усложняя конфигурацию АИ-сетки в данном месте, я для эксперимента пробовал погружать АИ-сетку в террейн и снорки никак не реагировали на то, что бегают "в текстурах". Mawrak Diesel Я ни разу такого не наблюдал на оригинальных локациях, возможно мне просто везло. А вот в модах часто видел. Теперь гипотезы: 1. Локации в ЗП и модах (по сравнению с ТЧ) стали гораздо больше и сложнее, соответственно АИ-сетка стала больше и сложнее, возможно это само по себе приводит к тому, что патфайндер на такой сетке может глючить, а возможно и компилятор АИ-сетки при компиляции. 2. Возможно дефолтные настройки просчета АИ-сетки в SDK отличаются от тех, что выбирали левелдизайнеры GSC (В режиме редактирования сетки: Scene->Options->AI Map). 3. Возможно - это все же не баг АИ-сетки, а баг самого движка, который хоть рандомен, но есть некие паттерны которые его стабильно вызывают. Создаете функцию в xr_effects.script в которую в качестве параметра передаете стори_ид костра, в функции по стори_ид получаете объект-костер, у этого объекта есть методы turn_off и turn_on - соответственно выкл и вкл, а также метод is_on проверка, что костер горит. Далее в любой логике используете свою функцию. Механизм отключения костров на пустых смартах или смартах с НПС днем есть в bind_campfire.script в функции campfire_binder:update(delta), но по дефолту он отключен (код закоментирован). Если костер привязан к смарту (его имя строго такое: имя_смарта_campfire_индекс), то кключать отключать костры можно функциями из вышеупомянутого скрипта. Создал две функции, по аналогии с лампами. Только сейчас по-немногу начинаю ковырять в кодах х-рея. Где-то вряд ли правильно указываю, ибо в логике вызываю функцию выключения, и она вроде кое-как срабатывает, но результата нету - костёр как горит изначально, так и продолжает. Спойлер function turn_on_campfire(actor, npc, p) local obj for k,v in pairs(p) do obj = get_story_object(v) if not obj then abort("TURN_ON [%s]. Target object does not exist", npc:name()) return end obj:bind_object(campfire_binder(obj)):turn_on() end end function turn_off_campfire(actor, npc, p) local obj for k,v in pairs(p) do obj = get_story_object(v) if not obj then abort("TURN_ON [%s]. Target object does not exist", npc:name()) return end obj:bind_object(campfire_binder(obj)):turn_off() end end Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 762 Опубликовано 21 декабря, 2023 NewValveCom Прочтите посты выше... 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FFFFF 0 Опубликовано 21 декабря, 2023 Спойлер * Detected CPU: Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz [GenuineIntel], F6/M10/S7, 2993.00 mhz, 26-clk 'rdtsc' * CPU features: RDTSC, MMX, SSE, SSE2, SSE3, MONITOR/MWAIT, SSSE3, SSE4.1, SSE4.2 * CPU threads: 4 Initializing File System... using fs-ltx fsgame.ltx FS: 40444 files cached 32 archives, 7259Kb memory used. Init FileSystem 1.172253 sec 'xrCore' build 3967, Dec 14 2009 EH: 9BDBD715169AC65D0242294793C84288 -----loading d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\system.ltx -----loading d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\system.ltx Initializing Engine... Starting INPUT device... Loading DLL: xrRender_R2.dll Loading DLL: xrRender_R3.dll refCount:m_pAdapter 1 Loading DLL: xrRender_R4.dll command line Executing config-script "user.ltx"... [c:\users\user\docume~1\stalke~1\user.ltx] successfully loaded. Loading DLL: xrRender_R2.dll Loading DLL: xrGame.dll * [win32]: free[4057580 K], reserved[52740 K], committed[83920 K] * [ D3D ]: textures[0 K] * [x-ray]: crt heap[13228 K], process heap[2211 K], game lua[0 K], render[0 K] * [x-ray]: economy: strings[8042 K], smem[0 K] SOUND: OpenAL: enumerate devices... SOUND: OpenAL: EnumerationExtension Present dir[0]=D:\Games\S.T.A.L.K.E.R. Call of Pripyat\bin\ dir[1]=D:\Games\S.T.A.L.K.E.R. Call of Pripyat\ dir[2]=D:\Games\S.T.A.L.K.E.R. Call of Pripyat\bin\ dir[3]=C:\windows\system32\ CleanDeviceSpecifierList CleanDeviceSpecifierList Generic Hardware 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 "d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\default_controls.ltx"... [d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\default_controls.ltx] successfully loaded. Executing config-script "user.ltx"... Executing config-script "d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\rspec_default.ltx"... [d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\rspec_default.ltx] successfully loaded. Executing config-script "d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\default_controls.ltx"... [d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\configs\default_controls.ltx] successfully loaded. ~ Invalid syntax in call to 'r2_aa_break' ~ Valid arguments: vector3 in range [0.000000e+000,0.000000e+000,0.000000e+000]-[1.000000e+000,1.000000e+000,1.000000e+000] ~ Invalid syntax in call to 'r2_aa_weight' ~ Valid arguments: vector3 in range [0.000000e+000,0.000000e+000,0.000000e+000]-[1.000000e+000,1.000000e+000,1.000000e+000] ~ Invalid syntax in call to 'sv_adm_menu_ban_time' ~ Valid arguments: ui_mp_am_10_minutes/ui_mp_am_30_minutes/ui_mp_am_1_hour/ui_mp_am_6_hours/ui_mp_am_1_day/ui_mp_am_1_week/ui_mp_am_1_month/ui_mp_am_3_monthes/ui_mp_am_forever [c:\users\user\docume~1\stalke~1\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:1002]-[device:6779]: AMD Radeon HD 6450 Graphics * GPU driver: 8.17.10.1083 * CREATE: DeviceREF: 1 * Vertex Processor: PURE HARDWARE * Texture memory: 2786 M * DDI-level: 9.0 * GPU shading: vs(fffe0300/3.0/30), ps(ffff0300/3.0/30) * GPU vertex cache: unrecognized, 16 * NVAPI is missing. * Starting rendering as 2-GPU. * DVB created: 1536K * DIB created: 512K ! Renderer doesn't support blender 'effects\shadow_world' * NULLRT supported * ...and used * HWDST/PCF supported and used compiling shader dumb compiling shader dumb compiling shader accum_mask compiling shader accum_sun_mask compiling shader copy_p compiling shader accum_volume compiling shader copy compiling shader accum_sun_near compiling shader accum_sun compiling shader accum_sun_cascade compiling shader accum_sun_cascade_far compiling shader accum_omni_unshadowed compiling shader accum_omni_normal compiling shader accum_omni_transluent compiling shader accum_spot_unshadowed compiling shader accum_spot_normal compiling shader accum_spot_fullsize compiling shader accum_volumetric compiling shader accum_volumetric compiling shader accum_indirect compiling shader bloom_build compiling shader bloom_filter compiling shader bloom_filter_f compiling shader bloom_luminance_1 compiling shader bloom_luminance_2 compiling shader bloom_luminance_3 compiling shader combine_1 compiling shader combine_1 compiling shader combine_2_AA compiling shader combine_2_NAA compiling shader combine_2_AA_D compiling shader combine_2_NAA_D compiling shader combine_volumetric compiling shader postprocess compiling shader postprocess_CM compiling shader distort compiling shader particle_distort compiling shader particle compiling shader particle compiling shader particle_s-blend compiling shader particle-clip compiling shader particle_s-add compiling shader particle_s-aadd compiling shader deffer_particle compiling shader deffer_particle - r__tf_aniso 4 - r2_tf_mipbias 0. compiling shader portal compiling shader portal compiling shader simple_color compiling shader editor compiling shader sky2 compiling shader sky2 compiling shader clouds compiling shader clouds Starting engine... compiling shader stub_default compiling shader effects_sun compiling shader hud_font Loading DLL: xrGameSpy.dll compiling shader yuv2rgb ! Missing ogg-comment, file: d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\sounds\video\bitcomposer.ogg ! Missing ogg-comment, file: d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\sounds\video\ati_radeon_1920x1080.ogg ! Missing ogg-comment, file: d:\games\s.t.a.l.k.e.r. call of pripyat\gamedata\sounds\video\amd_fusion_final_720.ogg intro_start intro_logo intro_delete ::update_logo_intro compiling shader yuv2rgb * [win32]: free[3820976 K], reserved[85988 K], committed[287276 K] * [ D3D ]: textures[64 K] * [x-ray]: crt heap[98014 K], process heap[11056 K], game lua[2143 K], render[203 K] * [x-ray]: economy: strings[8092 K], smem[0 K] * 0.0 : [ 56] $null * 0.0 : [ 3] $user$accum * 0.0 : [ 1] $user$accum_temp * 0.0 : [ 6] $user$albedo * 0.0 : [ 6] $user$bloom1 * 0.0 : [ 2] $user$bloom2 * 0.0 : [ 2] $user$cmap0 * 0.0 : [ 2] $user$cmap1 * 0.0 : [ 2] $user$env_s0 * 0.0 : [ 2] $user$env_s1 * 0.0 : [ 7] $user$generic0 * 0.0 : [ 5] $user$generic1 * 0.0 : [ 1] $user$generic2 * 0.0 : [ 1] $user$jitter_0 * 0.0 : [ 1] $user$jitter_1 * 0.0 : [ 1] $user$jitter_2 * 0.0 : [ 1] $user$jitter_3 * 0.0 : [ 1] $user$jitter_4 * 0.0 : [ 2] $user$lum_t64 * 0.0 : [ 3] $user$lum_t8 * 0.0 : [ 1] $user$luminance_0 * 0.0 : [ 1] $user$luminance_1 * 0.0 : [ 1] $user$luminance_2 * 0.0 : [ 1] $user$luminance_3 * 0.0 : [ 8] $user$material * 0.0 : [ 12] $user$normal * 0.0 : [ 12] $user$position * 0.0 : [ 1] $user$sky0 * 0.0 : [ 1] $user$sky1 * 0.0 : [ 4] $user$smap_depth * 0.0 : [ 3] $user$smap_surf * 0.0 : [ 7] $user$tonemap * 0.0 : [ 2] $user$tonemap_src * 0.0 : [ 1] act\act_controller_hit1 * 0.0 : [ 1] amik\weapons\flame\trace * 0.0 : [ 1] amik\weapons\flame\trail * 0.0 : [ 1] amik\weapons\flash_02 * 0.0 : [ 1] amik\weapons\flash_04 * 0.0 : [ 1] amik\weapons\trace * 0.0 : [ 1] amik\weapons\trace_01 * 0.0 : [ 1] fx\fx_flare1 * 0.0 : [ 1] fx\fx_flare2 * 0.0 : [ 1] fx\fx_flare3 * 0.0 : [ 1] fx\fx_gradient * 0.0 : [ 1] fx\fx_gradient1 * 0.0 : [ 1] fx\fx_lightning * 0.0 : [ 1] fx\fx_noise * 0.0 : [ 2] fx\fx_noise2 * 0.0 : [ 1] fx\fx_rain * 0.0 : [ 1] fx\fx_rainsplash1 * 0.0 : [ 1] fx\fx_sun * 0.0 : [ 1] fx\fx_sun_rise * 0.0 : [ 1] fx\fx_thunderbolts_gradient * 0.0 : [ 1] fx\fx_thunderbolts_gradient_surge * 0.0 : [ 1] fx\fx_volumefog1 * 0.0 : [ 1] glow\glow_04 * 0.0 : [ 1] glow\glow_fire1 * 0.0 : [ 1] glow\glow_orange * 0.0 : [ 1] glow\glow_orange2 * 0.0 : [ 1] glow\glow_orange_bright * 0.0 : [ 1] glow\glow_white * 0.0 : [ 4] lights\lights_spot01 * 0.0 : [ 1] pfx\pfx_ani-explosion-02 * 0.0 : [ 1] pfx\pfx_ani-explosion-02-b-a * 0.0 : [ 1] pfx\pfx_ani-explosion-02a * 0.0 : [ 1] pfx\pfx_ani-fire01 * 0.0 : [ 1] pfx\pfx_ani-smoke-01 * 0.0 : [ 1] pfx\pfx_anomaly_1 * 0.0 : [ 1] pfx\pfx_anomaly_16 * 0.0 : [ 1] pfx\pfx_anomaly_18 * 0.0 : [ 1] pfx\pfx_anomaly_19 * 0.0 : [ 1] pfx\pfx_anomaly_2 * 0.0 : [ 1] pfx\pfx_anomaly_21 * 0.0 : [ 1] pfx\pfx_anomaly_23 * 0.0 : [ 1] pfx\pfx_anomaly_2_green * 0.0 : [ 1] pfx\pfx_anomaly_3 * 0.0 : [ 1] pfx\pfx_anomaly_4 * 0.0 : [ 1] pfx\pfx_anomaly_5 * 0.0 : [ 1] pfx\pfx_anomaly_6 * 0.0 : [ 1] pfx\pfx_anomaly_7 * 0.0 : [ 1] pfx\pfx_anomaly_8 * 0.0 : [ 1] pfx\pfx_anomaly_88 * 0.0 : [ 1] pfx\pfx_anomaly_9 * 0.0 : [ 1] pfx\pfx_bloodsplash1 * 0.0 : [ 1] pfx\pfx_bloodsplash2 * 0.0 : [ 1] pfx\pfx_blurry_cloud * 0.0 : [ 1] pfx\pfx_brick * 0.0 : [ 1] pfx\pfx_bubble * 0.0 : [ 1] pfx\pfx_bubble_1 * 0.0 : [ 1] pfx\pfx_bubble_water * 0.0 : [ 1] pfx\pfx_concretedebris_01 * 0.0 : [ 1] pfx\pfx_concretepuffs_01 * 0.0 : [ 1] pfx\pfx_dist2 * 0.0 : [ 1] pfx\pfx_dist2inv * 0.0 : [ 1] pfx\pfx_dist3 * 0.0 : [ 1] pfx\pfx_dist4 * 0.0 : [ 1] pfx\pfx_dist7 * 0.0 : [ 1] pfx\pfx_dist8 * 0.0 : [ 1] pfx\pfx_dist9 * 0.0 : [ 1] pfx\pfx_dist_teleport * 0.0 : [ 1] pfx\pfx_distort_anomaly * 0.0 : [ 1] pfx\pfx_distortion * 0.0 : [ 1] pfx\pfx_explotions_2 * 0.0 : [ 1] pfx\pfx_explotions_3 * 0.0 : [ 1] pfx\pfx_explotions_4 * 0.0 : [ 1] pfx\pfx_explotions_smoke * 0.0 : [ 1] pfx\pfx_flame * 0.0 : [ 1] pfx\pfx_flame_01 * 0.0 : [ 1] pfx\pfx_flamefx_01 * 0.0 : [ 1] pfx\pfx_flash_01 * 0.0 : [ 1] pfx\pfx_flash_05 * 0.0 : [ 1] pfx\pfx_flash_07 * 0.0 : [ 1] pfx\pfx_gologramma * 0.0 : [ 1] pfx\pfx_gradient * 0.0 : [ 1] pfx\pfx_gradient1 * 0.0 : [ 1] pfx\pfx_leaves_01 * 0.0 : [ 1] pfx\pfx_leaves_02 * 0.0 : [ 1] pfx\pfx_light1 * 0.0 : [ 1] pfx\pfx_light3 * 0.0 : [ 1] pfx\pfx_light4 * 0.0 : [ 1] pfx\pfx_lighting_stancia_01 * 0.0 : [ 1] pfx\pfx_lighting_stancia_02 * 0.0 : [ 1] pfx\pfx_lightning_01 * 0.0 : [ 1] pfx\pfx_lightning_02 * 0.0 : [ 1] pfx\pfx_ligth_6 * 0.0 : [ 1] pfx\pfx_plasma * 0.0 : [ 1] pfx\pfx_shells1 * 0.0 : [ 1] pfx\pfx_shells2 * 0.0 : [ 1] pfx\pfx_skinsplash1 * 0.0 : [ 1] pfx\pfx_smoke_a * 0.0 : [ 1] pfx\pfx_smoke_b * 0.0 : [ 1] pfx\pfx_smokepuffs1 * 0.0 : [ 1] pfx\pfx_smokepuffs2 * 0.0 : [ 1] pfx\pfx_spark_01 * 0.0 : [ 1] pfx\pfx_sparks * 0.0 : [ 1] pfx\pfx_specks * 0.0 : [ 1] pfx\pfx_specks_poison * 0.0 : [ 1] pfx\pfx_spikey_star * 0.0 : [ 1] pfx\pfx_splash3 * 0.0 : [ 1] pfx\pfx_splash_01 * 0.0 : [ 1] pfx\pfx_splash_02 * 0.0 : [ 1] pfx\pfx_step_blood * 0.0 : [ 1] pfx\pfx_stonedebris1 * 0.0 : [ 1] pfx\pfx_stonedebris2 * 0.0 : [ 1] pfx\pfx_synus * 0.0 : [ 1] pfx\pfx_teleport * 0.0 : [ 1] pfx\pfx_test_textures * 0.0 : [ 1] pfx\pfx_vehglassdebris_01 * 0.0 : [ 1] pfx\pfx_vehmetaldebris_01 * 0.0 : [ 1] pfx\pfx_water_wave * 0.0 : [ 1] pfx\pfx_woodchips1 * 0.0 : [ 1] pfx\pfx_woodchips3 * 0.0 : [ 1] pfx\r_pop\shells\12ga * 0.0 : [ 1] pfx\r_pop\shells\45acp * 0.0 : [ 1] pfx\r_pop\shells\545x39 * 0.0 : [ 1] pfx\r_pop\shells\556x45 * 0.0 : [ 1] pfx\r_pop\shells\762x54 * 0.0 : [ 1] pfx\r_pop\shells\9x18 * 0.0 : [ 1] pfx\r_pop\shells\9x19 * 0.0 : [ 1] pfx\r_pop\shells\9x39 * 0.0 : [ 1] prop\prop_fake_bed_fireplace * 0.0 : [ 1] prop\prop_provod_02 * 0.0 : [ 5] sky\sky_12_vibros_cube * 0.0 : [ 5] sky\sky_12_vibros_cube#small * 0.0 : [ 26] sky\sky_13_cube * 0.0 : [ 26] sky\sky_13_cube#small * 0.0 : [ 16] sky\sky_13_cube_night * 0.0 : [ 16] sky\sky_13_cube_night#small * 0.0 : [ 12] sky\sky_13_vibros_cube * 0.0 : [ 12] sky\sky_13_vibros_cube#small * 0.0 : [ 10] sky\sky_14_cube * 0.0 : [ 10] sky\sky_14_cube#small * 0.0 : [ 4] sky\sky_17_clouds_cube * 0.0 : [ 4] sky\sky_17_clouds_cube#small * 0.0 : [ 4] sky\sky_17_cube * 0.0 : [ 4] sky\sky_17_cube#small * 0.0 : [ 8] sky\sky_18_cube * 0.0 : [ 8] sky\sky_18_cube#small * 0.0 : [ 11] sky\sky_19_cube * 0.0 : [ 11] sky\sky_19_cube#small * 0.0 : [ 4] sky\sky_1_clouds_cube * 0.0 : [ 4] sky\sky_1_clouds_cube#small * 0.0 : [ 4] sky\sky_20_clouds_cube * 0.0 : [ 4] sky\sky_20_clouds_cube#small * 0.0 : [ 4] sky\sky_20_cube * 0.0 : [ 4] sky\sky_20_cube#small * 0.0 : [ 4] sky\sky_2_clouds_cube * 0.0 : [ 4] sky\sky_2_clouds_cube#small * 0.0 : [ 4] sky\sky_2_cube * 0.0 : [ 4] sky\sky_2_cube#small * 0.0 : [ 12] sky\sky_3_cube * 0.0 : [ 12] sky\sky_3_cube#small * 0.0 : [ 3] sky\sky_4_cube * 0.0 : [ 3] sky\sky_4_cube#small * 0.0 : [ 30] sky\sky_5_cube * 0.0 : [ 30] sky\sky_5_cube#small * 0.0 : [ 7] sky\sky_6_cube * 0.0 : [ 7] sky\sky_6_cube#small * 0.0 : [ 11] sky\sky_7_cube * 0.0 : [ 11] sky\sky_7_cube#small * 0.0 : [ 8] sky\sky_8_cube * 0.0 : [ 8] sky\sky_8_cube#small * 0.0 : [ 51] sky\sky_9_cube * 0.0 : [ 51] sky\sky_9_cube#small * 0.0 : [ 238] sky\sky_oblaka * 0.0 : [ 1] ui\ui_actor_hint_wnd * 0.0 : [ 1] ui\ui_actor_multiplayer_game_menu * 0.0 : [ 1] ui\ui_actor_sleep_screen * 0.0 : [ 1] ui\ui_common * 0.0 : [ 1] wm\wm_blood_1 * 0.0 : [ 1] wm\wm_blood_1_1 * 0.0 : [ 1] wm\wm_blood_1_2 * 0.0 : [ 1] wm\wm_blood_1_3 * 0.0 : [ 1] wm\wm_blood_drop_4 * 0.0 : [ 1] wm\wm_bullet_asfalt_1 * 0.0 : [ 1] wm\wm_bullet_asfalt_2 * 0.0 : [ 1] wm\wm_bullet_asfalt_3 * 0.0 : [ 1] wm\wm_bullet_brick_1 * 0.0 : [ 1] wm\wm_bullet_brick_2 * 0.0 : [ 1] wm\wm_bullet_concrete * 0.0 : [ 1] wm\wm_bullet_concrete_1 * 0.0 : [ 1] wm\wm_bullet_concrete_2 * 0.0 : [ 1] wm\wm_bullet_concrete_4 * 0.0 : [ 1] wm\wm_bullet_concrete_5 * 0.0 : [ 1] wm\wm_bullet_concrete_6 * 0.0 : [ 1] wm\wm_bullet_concrete_7 * 0.0 : [ 1] wm\wm_bullet_glass01 * 0.0 : [ 1] wm\wm_bullet_glass02 * 0.0 : [ 1] wm\wm_bullet_glass03 * 0.0 : [ 1] wm\wm_bullet_glass04 * 0.0 : [ 1] wm\wm_bullet_ground * 0.0 : [ 1] wm\wm_bullet_ground_1 * 0.0 : [ 1] wm\wm_bullet_ground_2 * 0.0 : [ 1] wm\wm_bullet_metall_thik * 0.0 : [ 1] wm\wm_bullet_metall_thik_1 * 0.0 : [ 1] wm\wm_bullet_metall_thik_2 * 0.0 : [ 1] wm\wm_bullet_metall_thik_3 * 0.0 : [ 1] wm\wm_bullet_metall_thin * 0.0 : [ 1] wm\wm_bullet_metall_thin_1 * 0.0 : [ 1] wm\wm_bullet_metall_thin_2 * 0.0 : [ 1] wm\wm_bullet_metall_thin_3 * 0.0 : [ 1] wm\wm_bullet_metall_thin_4 * 0.0 : [ 1] wm\wm_bullet_wood * 0.0 : [ 1] wm\wm_bullet_wood_1 * 0.0 : [ 1] wm\wm_bullet_wood_2 * 0.0 : [ 1] wm\wm_bullet_wood_3 * 0.0 : [ 1] wm\wm_bullet_wood_4 * 0.0 : [ 1] wm\wm_bullet_wood_5 * 0.0 : [ 1] wm\wm_bullet_wood_6 * 0.0 : [ 1] wm\wm_bullet_wood_7 * 0.0 : [ 1] wm\wm_bullet_wood_8 * 0.0 : [ 1] wm\wm_bullet_wood_9 * 0.0 : [ 1] wm\wm_grenade * 0.0 : [ 1] wm\wm_knife_dead * 0.0 : [ 1] wm\wm_knife_horiz * 0.0 : [ 1] wm\wm_knife_horiz_blood * 0.0 : [ 1] wm\wm_knife_horiz_blood1 * 0.0 : [ 1] wm\wm_knife_horiz_metal * 0.0 : [ 1] wm\wm_knife_horiz_ston * 0.0 : [ 1] wm\wm_knife_wood * 0.0 : [ 1] wm\wm_knife_wood1 * 0.0 : [ 1] wm\wm_knife_wood2 * 16.1 : [ 1] ui\ui_font_arial_14_1024 * 32.1 : [ 1] ui\ui_font_letter_16_1024 * 32.1 : [ 1] ui\ui_font_letter_18_1024 * 32.1 : [ 1] ui\ui_magnifier3 * 33.0 : [ 1] ui\ui_ani_cursor * 64.1 : [ 1] ui\ui_font_console_02 * 64.1 : [ 1] ui\ui_font_graff_19_1024 * 64.1 : [ 1] ui\ui_font_graff_22_1024 * 64.1 : [ 1] ui\ui_font_hud_01 * 128.1 : [ 1] ui\ui_font_graff_32_1024 * 128.1 : [ 1] ui\ui_font_letter_25_1024 * 256.1 : [ 1] ui\ui_font_graff_50_1024 * 256.1 : [ 1] ui\ui_font_hud_02 * 270.0 : [ 1] ui\video_voroni_crop * 936.0 : [ 1] ui\video_water_crop * 1024.1 : [ 1] ui\ui_actor_main_menu compiling shader deffer_base_bump-hq compiling shader deffer_model_bump-hq_3 compiling shader deffer_base_bump compiling shader deffer_model_bump_3 compiling shader shadow_direct_model_3 "d:\games\s.t.a.l.k.e.r. call of pripyat\bin\xrengine.exe" * phase time: 0 ms * phase cmem: 108045 K Loading objects... compiling shader deffer_base_flat compiling shader deffer_model_flat_0 compiling shader shadow_direct_model_0 compiling shader deffer_model_bump-hq_0 compiling shader deffer_model_bump_0 compiling shader deffer_base_aref_bump-hq compiling shader deffer_base_aref_bump compiling shader shadow_direct_base_aref compiling shader shadow_direct_model_aref_0 compiling shader deffer_model_bump-hq_1 compiling shader deffer_model_bump_1 compiling shader shadow_direct_model_1 compiling shader deffer_base_bump_d-hq compiling shader deffer_model_bump_d-hq_0 compiling shader deffer_model_bump-hq_2 compiling shader deffer_model_bump_2 compiling shader shadow_direct_model_2 Loading models... compiling shader deffer_model_bump-hq_4 compiling shader deffer_model_bump_4 compiling shader shadow_direct_model_4 compiling shader model_def_lq compiling shader model_def_lq_0 compiling shader deffer_model_bump_d-hq_4 compiling shader deffer_base_aref_flat compiling shader deffer_model_flat_2 compiling shader shadow_direct_model_aref_2 compiling shader deffer_model_bump_d-hq_3 compiling shader deffer_model_flat_1 compiling shader accum_emissive compiling shader model_distort4glass_3 compiling shader shadow_direct_model_aref_3 compiling shader deffer_model_flat_4 compiling shader shadow_direct_model_aref_4 ! Can't find texture 'amik\weapons\flame\trace' ! Can't find texture 'amik\weapons\flame\trail' ! Can't find texture 'amik\weapons\flash_02' ! Can't find texture 'amik\weapons\flash_04' ! Can't find texture 'amik\weapons\trace' ! Can't find texture 'amik\weapons\trace_01' ! Can't find texture 'pfx\r_pop\shells\12ga' ! Can't find texture 'pfx\r_pop\shells\45acp' ! Can't find texture 'pfx\r_pop\shells\545x39' ! Can't find texture 'pfx\r_pop\shells\556x45' ! Can't find texture 'pfx\r_pop\shells\762x54' ! Can't find texture 'pfx\r_pop\shells\9x18' ! Can't find texture 'pfx\r_pop\shells\9x19' ! Can't find texture 'pfx\r_pop\shells\9x39' * [prefetch] time: 10468 ms * [prefetch] memory: 77902Kb * phase time: 10690 ms * phase cmem: 188370 K * phase time: 9 ms * phase cmem: 188370 K * Creating new game... * Loading spawn registry... * 370 spawn points are successfully loaded 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 : ...r. call of pripyat\gamedata\scripts\sim_board.script:233: attempt to call method 'create_npc' (a nil value) stack trace:Yara Yara Изменил ,но появились новые ошибки. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Toplol4ik 35 Опубликовано 21 декабря, 2023 3 часа назад, FFFFF сказал: call of pripyat\gamedata\scripts\sim_board.script:233: attempt to call method 'create_npc' FFFFF У меня был такой лог. Неправильно был прописан сквад в simulation.ltx. Должно быть так: название сквада из squad_descr = название смарта где он должен находится Просто создаю свой мод... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NewValveCom 123 Опубликовано 22 декабря, 2023 14 часов назад, denis2000 сказал: Прочтите посты выше... Спасибо, внимание не обратил что страница новая... Попытки тщетны что-либо сделать. Со стори_ид вечные вылеты, сделал что-то такого. Спойлер function campfire_binder:net_spawn(server_object) story_objects.check_spawn_ini_for_story_id( server_object ) if not object_binder.net_spawn(self, server_object) then return false end local smart_name = string.gsub(self.object:name(), "_campfire_%d*", "") if sim_board.get_sim_board().smarts_by_names[smart_name] then self.campfire:turn_off() if campfire_table_by_smart_names[smart_name] == nil then campfire_table_by_smart_names[smart_name] = {} end campfire_table_by_smart_names[smart_name][self.object:id()] = self.campfire end return true end (Снизу функции которые нашел рыская по интернету, только название функций изменил) function turn_off_campfire(actor, npc, p) local obj = get_story_object(p[1]) if obj then local campfire = obj:get_campfire() campfire:turn_on() end end function turn_on_campfire(actor, npc, p) local obj = get_story_object(p[1]) if obj then local campfire = obj:get_campfire() campfire:turn_off() end end Спойлер [logic] active = sr_idle@1 [sr_idle@1] on_info = {=actor_in_zone(test)} %=turn_off_campfire(campfire_test)% sr_idle@nil [sr_idle@nil] В итоге я ловлю либо вылет либо никаких результатов. Придется делать через таблицу в db... Вот только про db я знаю ровно ничего) Где найти информацию о нём или что это вообще? Звиняйте за беспокойство и тупые вопросы. Вопрос с отключением костров смертелен. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 762 Опубликовано 22 декабря, 2023 (изменено) NewValveCom Я сделал так: Спойлер добавил в таблицы: campfire_by_name = {} Спойлер В функцию campfire_binder:net_spawn добавил: db.campfire_by_name[self.object:name()] = self.campfire Спойлер Добавил функции: function campfire_off(actor, npc, p) local obj = db.campfire_by_name[p[1]] if obj then obj:turn_off() end end function campfire_on(actor, npc, p) local obj = db.campfire_by_name[p[1]] if obj then obj:turn_on() end end Спойлер [logic] active = sr_idle@on [sr_idle@on] on_game_timer = 50 | sr_idle@off %=campfire_off(test_campfire)% [sr_idle@off] on_game_timer = 50 | sr_idle@on %=campfire_on(test_campfire)% Работает по имени костра в SDK, кроме статического освещения и DX11! Изменено 22 декабря, 2023 пользователем denis2000 3 1 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FFFFF 0 Опубликовано 22 декабря, 2023 (изменено) Братья Монолита! Хотел узнать истину Монолита.... Как сделать так чтоб нпс спавнился после получения инфопоршня? Ответьте скорее прошу? Очень. Дополнено 43 минуты спустя Изменено 22 декабря, 2023 пользователем FFFFF Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Toplol4ik 35 Опубликовано 22 декабря, 2023 Здраствуйте, у меня вопрос: Как запретить бегать игроку, а потом обратно разрешить. Проще говоря: отключить возможность бегать игроку Можно ли как то это сделать? Просто создаю свой мод... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FFFFF 0 Опубликовано 22 декабря, 2023 (изменено) Извините, а где найти логику НПС ? Просто нпс заспавнить получилось ,но он спавнится не на волк поинтах ,а в центре смарт терейнов. Изменено 22 декабря, 2023 пользователем FFFFF Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 829 Опубликовано 22 декабря, 2023 7 часов назад, Toplol4ik сказал: Можно ли как то это сделать? Через движок. 6 часов назад, FFFFF сказал: Извините, а где найти логику НПС ? А где ты её потерял? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FFFFF 0 Опубликовано 23 декабря, 2023 (изменено) Товарищи, здравствуйте. У меня возникла проблема. Я смог заспавнить нпс, но он смотрит в стену, вместо того чтоб смотреть на лук_поинт. Прилагаю все матен Спойлер [smart_terrain] squad_id = 1 max_population = 1 [exclusive] zat_a2_stalker_nimble = labx8\zat_a2_stalker_nimble_logic.ltx Спойлер [logic@zat_a2_stalker_nimble] active = walker@ranen suitable = {=check_npc_name(zat_a2_stalker_nimble)}true prior = 100 [walker@ranen] path_walk = emmis_walk path_look = emmis_look Кто нибудь ведает, как проблему решить? Изменено 23 декабря, 2023 пользователем FFFFF Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 610 Опубликовано 23 декабря, 2023 FFFFF , в точках walk и look флаги должны быть одинаковыми. Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FFFFF 0 Опубликовано 23 декабря, 2023 (изменено) makdm Флаги одинаковые. На самом деле он спавнится в центре смар_террейна. Так ,что он вообще не правильно спавнится. Теперь он вообще спавнится на другом этаже... Изменено 24 декабря, 2023 пользователем FFFFF Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Diesel 216 Опубликовано 23 декабря, 2023 (изменено) 1 час назад, makdm сказал: FFFFF , в точках walk и look флаги должны быть одинаковыми. А может дело в названии логики. есть конфиг с путем до логики, а там зачем то еще название нпс. Я давно уже не шарю в зп. Может эксклюзивы так и работают. Это совместная логика? Типа смарта или сквада? Как быстро я отупел. Изменено 23 декабря, 2023 пользователем Diesel Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mawrak 388 Опубликовано 23 декабря, 2023 (изменено) Подскажите пожалуйста, а какой параметр нужно править, чтобы уменьшить время, которое НПС после битвы сидят на месте "ждут врагов" (когда они еще говорят фразы типа "подождем еще немного")? Мне нужно, чтобы они буквально секунды через 3 возвращались к нормальному поведению и шли к своим точкам. Дополнено 0 минут спустя denis2000 хочу еще спросить кое-что про ИИ сетку. Может ли из-за какой-то конфигурации ИИ сетки падать ФПС? На новой сетке замечаю, что после продолжительной игры довольно часто начинает заметно падать ФПС, до 20-15 кадров, особенно в районе завода. При том на старой сетке у меня такого словить совсем не выходит. И это на самом деле большая проблема, так как в результате старая сетка пока что играется стабильнее. Есть теория, что это из-за зомбаков в подземке под заводом, они там без ограничений бродят (не прописана логика сейчас), а выход далеко. Может они слышат выстрелы и видят ноды над ними (с завода) и хотят идти туда, но путь ведет их так далеко (вне зоны online), что они залагивают? Может такое быть? А на старой я вообще не уверен, насколько эта подземка была соединена с другими частями ИИ сетки (оттуда шел ряд ошибок с мутантами), может там они и не пытаются никуда уходить потому что не могут. Если что, текущая новая сетка валидна. EDIT: В дополнение к тому, что я писал ранее про ИИ сетку - проверил бекап, на старой там наоборот связь с заводом и подземкой была (странным образом сквозь стену), и я ее походу в какой-то момент убрал. Наверное, в этом причина, надо вернуть, т.к. основной вход в подземку реально очень далеко EDIT: а вообще нет, черт его знает что там происходит, там кусок какой-то вне геометрии висит вообще, черт поймешь с чем он связан, не знаю короче Изменено 24 декабря, 2023 пользователем Mawrak Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 829 Опубликовано 23 декабря, 2023 3 часа назад, Mawrak сказал: буквально секунды через 3 возвращались к нормальному поведению и шли к своим точкам. post_combat_time = 2,4 По-моему, так это работает. Вписать в секцию logic 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Skala 70 Опубликовано 24 декабря, 2023 (изменено) Здравствуйте, как через рестриктор вызвать титры? Исправляю косяки в моде, и почему-то гг не телепортируется в указанную точку, а просто отключается интерфейс. Причём 3 сквада телепортируются, а гг нет. Спойлер [logic] active = sr_idle@plen [sr_idle@plen] on_info = {=actor_in_zone(pripyat_plen_sr)} sr_idle@dialog %=disable_ui =create_squad(pri_zasada_monolith_squad:pripyat_zasada)% [sr_idle@dialog] on_game_timer1 = 10| %=add_cs_text(plen_phrase_1)% on_game_timer2 = 80| %=del_cs_text(plen_phrase_1)% on_game_timer3 = 90| %=add_cs_text(plen_phrase_2)% on_game_timer4 = 160| %=del_cs_text(plen_phrase_2)% on_game_timer5 = 170| %=add_cs_text(plen_phrase_3)% on_game_timer6 = 220| %=del_cs_text(plen_phrase_3)% sr_idle@dialog2 [sr_idle@dialog2] on_game_timer1 = 1 | %=add_cs_text(plen_phrase_4)% on_game_timer2 = 60 | %=del_cs_text(plen_phrase_4)% on_game_timer3 = 61 | %=add_cs_text(plen_phrase_5)% on_game_timer4 = 70 | %=del_cs_text(plen_phrase_5)% sr_idle@spawn [sr_idle@spawn] on_info = {=actor_in_zone(pripyat_plen_sr)} sr_idle@ui_enable %=create_squad(pri_dolg_sim_squad:pripyat_zasada)% [sr_idle@ui_enable] on_game_timer1 = 50 | %=enable_ui =give_task(pripyat_pogovorit_task)% sr_idle@exit [sr_idle@exit] on_info = {+pripyat_perehod} sr_idle@tp_actor %=run_postprocess(fade_in:2272) =disable_ui =teleport_squad(pri_dolg_squad:pripyat_perehod_walker_1_walk) =teleport_squad(pri_dolg_sim_squad:pripyat_perehod_walker_1_walk) =teleport_squad(pri_friend_squad:pripyat_perehod_diplomat_walk)% [sr_idle@tp_actor] on_game_timer1 = 10 | sr_idle@nil %=teleport_actor(pripyat_perehod_v_pripyat_actor_walk:pripyat_perehod_v_pripyat_actor_look) =stop_postprocess(fade_in:2272) =enable_ui% [sr_idle@nil] Изменено 24 декабря, 2023 пользователем Skala Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 829 Опубликовано 24 декабря, 2023 3 часа назад, Skala сказал: Здравствуйте, как через рестриктор вызвать титры? =game_credits 3 часа назад, Skala сказал: почему-то гг не телепортируется в указанную точку Какая-то из точек не существует. Пересоздай. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Skala 70 Опубликовано 24 декабря, 2023 Neptun Пересоздавал точки актёра, но всё тоже самое Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mawrak 388 Опубликовано 24 декабря, 2023 (изменено) Skala как обходной вариант, можно телепортировать ГГ напрямую по координатам через lua db.actor:set_actor_position(vector():set(x,y,z),level_vertex_id,game_vertex_id) Вроде так это делается. Дополнено 7 минуты спустя Да, а сами координаты можно вот так смотреть - https://www.youtube.com/watch?v=WXuF4WmIbBI Это ТЧ но на ЗП вроде так же работает. Изменено 24 декабря, 2023 пользователем Mawrak Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Skala 70 Опубликовано 24 декабря, 2023 Mawrak А куда это прописывать и как вызвать? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mawrak 388 Опубликовано 24 декабря, 2023 Skala чтобы вызывать из логики, в xr_effects.script создаем функцию, например function my_new_teleport() db.actor:set_actor_position(vector():set(32.442,-11.221,-241.626),79341,37) end А потом из логики вызываем через %=my_new_teleport% как обычную функцию, в вашем случае on_game_timer1 = 10 | sr_idle@nil %=my_new_teleport =stop_postprocess(fade_in:2272) =enable_ui% Но все же хочу спросить, почему такая сложная схема? Почему не телепортировать ГГ прямо вместе со сквадами, зачем там отдельная секция и таймер? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Skala 70 Опубликовано 24 декабря, 2023 Mawrak Раньше была одна секция вместе со сквадами и всё работало, потом как добавил задание на разговор с персонажем, работать перестало и решил попробовать так. Так тоже не работает Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mawrak 388 Опубликовано 24 декабря, 2023 Skala а, то есть у вас сейчас +pripyat_perehod выдается через диалог? Тогда я думаю что не в самом телепорте проблема, а в том, что ГГ в диалоге в этот момент. Попробуйте добавить <action>dialogs.break_dialog</action> Перед выдачей инфы в диалоге: <action>dialogs.break_dialog</action> <give_info>pripyat_perehod</give_info> ну или как у вас там все сделано 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NewValveCom 123 Опубликовано 24 декабря, 2023 В 22.12.2023 в 14:11, denis2000 сказал: NewValveCom Я сделал так: db.script (Показать контент) добавил в таблицы: campfire_by_name = {} bind_campfire.script (Показать контент) В функцию campfire_binder:net_spawn добавил: db.campfire_by_name[self.object:name()] = self.campfire xr_effects.script (Показать контент) Добавил функции: function campfire_off(actor, npc, p) local obj = db.campfire_by_name[p[1]] if obj then obj:turn_off() end end function campfire_on(actor, npc, p) local obj = db.campfire_by_name[p[1]] if obj then obj:turn_on() end end Файл логики рестриктора (Показать контент) [logic] active = sr_idle@on [sr_idle@on] on_game_timer = 50 | sr_idle@off %=campfire_off(test_campfire)% [sr_idle@off] on_game_timer = 50 | sr_idle@on %=campfire_on(test_campfire)% Работает по имени костра в SDK, кроме статического освещения и DX11! Спасибо! Жаль, что не будет работать на всех рендерах, но разберусь. Хочу реализовать субтитры с их появлением через light_anim, и появление субтитров я реализовал с помощью скрипта: Спойлер function add_text_no_blink_subtitle(actor, npc, p) if p[1] then local hud = get_hud() local cs_text = hud:GetCustomStatic("text_on_screen_subtitle_no_blink") if cs_text then hud:RemoveCustomStatic("text_on_screen_subtitle_no_blink") end hud:AddCustomStatic("text_on_screen_subtitle_no_blink", true) cs_text = hud:GetCustomStatic("text_on_screen_subtitle_no_blink") cs_text:wnd():TextControl():SetText(game.translate_string(p[1])) end end +логика: %=add_text_no_blink_subtitle(test)% Попытался реализовать затухание субтитра через отдельный скрипт (но с тем же кодом, надеясь, что так сработает, ну да) и поменял цвета в фреймах light_anim (черный и белый), но в таком случае просто появляется текст практически также, т.е. нужно, чтобы он затухал также, как и появился, а не резко заканчивался. Это реально сделать, если поменять тот скрипт или нужно вообще новый код? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты