24

» WarCraft 3 / Синхронизация в Lua

ScorpioT1000, ну да, в тех редких случаях, когда перебор хештаблицы имеет смысл - свсой набор ключей для перебора решает эту задачу.
24

» WarCraft 3 / Синхронизация в Lua

ScorpioT1000, избегать итераций по хешмапам чрез pairs - сами хешмапы работают отлично, проблемы начинаются только если полагаться на не гарантированный порядок ключей и это стандартно для многих реализаций хешмапы, не только в луа.
24

» WarCraft 3 / Как подогнать одеваемый доспех под нужную часть юнита?

знать бы, как вычислить смещение ).
SNART, ну так у тебя есть координаты кости-аттача, есть координаты накладки в желаемом положении, посчитай разницу и воспроизведи в том файле где только накладка, исходя из того, что ноль координат это так точка, за которую твоя накладка будет крепиться к аттачу...
24

» WarCraft 3 / Синхронизация в Lua

ScorpioT1000, ipairs же только для целочисленных ключей и, насколько я помню, от 1 до первой пустой ячейки. В то время как pairs это для перебора по ключам хештаблицы, которые могут быть произвольными.
24

» WarCraft 3 / Синхронизация в Lua

Если коротко - самом в луа не синкается принудительно ничего. Все что синкается и, соответственно, может привести к десинку - находится дальше, на уровне движка и логики игры.
Из вещей на которые стоит обратить внимание - перебор таблицы через pairs - поскольку таблицы в луа не гарантируют порядок хранения ключей, это может потенциально привести к тому, что перебор на разных машинах произойдет в разном порядке. В сферическом вакууме это не опасно, но если внутри перебора используется что-то подлежащее синку - здравствуй потенциальный рандомный десинк. Близы вроде как собирались это починить, но я бы не рисковал на это ставить и избегал бы перебора через pairs в местах где важен порядок выполнения итераций.
Что касается ручной синхронизации - близы завезли новые нативки и события для этого. Если упростить, регается триггер, который ловит события синхронизации и может вынуть из них переданные данные и затем используются нативки для передачи данных на синхронизацию.
Важный нюанс, на который также стоит обратить внимание - фреймы и некоторые действия с ними, скорее всего, частично синхронизированы - я видел репорты что реакция на нажатие кнопок в фреймах происходит с задержкой на пинг и синхронизацию. Но это может быть особенностями реализации конкретных видов фреймов или вобще кривым кодом на стороне автора этих репортов - сам я не проверял.
24

» WarCraft 3 / Как подогнать одеваемый доспех под нужную часть юнита?

Проще? Можно импортировать модель юнита и накладку в мдлвиз, подогнать накладку относительно юнита, вычислить нужное смещение относительно используемого аттача. Потом берется модель накладки отдельно от юнита, к ней применяется вычисленное смещение из предыдущего пункта, экспортируется, профит. Не знаю проще ли это, я знаю людей которые сломаются на попытке вычислить смещение.
24

» WarCraft 3 / Мгновенный каст способностей ? или без сбивания приказа

Ну или не гнаться за несбиванием текущего приказа и использовать канал, как в старые добрые времена.
24

» WarCraft 3 / Изменение отката способности [Reforge]

Bergi_Bear, да, визуально это выглядит чуть хуже, чем могло бы быть. Но автор вопроса то спрашивал, дословно:
Может есть какая то функция, которая бы запускала кд способности с указанным кд.
И именно такая функция имеется в наличии.
24

» WarCraft 3 / Изменение отката способности [Reforge]

В одном из последних патчей завезли функцию установки оставшегося отката.
24

» WarCraft 3 / Белая защита юнита [Reforge]

Steal nerves, автору вопроса нужна броня без учета бонусов. GetUnitArmor, если я не ошибаюсь, дает броню с учетом бонусов.
24

» WarCraft 3 / Белая защита юнита [Reforge]

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

» StarCraft 2 / какой код используется в редакторе galaxy

а можно сделать аниме карту и играть в нее с другими
Там же нет локальной сети - либо через сервера близов либо соло.

да гуй не слишком сложный и редактор похож на вариковский и игра тоже похоже на варик
Ты сильно недооцениваешь местный редактор данных, он же редактор объектов. Многих ломает уже тот факт, что юнит состоит из двух частей - логическая и визуальная, каждая из которых настраивается отдельно на разных вкладках редактора данных.
24

» StarCraft 2 / какой код используется в редакторе galaxy

Обнулять не надо. А про макс размер карты тебе расскажут когда ты попытаешься залить карту на сервера близов.

а то в говно доте 2 ничего не понятно
Ну, ждем пока тебя сломает редактор данных старкрафта2, он тоже сложный и непонятный т.к. слишком много умеет.
24

» StarCraft 2 / какой код используется в редакторе galaxy

Вот только большой необходимости писать на чистом Galaxy нет, в отличии от варкрафта. Местный ГУИ достаточно хорошо реализован, а большую часть задач можно и нужно решать в местном редакторе объектов, а не в триггерах.
24

» WarCraft 3 / Не удаляется способность

А с чего ты взял, что спустя время вейта у тебя юнит-цель заклинания по прежнему доступен к получению?
Записывай его в локальную переменную, если хочешь использовать вейт.
24

» WarCraft 3 / World Editor FileImport FIX

Ev3nt, я о том, что у тебя этот редактор без полного клиента нужной версии не запустится...
24

» WarCraft 3 / World Editor FileImport FIX

Мне бы редактор с той версии, тогда может быть и сделал бы.
Это врядли. Начиная с того, что он активнее защищает память процесса от внедрения и заканчивая тем, что ему casc а не mpq нужен для работы.
24

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Думал, близзы запретят
А смысл её запрещать, это ж не IO типа лоадфайла.
24

» Project: «Anger» / Окна и балконы + опрос

N7 Molot, Так уж получилось, что среди моих отложеных на потом проектов есть один, в котором среди прочего была тестовая сцена очень похожая на представленную в этой статье по методам построения. С корявым недоделанным инстансингом, избыточно дорогими материалами, динамическим редактированием домов, без множества необходимых оптимизаций добавленых позже, сцена с десятком девятиэтажных модульных домов выдавала 80 фпс в редакторе на моем ведре с древним i5 и не менее древним gtx760. Сомневаюсь что анрил энжайн и мои самопальные алгоритмы инстансинга настолько круче юнити и платных ассетов.
24

» WarCraft 3 / [Lua] Событие получения урона перестает срабатывать

Не стоит делать это внутри каждого триггера - можно одним инжектом вызывать функции инициализации для всех триггеров.

Рекомендую к изучению:
24

» WarCraft 3 / Lua или jass?

DarkLigthing, вставки кастомного кода отдельными строками никто не отменял, а конвертация гуи триггеров в код никак не помогает освоить локальные переменные - пользователю всеравно нужно где-то найти пример как это делается.