Перейти к контенту

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


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

Комрады, может конечно не по тебе, но даже не знаю куда писать.

 

Поставил на ванильный ТЧ 6 версии OGSR_Engine_SHOC_EDITION_x64_2.1.416_Release, при запуске стабильно вылазит сообщение

В чём соль и как его обойти или исправить?

Изменено пользователем DarkSnowder
  • Не нравится 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

@DarkSnowder зря все в папке bin намешал. Сделал бы отдельную папку bin_x64 или удалил старую папку bin сначала.

ОГСР engine запускается на ТЧ 6 без проблем.

 

"Ванильный" - это случайно не стимовский ТЧ?

Изменено пользователем abramcumner
  • Согласен 1
Ссылка на комментарий

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

Добавлено  Опричник,

Перемещено.

Ссылка на комментарий

@abramcumner ну смотри - в bin_x64 кроме вот этих фалов ничего нет. Если запускаю прям оттуда, без скрещивания с бином оригинального, выдает вот это

18 часов назад, abramcumner сказал:

"Ванильный" - это случайно не стимовский ТЧ?

нет, не стимовская, а версия, что со сталкер-портала (там ещё X-Ray правленный к нему идет и 3 патча - 4, 5 и 6 версиии)

 

Раньше помню достаточно было скрестить бин оригинала и бин ОГСР и все работало как часы, щас же так не работает.

Изменено пользователем DarkSnowder
  • Жуть! 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

@abramcumner Я снимаю свою маску! Поставил Openal и вправду все заработало, даже без скрещивания. Эх, жаль что сами разрабы движка не дали наводку на эту прогу. А то и Дирех обновлял, и С++, и Фрейм Нетворк - всё впустую. Ну теперь хоть смогу пробовать заняться дальнейшей разработкой мода - движок ибо хорошо в отлове багов и косяков.

  • Сомнительно 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий
2 часа назад, DarkSnowder сказал:

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

Жаль, что кое-кто не умеет ни читать, ни пользоваться поиском. Сочиняя небылицы.

  • Согласен 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
2 часа назад, DarkSnowder сказал:

А то и Дирех обновлял, и С++

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

  • Согласен 1
Ссылка на комментарий

@Voxhen Как же не поднимают, если в чистой версии ТЧ есть чит с починкой пушек через сброс их неписям (желательно, зомбированным – у простых отбирать сложно). ЕМНИП, ограничений только два: пушка должна быть лучше по рангу, и итоговое состояние будет не выше 80%.

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий

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

Скрытый текст

FATAL ERROR

[error]Expression    : assertion failed
[error]Function      : FS_Path::_update
[error]File          : D:\a\OGSR-Engine\OGSR-Engine\ogsr_engine\xrCore\LocatorAPI_defs.cpp
[error]Line          : 97
[error]Description   : src

полный лог

 

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий
23 часа назад, DarkSnowder сказал:

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

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

  • Нравится 3
Ссылка на комментарий

@DarkSnowder у какой-то аномалии указал постпроцесс, у которого не прописаны ppe_file или pp_eff_name.

 

Попробуй запустить отладочный движок. Может он выдаст более подробную информацию.

 

  • Согласен 1
  • Полезно 1
Ссылка на комментарий

@I am Dead ну не все же спецы во всех направлениях. Я больше по СДК - локации, компиляции, расстановка декора - это мое. Скрипты - тугая вещь для меня, но когда работаешь в одиночку, приходиться задавать глупые вопросы на поприщах, где ты не шаришь.

  • Согласен 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

Народ, кто может подсказать где я тут накосячил

Скрытый текст

   <game_task id="hand_zombie">
        <title>hand_zombie</title>
        <objective>
            <text>hand_zombie_start</text>
            <icon>ui_iconsTotal_mutant</icon>
            <infoportion_complete>chern_joe_hand_have</infoportion_complete>
            <article>tex_take_zombie</article>
        </objective>
        <objective>
            <text>hand_zombie_start</text>
            <function_complete>dialog_drda.chern_joe_hand_gave</function_complete>
            <infoportion_set_complete>chern_joe_hand_gave</infoportion_set_complete>
        </objective>
        <objective>
            <text>hand_zombie_done</text>
            <map_location_type hint="Айвар">blue_location</map_location_type>
            <object_story_id>chern_barman</object_story_id>
            <infoportion_complete>chern_joe_hand_have</infoportion_complete>
        </objective>
    </game_task>

