Новости Релиз Of Ash and Steel состоится 6 ноября
  • 10.991
  • 12
Of Ash and Steel: атмосферный экшен выходит 6 ноября 6 ноября станет важной датой для поклонников сложных и атмосферных игр - именно в этот день состоится релиз долгожданного проекта Of Ash and...
Новости В Of Ash and Steel начался закрытый плейтест
  • 13.677
  • 12
Разработчики "Русской Готики" объявили о старте закрытого плейтеста. Если вы оставляли заявку на участие, не забудьте проверить электронную почту или посмотреть свою библиотеку - возможно игра уже...
Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 7.341
  • 2
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...

В процессе Баг со статуэткой и кошельком

Автор
Автор
Tateos

Tateos

Постоялец
Участник форума
Регистрация
13 Дек 2024
Сообщения
74
Реакции
31
Баллы
31
Лучшие ответы
4
#11
@Tateos, да, дело не в статуэтке, а том что гг произносит "Белиар", это баг с движка идет. Надо подумать как пофиксить.
Видимо, проблема действительно в фразах ГГ. Только что столкнулся с этим же багом, но при других обстоятельствах: прочитав книгу, главный герой тоже произносит фразу, и если успеть заюзать кошелёк, возникает тот же баг с руками, как на видео. Ко всему прочему, после стрейфа (чтобы выйти из этой позы с руками) у меня блокируется весь инвентарь и кнопки WASD не работают. Приходится сохраняться и загружаться, это помогает вернуть управление в инвентаре.
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
30.125
Реакции
28.288
Баллы
1.496
Лучшие ответы
1.087
#12
@Tateos, это надо специально вызывать этот баг, ну статуэтку я починил, просто теперь знай что пока гг говорит лучше не юзать итемы. А если гг завис - всегда есть сброс анимации ctrl+alt+f8
 

Хедин

Хранитель мира
Пользователь VIP
Модостроитель
Почётный пользователь
Участник форума
Регистрация
10 Июл 2013
Сообщения
8.031
Реакции
11.412
Баллы
966
Лучшие ответы
135
#13
@Liker, я вспомнил кстати еще один вариант когда виснет, ты можешь в инвентаре что-то делать, а герой при начале грозы скажет гроза мать ее и приплывет. ))) Кстати после того как я у себя фикс сделал в НБ на запрет фраз ГГ во время открытого инвентаря, за эти годы ни разу такого не поймал.
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
30.125
Реакции
28.288
Баллы
1.496
Лучшие ответы
1.087
#14
@Хедин, так я это давно фиксил. Пока открыт инвентарь, фраза не запустится. Правда что будет если она запустилась и герой вошел в инвентарь.
 

Хедин

Хранитель мира
Пользователь VIP
Модостроитель
Почётный пользователь
Участник форума
Регистрация
10 Июл 2013
Сообщения
8.031
Реакции
11.412
Баллы
966
Лучшие ответы
135
#15
@Liker, а как у тебя тогда при открытом инвентаре фраза "Белиар" проходит? На мое видео посмотри, у меня тишина
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
30.125
Реакции
28.288
Баллы
1.496
Лучшие ответы
1.087
#16
@Хедин, потому что это фраза из-за статуэтки, я же блокировал конкретный фразы, а не весь звук в целом.
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
30.125
Реакции
28.288
Баллы
1.496
Лучшие ответы
1.087
#17
@Хедин, тогда выход простой, пока играет фраза = заблочить юзание итемов глобально и все. Я не хочу тратить время на кривой код пираний, который еще и был ухудшен множеством изменений.
 

TopLayer

Наемник
Участник форума
Регистрация
22 Апр 2017
Сообщения
961
Реакции
416
Баллы
266
Лучшие ответы
30
#18
Звуки можно делать без запуска катсцены, тогда новые команды не будут обрываться при её завершении

C++:
zCCSCutsceneContext* CreateCutsceneContext(oCNpc* npc, const zSTRING& name)
{
    if (auto* svmMan = ogame->GetSVMManager())
        if (auto* csMan = ogame->GetCutsceneManager())
            if (int id = svmMan->GetOU(name, npc->voice); id >= 0)
                if (csMan->LibValidateOU(id))
                    if (!csMan->LibIsSvmModuleRunning(id))
                        return ogame->GetWorld()->csPlayer->CreateNewOutputUnit(id, npc);

    return nullptr;
}

void AI_OutputSVM_NoCS(oCNpc* npc, const zSTRING& name)
{
    auto* context = CreateCutsceneContext(npc, name);

    if (!context)
        return;

    auto blockPosition = context->GetFirstBlockPosition();

    for (auto* message = context->GetNextMessage(blockPosition); message; message = context->GetNextMessage(blockPosition))
        if (auto* conversation = message->CastTo<oCMsgConversation>())
            if (conversation->subType == oCMsgConversation::EV_PLAYANISOUND)
            {
                npc->GetEM()->OnMessage(new oCMsgConversation{ oCMsgConversation::EV_PLAYSOUND, conversation->name, conversation->text }, npc);
                break;
            }

    context->Release();
}

ZEXTERNAL(AI_OutputSVM_NoCS);
 
Последнее редактирование:

Kim Ga-Ir

Мастер меча
Почётный пользователь
Участник форума
Регистрация
19 Янв 2018
Сообщения
5.576
Реакции
4.971
Баллы
627
Лучшие ответы
252
#19
@Хедин, тогда выход простой, пока играет фраза = заблочить юзание итемов глобально и все. Я не хочу тратить время на кривой код пираний, который еще и был ухудшен множеством изменений.
Сделай пж, например в начале игры когда попадаю в город, начинаю читать начальные книжки скопом и юзать щетку/метлу/мотыгу = ступор и заблоченный инвентарь. Почти всегда, лечится сохранением и перезагрузкой (минус шнапс на ДИ:))
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
30.125
Реакции
28.288
Баллы
1.496
Лучшие ответы
1.087
#20
@Agri, а разве герой там что-то говорит?
 
Сверху Снизу