Доброго времени суток всем.
Создаю карты в свое удовольствие и столкнулся с тем что во время проверки карты (с ботами) - получаю фатальную ошибку, которую пытаюсь разобрать.
Читал много статей, подобные этим:
Где рассказывают что можно установить Debug который может помочь отследить ошибку, при фатальности.
Но я не могу его установить, ибо при установке кода - редактор выдает много уведомлений об отсутствии строк и после отключает триггер полностью.
Я понимаю что неправильно его устанавливаю, поэтому это дополнительный мой вопрос к Вам.
Мои 2 вопроса, которые я бы хотел уточнить у профессиональных картоделов:
  1. Помогите расшифровать лог ошибки, которая у меня возникла на моей карте.
  2. Как устанавливать Debug, из ресурсов выше. Дабы после можно было отслеживать логи. (Инструкцию для чайника можно :с)
3(дополнительный вопрос). Как можно (или где можно научиться) расшифровать лог ошибки Варкрафта.
Сам лог с ошибкой: disk.yandex.com/d/4M0BC8EMcVdiLw
Сама фатальная ошибка: disk.yandex.com/i/sSjNgQ-OHfwe8w
Заранее спасибо Вам большое, за уделенное время и адекватные ответы. <3

я думал что в комьюнити нашем есть ребята, которые знают как отследить логи
ну не знаю комьюнити как комьюнити, половина толковых ребят бустанулись по карьерной ветке, а другая половина (или меньше) остались в варе, но они не особо горят желанием сидеть и отвечать на вопросы новичков, да и смотивировать их нормально только деньгами можно, это я тут лошок на энтузиазме (за лайки) пытаюсь тебе как-то помочь решить проблему, с горем пополам)
отследить то отследишь, даже просто те что варик тебе кидает, вот только ошибки могут быть абсолютно по разным причинам, вообще, что-то можно понять, как например утечки памяти, а что-то тупо рандом, тут тебе вряд ли какой либо профи уже поможет
системы я разобрал, нужное нашёл и перенёс на джасс, соответственно тебе тупо после каждой функции, после каждого действия нужно добавлять инфу в лог
в карте есть пример с крашем, когда юниту выдаёшь геройский инвентарь и даёшь книжку на статы
сам лог сохраняется на диск С в папке дебага (ты можешь поменять путь), в нём ты увидишь примерно это на тестовой карте
оно по факту вообще тебе может не помочь, реально, потому что, к примеру, геройский инвентарь ты можешь дать со старта игры, а крашнет из-за него спустя 10 минут игры, когда будут куча совсем других действий которые могли и не повлиять на краш вообще
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
zpxo, ну сек, для начала попробуй такую конструкцию, если эффект не исчезает с юнитов сразу же как накладывается (то есть что ты вообще его видишь), то всё норм, но бывает так, что уничтожение эффекта не даёт последнему проиграть анимку
если ты создаёшь эффект в позиции юнита, а не на самом юните, то позицию тоже нужно переменить, создавать в ней, а потом удалять кастомскриптом вместе с эффектом

Я ели как нашел этот код, но мне кажется он неверный, либо я что-то не то делаю.
Он при инсталляции выдает кучу неверных строк и отключает триггер.
ты в каком редакторе работаешь? если джнгп то нужно включить вджасс и сджасс
(либо просто вджасс, если обернёшь таблицу рекордов в globals endglobals)
Спасибо, сегодня/завтра попробую.
Вопрос: А если я создам анимацию через способность (каст именно), вместо триггера. Будет ли засорять такая анимация память? Я думаю что эффекты из способностей самостоятельно удаляются по завершению? Или они привязаны к какой-то длительности? К примеру "Длительность воздействия на юнита".
Извините за мою наглость, но я овощ в коде(
А можно инструкцию как вджасс открыть? У меня просто редактор о.о
28
А если я создам анимацию через способность (каст именно), вместо триггера. Будет ли засорять такая анимация память? Я думаю что эффекты из способностей самостоятельно удаляются по завершению? Или они привязаны к какой-то длительности? К примеру "Длительность воздействия на юнита"
да, если через редактор объектов делать всё норм будет
zpxo:
А можно инструкцию как вджасс открыть?
ну тебе джнгп так-то нужен, это модифицированный редактор со снятыми лимитами и прочими ништячками, там с кодом намного удобнее работать и соответственно есть нужные диалекты, а вообще, я могу просто переписать тот код на обычный джасс, но тогда тебе нужно будет пару переменных создать и гуишный триггер
29
Предупреждение автору публикации

1 пункт: 10.1 Размещение нескольких вопросов в одном ресурсе.
2
1 пункт: 10.1 Размещение нескольких вопросов в одном ресурсе.
Извините заранее за нарушение пункта 10.1.
Но, вопрос по сути один, просто он разделен на 2 подпункта связанные между собой.
Лог + дебаг + счетчик хэндов = одна суть, в решении проблемы моей.

ну тебе джнгп так-то нужен, это модифицированный редактор со снятыми лимитами и прочими ништячками, там с кодом намного удобнее работать и соответственно есть нужные диалекты, а вообще, я могу просто переписать тот код на обычный джасс, но тогда тебе нужно будет пару переменных создать и гуишный триггер
По ссылке там 1.28 версии и 1.27 версии.
А я карту делаю на версию 1.26а - Редактор из раздела "1.27 и ниже экспериментальная сборка" будет работать с моей версией?
Если Вам не сложно я был бы рад получить от Вас тот код в джасс и краткую инструкцию по установке.

ну сек, для начала попробуй такую конструкцию, если эффект не исчезает с юнитов сразу же как накладывается (то есть что ты вообще его видишь), то всё норм, но бывает так, что уничтожение эффекта не даёт последнему проиграть анимку
Да, забыл написать. Я попробовал данный метод и вспомнил почему его не использовал. Ибо он сразу уничтожает анимацию, она только начинает воспроизведение и сразу удаляет ее из игры. Тем самым спецэффект не успевает толком воспроизвестись. А ожидание (wait) я туда не могу вставить, ибо через действие "Выбрать каждого..." ожидание не работает. 😰
28
zpxo, ты же сам заявил что у тебя 2 вопроса)
По ссылке там 1.28 версии и 1.27 версии.
А я карту делаю на версию 1.26а - Редактор из раздела "1.27 и ниже экспериментальная сборка" будет работать с моей версией?
по ссылке там всё нормально, я как бы сижу же на 1.26 и пользуюсь джнгп)
просто нажми на кнопку скачать
Если Вам не сложно я был бы рад получить от Вас тот код в джасс и краткую инструкцию по установке.
просто скопируй и закинь триггер к себе в карту

