30

» WarCraft 3 / Проблемы со скилом.

я пытался что-то подобное сделать перестает работать вообще.
А ты понимаешь, как оно работает?
30

» WarCraft 3 / Проблемы со скилом.

тут все нормально работает.
Ни на что не намекает?
Загруженные файлы
30

» WarCraft 3 / Проблемы со скилом.

gellin, самое интересное, пулемет работает по этому же принципу только там намного больше происходит и память не забивается.
Код пулемёта в студию.
30

» WarCraft 3 / Проблемы со скилом.

Если плодить утечки 50 раз в секунду, то с фпс ничего хорошего не случится.
Можешь установить реальный счётчик хэндлов и посмотреть, как их количество стремится в космос.
Загруженные файлы
30

» WarCraft 3 / 14. Структуры

и главное - что это даёт уникального на практике?
Это даёт большую связанность и контроль проекта и уменьшает количество копипаста за счёт наследования.
И второй нюанс - а если мне надо будет поправить конечный jass - код? Без vjass?
Если понадобилось править скомпилированный jass, то разработка явно свернула не туда.
30

» WarCraft 3 / EnumDestructablesInRectAll случайно не вызывает утечки?

В итоге оказали кодерам медвежью услугу и лишний геморрой.
Кодеры прекрасно пользуются нативками и не парятся, а вот гуишники...
лишний геморрой с утечками и усложнением и кривостью гуишного кода на выходе.
Утечки это следствие отсутствия сборщика мусора. А гуи сделан для простых действий, наподобие всяких кинематик. То, что на нём пытаются делать сложные системы это проблема отдельно взятых личностей.
30

» WarCraft 3 / EnumDestructablesInRectAll случайно не вызывает утечки?

это не дублер, а вариант функции без boolexpr
Что мешало null передать?
Просто ради гуя все нативки были обёрнуты, чтоб при изменении кода движка гуя не компилить всё лишний раз.
в редакторе делаешь Ctrl+ЛКМ кликаешь и смотришь сурс
Там гуй Custom Code, а статьи читать нынче не модно.
30

» WarCraft 3 / EnumDestructablesInRectAll случайно не вызывает утечки?

Просто сейчас ищу где какие утечки есть, чтобы их исправить.
Заниматься этим на гуях неблагодарное дело.
Можешь заюзать реальный Handle Counter для более точного отлова утечек.
И я надеюсь, ты по каждой функции не будешь вопрос создавать.
30

» WarCraft 3 / EnumDestructablesInRectAll случайно не вызывает утечки?

function EnumDestructablesInRectAll takes rect r, code actionFunc returns nothing
    call EnumDestructablesInRect(r, null, actionFunc)
endfunction
native EnumDestructablesInRect takes rect r, boolexpr filter, code actionFunc returns nothing
Она нативку вызывает, чему там утекать?
30

» WarCraft 3 / Как вернуть окраску юнита

В отряде тип юнита уже не один, т к командир имеет требования к пище и в триггере удобнее указать отдельно командира и отдельно юнита не командира, чем указывать тому же типу блокирование на потребление пищи и т д. Проще в шаблонном плане короче.
Проще то, что в итоге уменьшит количество ручной работы в РО.
А вот это уж точно не является проблемой, вот ни сколько
Добавление улучшений тоже придётся между двумя игроками синхронизировать. Ну а попытка запустить карту на рефе привнесёт многие веселья.
Может и так, но 1.26 вроде имеет старое дурацкое растянутое разрешение от которого я отвык и возвращаться к изображению 2002г от которого отвык как то уныло, но может быть и нужно.
Карты созданные для 1.26 прекрасно работают для высших патчей.
Для 1.28 зинк скрипты не работают?
Они даже на рефе работают.
Почему люди не будут пользоваться на 1.28?
Потому что люди уже скачали 1.26.
В общем смысл основной того, что бы дамик не превратился в рекрута в гуще врагов что бы сразу умереть в дамика
Что ему мешает превратиться из даммика в юнита в гуще врагов?
в которой вторая форма изменена на Мертвый юнит dammy
Что мешает просто заменить юнита руками?
30

» WarCraft 3 / Как вернуть окраску юнита

в гуи у меня было три важных стартовых триггера от которых появляются отряды
Рядовому игроку неважно, какие триггеры, ему важно юнитов дозаказть. И это нужно каким-то образом отобразить в интерфейсе.
30

» WarCraft 3 / Как вернуть окраску юнита

