Сделал бой с боссом в темнице. Для портрета главного гада взял этого стрёмного синего гачи-демона и основательно перекрасил. Потом, наверное, выложу урок, что там с этим боем происходило.
Кроме этого я наконец-то решил (хочется думать) проблему с одной ошибкой, которую видел иногда на стримах, но не мог поймать у себя. И тут, короче, будет история о том, что когда делаешь большую игру, где всё на всё влияет, баги порой вылезают самые неожиданные и имеют склонность самозарождаться и нарастать снежным комом. Приготовьтесь, вы, наверное мало что поймёте, излагать я буду сумбурно, но мне хочется об этом рассказать.
Итак, выяснилось, что баг появляется в тот момент, когда враг атакует и нарывается на контратаку. Дело в том, что контратака — это отдельный прокачиваемый навык отдельного класса, и если её не качать, то и шансов нарваться на этот баг нет. И вот вдруг я начинаю получать этот баг в 100% случаев, а значит появляется возможность отследить его происхождение и внести правки в плагин, который его создаёт (Дарчан, ещё раз большое спасибо!).
Но почему вдруг этот баг проявился? А перед этим я решил изменить способности у паладина и сделать ему навык щита более мощным, но работающим не постоянно, а только в момент блока. И именно в третьем, максимальном уровне этого навыка я поставил 100% контратаку (временно, просто чтобы протестить). Но почему же этот баф висел на паладине постоянно, даже без использования блока? А для этого надо сказать, что многие классы имеют навыки, которые дают им различные бафы в начале битвы, и после эти бафы висят на них всю битву. Кроме одного случая: если героя убивают и воскрешают во время битвы, то все бафы с него слетают. Дабы исправить это, я добавил во все воскрешающие заклинания и зелья возобновление бафов. И в бою это работало прекрасно. Однако я не учёл, что это будет работать и вне боя, и если оживить героя не в бою, то на него навесятся все положенные ему боевые бафы. Однако раньше это не играло роли, не было ничего страшного в том, что герои будут ходить по карте забафанными.
Однако с паладином было иначе. Во время тестов он у меня помер не в бою, я оживил его зельем, и на него наложился боевой баф от щита, но это был ещё прежний слабый постоянный баф. В этот момент я сохранился. А потом вдруг меня озарила идея, и я изменил этот баф так, чтобы он накладывался только в момент блоки и давал 100% контратаку. И потом, когда я загрузился, на паладине этот баф сохранился, но свойства его были совсем другие. Именно в этот момент я и пошёл тестировать битву с боссом и получил стабильное зависание игры с этим редким прежде багом!
Таким образом уникальное стечение обстоятельств помогло одному багу помог поймать другого. Сейчас я все их уже вылечил, но кто знает, какие ещё появятся в будущем...