ладно, тот периодичный эффект что ты накладываешь на всех юнитов он одинаковый или для каких-то отличается? можно просто в массив все эффекты записать, запустить таймер и через время пройтись по ним и удалить, но если время разное, то вероятно придётся с периодиком запускать с указанием времени анимации

и ещё, микрофриз происходит прям в самом начале игры или спустя какое-то время?
2
ладно, тот периодичный эффект что ты накладываешь на всех юнитов он одинаковый или для каких-то отличается? можно просто в массив все эффекты записать, запустить таймер и через время пройтись по ним и удалить, но если время разное, то вероятно придётся с периодиком запускать с указанием времени анимации
Действие "Выбрать каждого юнита..." совершает действия в том количестве - сколько юнитов выбрано.
Я там просто логически не могу понять как их всех засунуть в массив переменной с типом "Спецэффект". Ибо он не меняет цифру массива, а просто перезаписывает каждый раз переменную с выбором каждого юнита. 😬
и ещё, микрофриз происходит прям в самом начале игры или спустя какое-то время?
Спустя некоторое время. Но я думаю это происходит из-за того что Вы писали выше.
Так как у меня много триггеров связано было с созданием спецэффекта на юните. Без удаления.
Поэтому я сейчас переиграл этот момент. Буду наблюдать.
просто скопируй и закинь триггер к себе в карту
Спасибо огроменное, добрый человек. сейчас попробую загрузить. ⭐️

Спасибо огроменное, добрый человек. сейчас попробую загрузить. ⭐️
А показатель, со старта запуска 4100 - это много? 😆
28
zpxo, вот тебе маленький пример, на его основе сделай удаление всех эффектов которые не удаляются сразу после создания, я сделал на примере хила (он тоже не проигрывает до конца анимку если удалить)
ты можешь отключить первые 2 триггера после коммента и включить последний чтобы наблюдать рост утечек
28
А показатель, со старта запуска 4100 - это много? 😆
нет, это мало, имей ввиду, хэндлы это юниты, разрушаемые декорации (деревья, баррикады), предметы, это всё не утечки само собой потому что используется всю игру, юниты и предметы удаляются при уничтожении спустя время (с рунами только беда может быть)

как бы по нормальному объяснить..
к тому, что утекает, ты не сможешь больше никогда обратиться если не сделаешь это прямо после использования или если не закинешь в глобалку, например к юниту ты можешь обратиться в любой момент игры просто выбрав его на карте или любыми другими событиями, а вот к эффекту, если ты не запеременишь его и не удалишь после анимации (как в примере выше), либо сразу же после создания не удалишь, если позволяет, обратиться больше никак не сможешь, нет такого действия допустим как "выбрать все эффекты на карте"

но повторюсь, утекают хэндлы, т.е. объекты. строки, реальные, целочисленные и подобное не течёт

вот тут подробнее
2
вот тебе маленький пример,
Спасибо, что-то не доперло сразу, что я могу внутри данного действия использовать арифметику с "+1".
Ведь это 100% дает возможность удалить эффекты которые были записаны ранее.
Это ведь правда круто!

нет, это мало, имей ввиду, хэндлы это юниты, разрушаемые декорации (деревья, баррикады), предметы, это всё не утечки само собой потому что используется всю игру, юниты и предметы удаляются при уничтожении спустя время (с рунами только беда может быть)
Спасибо большое Вам за помощь!
За уделенное время! Очень приятно что в наше время можно встретить хороших людей.
Спасибо, что помогли объяснить где может быть проблема и как её исключить методом оптимизации.
28
zpxo, успокойся, не спеши с благодарностями пока это реально не поможет решить проблему, если же всё окей то просто закрой вопрос
2
zpxo, успокойся, не спеши с благодарностями пока это реально не поможет решить проблему, если же всё окей то просто закрой вопрос
Сейчас карту тестил и произошел вновь фатал. Который сработал теперь в другом временном событии. (Который указал в шапке вопроса - там в другое время произошел сбой).
Счетчик показывал 7к+ и микролагов не было, после удаления спецэффектов.

Теперь сижу и ковыряю триггеры, ибо приблизительно понимаю в какой этап произошел фатал...
Думаю это из-за того что 1 триггер не отработал как следует свои действия в середине карты (микробаг, который я, наверное, совершил при написании триггера).
Сейчас буду смотреть, но если есть возможность разобрать лог и сказать где "пробел" - буду признателен.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.