По поводу задания возможно лучше будет перенести тему в др раздел или еще куда.
Это обсуждение напрямую касается темы вопроса, так что можно и здесь. Trust me, im admin.
не знаю правильно или нет определять подобное как dammy, но мне так удобнее.
Правильно пишется dummy.
Отряд состоит минимум из 2х видов юнитов.
Если тип солдата один, то можно было считерить с равкодами.
Так же все это осуществлялось на минимальной версии вара (1.28)
Советую отталкиваться от 1.26, очень популярный патч. Особенно если ты хочешь, чтоб твоей наработкой другие пользовались.
это для того что бы дамки не отправлялись в гущу врагов не имея показателя атаки, а в момент перехода в стадию изначальной формы (пополнения отряда типа новым юнитом) не оказались в в этой самой гуще врагов опять отхватив люлей за 3 сек. дамки не имеют физ масштаба что бы об них не толпились живые и имеют нулевую модель - bugger
Если у юнита нет коллизии, то при создании юнита с коллизией в гуще врагов, его всё равно выбросит на свободное место. Не вижу смысла переусложнять с даммиком.
обязательные дополнительные 12 цветов игрока и они в системе как дублеры первых 12 цветов игрока
Дублировать войска другим игроком влечёт за собой дополнительный гемморой со способностями. Лучше в попытаться в рамках одного игрока разруливать.
И каким образом происходит восполнение юнитов в отряде? В той же вахе, юнитов в отряде необходимо было дозаказывать.
30

» WarCraft 3 / Как вернуть окраску юнита

это куча утечек при отдаче приказов отрядам и скорее всего еще чем то, более 8000 за полторы минуты игры
Это не утечки, а хэндлы. В пустой карте их почему-то будет 1000. В твоём примере карта стартанула со счётчиком 7000 и буквально за минуту управления юнитами, прибавилась ещё 1000.
В проверке на хэндлы более важен рост значения. Если количество держится в районе одной некой величины, то с картой всё норм. Если же улетает в космос, то нужно что-то решать.
БД это что?
База данный. Конечная реализация не особо важна, главное принцип.
Мне предлагали какой то способ с хэндл таблицей и ключом, но я в этом вообще не разбираюсь.
Принцип достаточно прост. Смотри, можешь представить себе массив чисел, это не сложно:
[10, 20, 30]
запишем рядом с числами их индекс:
[0:10, 1:20, 2:30]
ззаменим числа массивами, и получим так называемый двумерный массив:
[0:[1, 20], 1:[3, 40], 2:[5, 60]]
проставим индексы во вложенном массиве
[0:[0:1, 1:20], 1:[0:3, 1:40], 2:[0:5, 1:60]]
Наконец-то вспомним, что хэндл юнита, таймера, декорации, предмета это уникальное число и отформатируем для удобства массив:
[
	0: [
			0:1,
			1:20
		],
	1: [
			0:3,
			1:40
		],
	2: [
			0:5,
			1:60
		]
]
Если на данном этапе ты понимаешь, почему элемент [0][1] это 20, то не всё ещё потеряно. Осталось перевести эту запись на язык варкрафта:
native SaveInteger takes hashtable table, integer parentKey, integer childKey, integer value returns nothing
В нашем случае это будет выглядеть
call SaveInteger(Таблица, 0, 1, 20)
Осталось ещё добавить, что в отличие от массивов, ключи можно выбирать произвольные и ничто не запрещает сразу сделать так:
call SaveStr(Таблица, 10, 40, "Я умею работать с хэштаблицами.")
От меня точно расписанное задание?
Как работает система отрядов вахи я знаю. Но есть ньюансы:
  • У коммандира только один тип подчинённых?
  • Каким образом происходит дозаказ новых подчинённых?
  • Какие ещё механики отрядов нужны?
Он в джассе будет?
Он будет в Зинке.
30

» Warcraft 3 Russia iCCup community | REBORN! (GL) / Рассказ о Warcraft 3 Russia iCCup community | REBORN! (GL)

Полностью согласен, но и мы в этом виновны. Что люди донатят в тот же iCCup чтобы получать преимущество перед другими игроками. На эти деньги создаются лаунчеры.
Виноваты мапмейкеры, которые не смогли навязать аудитории правильные потребности. Ну и тотальное неумение работать в комманде.
30

» Warcraft 3 Russia iCCup community | REBORN! (GL) / Рассказ о Warcraft 3 Russia iCCup community | REBORN! (GL)

Куда катить Warcraft, многие понять не могут, как и МЫ!
В сторону кастомных лаунчеров и гриндилок с донатами.
30

» WarCraft 3 / Применить "очищение" на всех юнитов в области одним заклинанием

там на джас, я его не знаю.
Там zinc. Что мешает в нём разобраться?
Мне бы подстроить похожее с центром на выбранном юните и моим очищением, но сам я такое там не реализую.
Ну тогда остаётся или найти нужное заклинание или подождать, пока гуишники ответят.
30

» WarCraft 3 / Как вернуть окраску юнита

Код и есть простой текстовый файл с определённым шаблоном.
На гуях устранять утечки муторно, проще с кодом работать.
ТЗ это техническое задание. Систему отрядов напишу по доброте душевной, ибо над ней ещё не работал.
30

» WarCraft 3 / TESH для Reforged

PT153, эх жаль не на впсь экран. Это задача разрабов на ьудущее
lua + ide на весь экран.
30

» WarCraft 3 / Как вернуть окраску юнита

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