В одной моей тд обширная часть способностей использует событие "юнит получает урон".
Это событие я добавляю триггерно для каждого нового созданного крипа. При добавлении событий хэндлборд фиксирует утечки. Слышал, что событие удаляется при удалении юнита, но даже когда юнит умирает, и я удаляю его из игры, всё не возвращается на свои места, утечки продолжают сидеть в памяти, засоряя её. Есть какая-та альтернатива добавлению ивента? Мемхак, динамические триггеры (создавать триггеры по ходу игры умею, а вот как правильно и безутечно удалять - не знаю)?
P.s.: утечки сразу не заметны, но при игре в 12 игроков на 10-20 минуте становятся ощутимы.
Добавил карту, создание юнитов идёт в 3-ёх триггерах
В папке "Spells" триггер " skeletons "
В папке "Spells" триггер " spiders "
В папке "CreepsSpawnSistem" триггер "CreepTimerExpires" - ОСНОВНОЙ триггер на создание юнитов, остальные предыдущие почти не используются.
Смерть юнита фиксируется триггером " unit dies " в папке инициализации, в нём же юнит и удаляется.
Сам триггер на отлов получаемого урона находится в папке "Spells" и имеет имя " DamageTakenCheck ".
При проверке советую поставить компьютеров на другие 11 слотов.

Принятый ответ

Не вызывает утечек.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
23
6 лет назад
0
утечки это текстаг точка эффекты и прочие что создает... думай
0
32
6 лет назад
0
Код покажите, уже если честно надоело гадать, ибо мест с утечками может быть 100500.
0
23
6 лет назад
0
quq_CCCP, ванга пришел не?
0
32
6 лет назад
0
pro100master:
quq_CCCP, ванга пришел не?
Не, так и не пришел...
0
30
6 лет назад
0
Не вызывает утечек.
Принятый ответ
0
2
6 лет назад
0
quq_CCCP, добавил карту, изменил описание
0
32
6 лет назад
0
ene241, мда, конверт с гуи, 100500 бж функций, сам код мне мало понятен, зачем?
Потом нет ни 1 фильтра, т.е в группу ты берешь и дохлых и живых, нет проверок что урон 0.,
"Ну а дело было не в бобине просто рукожоп сидел в кабине, сори конечно но проблема была не тут, а во всем коде разом""
Вот вам код вашей карты и список утечек, меньше юзайте бж функции, старайтесь отойти от гуи конструкций, ну а так же есть тула "JASS script Helper" и её аналоги, она ищет утечки, нерационально использованные переменные и функции. Пока вы не научились все делать сами юзайте софт, и обязательно все получится без утечек и проблем.
Загруженные файлы
0
2
6 лет назад
0
quq_CCCP, первый кусок твоего файла - утечки от стандартный функций инициализации карты, это даже не моё. Вторая часть - "псевдоутечки", т.е. то, что я, блин, пофиксил заранее. Обнуляя переменные и уничтожая точки. Ты код вообще открывал или просто засунул его в машину и написал про рукожопа?
0
32
6 лет назад
0
ene241, открывал, посмотрел указанные тобой триггеры, я описал что там есть проблемы, таких вот явных утечек нету, то что есть я естественно проверил софтом ибо ковырять кажую функцию твоей карты как то не сильно хотелось, сам понимаешь. Введи фильтры = у тебя выбираются дохлые. и проверок на 0.00 урона нету (дебаффы наносят 0.00 ед урона при появлении или снятии, многие абилки при касте наносят цели 0.00 ед. урона)
Локейшены - зачем ты их юзаешь, я написал что уж сразу координатами, потом очень странное ветвление с екзекутами других триггеров? зачем? У тебя есть функции, вызывай по имени и все.
Сколько утечек за игру? Хендл коюнтер улетает в небеса?
0
2
6 лет назад
0
quq_CCCP, дохлых юнитов не выбираю, т.к. дохлых юнитов нету. Все юниты при смерти ремуваются из игры триггером " unit dies ".
Проверку поставлю, мб чуть меньше лагать начнёт, за это спасибо. За 15 мин игры с людьми перестало работать почти всё - от задержки приказа (некоторые юниты останавливаются и не идут) до отказа зданий улучшаться (задержка в 2-3 минуты перед началом грейда). При игре с афк ботами на этих слотах за 15 мин.:
Хэндлборд сперва уменьшается, первые минуты 3 (2 волны).
Потом начинает расти и за 2-3 мин. возвращается в нормальное состояние.
За 15 первых мин. игры в сумме капает примерно 3к хэндлов, начинает подлагивать.
На 30-35 минуте игры начинает ломаться код: перестаёт удалять юнитов (и некоторые другие его функции) триггер " unit dies ", утечки наростают ещё быстрее, играть становится невозможно. Хотя до этой минуты в теории игра дойти не должна.
0
23
6 лет назад
0
Чем не угодил мощный проверка утечки www.hiveworkshop.com/jasschecker
а предметы удаляете? например руны тоже надо удалять так как он после разрушение навсегда останет в игре пока не очистите вручную
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.