Скрытый текст

--' проверим наличие 10 рук зомби для Айварыча
function chern_joe_hand_have() 
        return sak.have_item_namber("mutant_part_zombi_hand",10) ~= false
end

--' отдадим 10 рук зомби Айвару дабы получить зхабар и призвание
function chern_joe_hand_gave(first_speaker, second_speaker)
        dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "mutant_part_zombi_hand", 10)
        dialogs.relocate_money(second_speaker, 2000, "in")
        dialogs.relocate_item_section_to_actor(first_speaker, second_speaker, "wpn_ak74")
        second_speaker:set_relation(game_object.friend, first_speaker)
        db.actor:change_character_reputation(db.actor:character_reputation() + 10)
end

в итоге после диалога на взятие квеста вылетает вот с этим

Скрытый текст

[11.06.24 12:55:13.749] [123268] ! Unknown command: :*INFO*: npc='single_player' id='chern_joe_hand_start'
[11.06.24 12:55:13.772] [123268] *********************************************************************************
[11.06.24 12:55:13.772] [123268] [print_output([CScriptEngine::lua_pcall_failed])] SCRIPT RUNTIME ERROR:
d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:326: attempt to index local 'npc' (a number value)
stack traceback:
    [C]: in function '__index'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:326: in function 'who_is_npc'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:310: in function 'relocate_item_section_from_actor'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialog_drda.script:8: in function <d:\s.t.a.l.k.e.r\gamedata\scripts\dialog_drda.script:7>
[11.06.24 12:55:13.772] [123268] *********************************************************************************
[11.06.24 12:55:13.772] [123268] 
FATAL ERROR

[error]Expression    : FATAL ERROR
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : D:\a\OGSR-Engine\OGSR-Engine\ogsr_engine\COMMON_AI\script_engine.cpp
[error]Line          : 60
[error]Description   : [CScriptEngine::lua_pcall_failed]: d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:326: attempt to index local 'npc' (a number value)


[11.06.24 12:55:13.772] [123268] ***************************[ScriptCrashHandler]**********************************
[11.06.24 12:55:13.772] [123268] stack traceback:
    [C]: in function '__index'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:326: in function 'who_is_npc'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:310: in function 'relocate_item_section_from_actor'
    d:\s.t.a.l.k.e.r\gamedata\scripts\dialog_drda.script:8: in function <d:\s.t.a.l.k.e.r\gamedata\scripts\dialog_drda.script:7>
[11.06.24 12:55:13.772] [123268]     Locals: 
[11.06.24 12:55:13.772] [123268]      string (*temporary) : d:\s.t.a.l.k.e.r\gamedata\scripts\dialogs.script:326: attempt to index local 'npc' (a number value)
[11.06.24 12:55:13.772] [123268]     End
[11.06.24 12:55:13.772] [123268]     Locals: 
[11.06.24 12:55:13.772] [123268]      string first_speaker : hand_zombie
[11.06.24 12:55:13.772] [123268]      number second_speaker : 1.000000
[11.06.24 12:55:13.772] [123268]      number npc : 1.000000
[11.06.24 12:55:13.772] [123268]      number (*temporary) : 0.000000
[11.06.24 12:55:13.772] [123268]      number (*temporary) : 0.000000
[11.06.24 12:55:13.772] [123268]      userdata (*temporary) : (class CScriptGameObject): 00000556F87C5CE0
[11.06.24 12:55:13.772] [123268]      number (*temporary) : 1.000000
[11.06.24 12:55:13.772] [123268]      string (*temporary) : attempt to index local 'npc' (a number value)
[11.06.24 12:55:13.772] [123268]     End
[11.06.24 12:55:13.772] [123268]     Locals: 
[11.06.24 12:55:13.772] [123268]      string first_speaker : hand_zombie
[11.06.24 12:55:13.772] [123268]      number second_speaker : 1.000000
[11.06.24 12:55:13.772] [123268]      string section : mutant_part_zombi_hand
[11.06.24 12:55:13.772] [123268]     End
[11.06.24 12:55:13.772] [123268]     Locals: 
[11.06.24 12:55:13.772] [123268]      string first_speaker : hand_zombie
[11.06.24 12:55:13.772] [123268]      number second_speaker : 1.000000
[11.06.24 12:55:13.772] [123268]     End
[11.06.24 12:55:13.772] [123268] *********************************************************************************
[11.06.24 12:55:13.772] [123268] ********************************************************************************
[11.06.24 12:55:13.772] [123268] !![LogStackTrace] Thread: [X-RAY Primary thread]
[11.06.24 12:55:14.018] [123268] !!stack trace:

