Я около 5 лет не занимался своей картой, но сегодня пришло озарение и я сделал несколько систем. После чего обнаружил, что все триггеры не работают на карте, и выключение новых так же не помогло, только бекап. Слеплено все нормально на гуи + кс.
В общем-то вопрос - есть ли какое-то ограничение по кол-ву триггеров или возможно чего-то другого? сейчас в карте 25к декораций, чуть меньше 300 триггеров, около 2к нестандартных предметов.
В общем-то вопрос - есть ли какое-то ограничение по кол-ву триггеров или возможно чего-то другого? сейчас в карте 25к декораций, чуть меньше 300 триггеров, около 2к нестандартных предметов.
Помню, что раньше похожая проблема была - вроде бы при достижении определенного числа триггеров они все выключались, и ничего кроме бекапа не спасало.
Редактор jnpg и полный обвес на него присутствует.
Редактор jnpg и полный обвес на него присутствует.
Есть ограничения, или совпадение? Прошлого случая четко не помню.
Принятый ответ
Есть лимит на кол-во операций. Вы не 1 такой гуишник, уменьшайте число триггеров, покрайней мере со стандартной инициализацией.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован quq_CCCP
Отредактирован 8gabriel8
Но только такое копирование может привести к обрезанию реплик в триггерах, если они есть. Тут, наверное, влияет раскладка клавиатуры при копировании. Если, например, скопировать русский текст с английской раскладкой, то на выходе получается белиберда, а с русской нормально. Также русский символ занимает обычно вдвое больше места, чем английский, может быть поэтому длинные реплики при копировании укорачивает.
Из за того что в гуи все созданные триггеры имеют функцию инициализации, функция инициализации всех этих триггеров настолько забита действиями что упирается в лимит.
Отредактирован dave_wwid
Если нет, то было-бы логично сделать дополнительный триггер для запуска нескольких сотен( или тысяч) других триггеров.
Нужно не плодить триггеры бездумно, 300 триггеров это явно перебор, пишите на jass. Там вам не понадобится плодить триггеры, да и вовсе плодить по 4-5 триггеров для каждого героя не умно, долго и нефига неудобно.
Отредактирован nvc123
dave_wwid, кроме самой инициализации триггеров этот же поток занимается и другими вещами
создание юнитов и предметов на карте
инициализация начальных значений переменных(если в редакторе переменный у переменной стоит начальное значение отличное от "нет"/"0")
инициализация некоторых параметров карты(InitBlizzard и прочее)
т.е. сумма всего этого не должна превышать лимит потока
для сложной карты надо не более 10-15 триггеров
у гуишников не более 50(т.к. на гуи иначе никак)
если знаешь vjass то лучше создавать триггеры внутри библиотек(т.к. инициализация библиотеки идёт в отдельном потоке)
для всех заклинаний можно использовать 1 триггер с бд (недавно задавали вопрос на эту тему)
по крайней мере они занимают ровно столько же операций как и вывод текста на экран
Отредактирован nvc123
сейчас поищу старые результаты
quq_CCCP, память меня подвела
этот код заканчивается на выводе 14999
Отредактирован nvc123
только юниты и предметы
ну ещё и переменные
только чтобы забить поток нужно создать очень много юнитов(более 10000)
триггеров же нужно намного меньше
Декор создается через функцию жасса, но т.к. по умолчанию он идет в отдельном файле, то и в общем подсчете лимита в main он не участвует, ибо вызывается в другом "потоке".