ссылается на function chern_joe_hand_gave из  скрипт-файла dialog_drda (строка как раз 7)

Брал за основу уже готовый материал, функции получения-сдачи предметов тоже из ванили ТЧ брал. Может Ваш меткий глаз подскажет, где я накосячить успел

Скрытый текст

<info_portion id="chern_joe_hand_start">
        <task>hand_zombie</task>
    </info_portion>
    <info_portion id="chern_joe_hand_gave"></info_portion>
    <info_portion id="chern_joe_hand_have"></info_portion>

 

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

@DarkSnowder не правильно вызываешь dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "mutant_part_zombi_hand", 10). У нее похоже другой порядок аргументов.

 

Найди эту функцию в dialogs.script и проверь какие аргументы ей надо передавать.

Изменено пользователем abramcumner
  • Согласен 1
Ссылка на комментарий

Функция dialogs.relocate_item_section_from_actor, куда транслируются параметры из функции dialog_drda.chern_joe_hand_gave, требует на входе передачи первого и второго собеседников. Но указываемая в свойстве квеста <function_complete> функция вызывается совсем не с этими параметрами (ведь там нет диалога), а с такими: (task, objective), где task - идентификатор квеста, а objective - число, предположительно показывающее статус задания. Вот и выходит, что в переменную second_speaker вместо второго собеседника попадает число 1,0 (см. лог), а в переменную first_speaker - id квеста вместо ожидаемого первого собеседника.

Да, и в ванильном ТЧ функций relocate_item_section_from_actor, relocate_item_section_to_actor и who_is_npc нет, ты их брал откуда-то ещё, например из ЧН (где они как раз присутствуют).

Изменено пользователем Kirgudu
  • Нравится 1
  • Полезно 1
Ссылка на комментарий

@Kirgudu @abramcumner  c ЧН да  - функцию добавлял, видимо она не подходит для диалога особо.

К сожалению в ванильном ТЧ нет ни одной функции передачи одних и тех-же предметов - везде предмет в единственном числе (решил взять функции что в Солянке 2010 использовались за авторством АМК и Сяка, но даже они вылет выдают, даже когда всё нужное переносишь). Как ж тут выкрутиться то?

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

Эти функции не подходят для использования в качестве завершающих в квесте, а вот как раз для диалога они прекрасно подходят, поскольку именно в диалоге движок формирует и передаёт в вызываемую функцию параметры first_speaker и second_speaker.

Соответственно, вызывать функцию chern_joe_hand_gave необходимо из диалога при нужном ответе, указав ссылку на неё в элементе <action>. Возможно, инфопорцию chern_joe_hand_gave тоже следует выдавать из диалога.

Изменено пользователем Kirgudu
  • Полезно 1
Ссылка на комментарий

народ, вот кто может сказать в чём может быть связан баг с появлением огромного кол-ва патронов, даже если у НПС нету оружия, которое эти патроны использует

вот пример - 560 патронов, хотя у НПС даже оружия нужного не было

Скрытый текст

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[ammo_7.62х25_fmj]:ammo_base
GroupControlSection        = spawn_group
discovery_dependency     = 
$spawn            = "weapons\ammo\ammo_7.62х25_fmj" ; option for Level Editor
class            = AMMO
cform                   = skeleton
visual                  = equipments\trade\item_ammo.ogf
description    = enc_weapons1_ammo_ammo-7.62x25-p
$prefetch                 = 64

cost                    = 260
box_size        = 20
inv_name                = ammo-7.62x39-fmj
inv_name_short            = ammo-7.62x39-fmj_s

inv_weight            = .22
inv_grid_width            = 1
inv_grid_height            = 1
inv_grid_x                = 20
inv_grid_y                = 11

k_dist            = 1.0
k_disp            = 0.75
k_hit            = 1.54
k_impulse        = 0
k_pierce        = 1.09
impair            = 1.05 ; 1.0
buck_shot        = 1
tracer            = off        ;  off
wm_size         = 0.068

прописывал эти патроны в death_generic полностью по образцу патронов 9x18, но в итоге в игре постоянно такой вот баг.

  • Жуть! 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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