4
13
4 года назад
4

» WarCraft 3 / Как "запаузить" любые действия с юнитом. (Не в прямом смысле)

Не устраивает на время передать героя нейтральному игроку?
0
13
4 года назад
0

» WarCraft 3 / [Lua] Совместная работа над WC3 проектами

Zetox, 'Warcraft III.exe' -launch -loadfile С:\\path\\to\\map
3
13
4 года назад
3

» WarCraft 3 / Несколько вопросов об утечках

1, 2. Утечки бывают разные, какие-то более тяжелые, какие-то менее. Стоит попробовать потестить на слабом компе, например в VirtualBox. А стоит ли это фиксить зависит от длительности сессии игры.
  1. Насколько знаю - нет.
  2. Хендл - ССЫЛКА на почти любой объект на карте: юниты, декорации и даже элементы интерфейса, в т.ч. стандартные. Счетчик лишь показывает количество этих ссылок. Утечками же можно считать только необоснованное увеличение их количества. Чаще всего это вызвано тем, что остались ссылки на пустые объекты.
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / Цикл от 1 до 5 не всегда до 5-ти

Дело в недостатке вашего понимая. Выложите кусок кода или скриншот с проблемной частью триггера, тогда можно будет поговорить предметно.
0
13
4 года назад
0

» WarCraft 3 / Экспорт/импорт информации между картой и сервером

Теоретически в плюс к хостботу можно сделать генерацию .bat файла ( с накоплением статистики по всем играть с участием данного игрока) и просить игроков его запустить для отправки статистики и/или для заявки на бан игрока.
1
13
4 года назад
1
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / Какая проверка будет наиболее подходящей выхода юнита из круга

Можно заполнить этот "овал" регионами с пересечениями. При входе в регион добавлять к счетчику для юнита +1, при выходе -1. Тогда если юнит не находится ни в одном регионе, его счетчик равен 0. А пронумеровав регионы степенями двойки и прибавляя/вычитая эти номера из счетчика можно еще и определить последний регион в котором был юнит.
Если твоя арена имеет форму близкую к овалу, можно использовать формулу для эллипса. Точно не припомню, но надо найти константы двух его фокусов и его "радиус", а условием пребывания юнита внутри эллипса будет что сумма расстояний до этих фокусов меньше, чем "радиус" эллипса.
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / что то не так с LUA

Pashka5, немного упростил. Для того чтобы протестировать функцию, нужно вызвать savetyRun(функция, ее аргументы), тогда при получении ошибки она будет напечатана в чат. Если в последних патчах попробовать вызвать функцию collectgarbage, то получишь однозначный ответ, что ее не существует.
P.S. внутри pcall удобно использовать функцию error, про нее можно почитать в мануалах к луа

Например, savetyRun(collectgarbage, "collect")
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / что то не так с LUA

В патче 1.32 ликвидировали ручной сборщик мусора

Чтобы увидеть ошибку можно использовать обертку
function savetyRun(func,...)
        local success, result = pcall(func, ...)
        if success then
            return result
        else
            print(result)
        end
end
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / lua переменная и таблица

Pashka5, можно так:
local TABLE
function someFunction()
    TABLE = TABLE or {}
    for i=0,10 do
        TABLE[i]="assa"
    end
end
Таким образом если TABLE == nil, будет инициализирована новая таблица. Но не стоит экономить на спичках во время пожара.
0
13
4 года назад
0

» WarCraft 3 / Проверка приближения даммика

Borodach, тогда лучше давать абилку с нужной дальностью и отлавливать ее
0
13
4 года назад
0

» WarCraft 3 / Релиз Reforged, оценки метакритиков, блогеры не могут ошибаться

PornoMishka, отсутсвие сохранений - главная проблема, например, в SunkenCity уже не поиграешь...
0
13
4 года назад
0

» WarCraft 3 / Релиз Reforged, оценки метакритиков, блогеры не могут ошибаться

Zetox, не проверял, но слышал можно. И виртуалка не нужна, теперь можно несколько окон открывать
0
13
4 года назад
0

» WarCraft 3 / garbagecollect

prog, хм... Даже в голову не приходило, пожалуй при таком раскаде вовсе откажусь от автосборки такого мусора
0
13
4 года назад
0

» WarCraft 3 / Новые туториалы

Туториалов по lua в сети много, и Nazar регулярно добавляет наглядные примеры в наработки.
0
13
4 года назад
0

» WarCraft 3 / ООП lua

NazarPunk, да, ООП ради ООП. Да он только создает лишнюю нагрузку и да в wc3 можно спокойно жить без него. Вообще ООП нахер не нужен и иногда только усложняет. Мне так проще видеть структуру проекта и определять необходимый функционал, плюс это ограничивает некоторые мои ошибки. Зачем используется, например, glib? Который вообще весьма уродлив, на мой взгляд.
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / ООП lua

ScorpioT1000, в луа это можно решить либами на основе таблиц. Тут больше в мировоззрении дело и в поставленной задаче. Где-то удобнее ООП, где-то функциональное...
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / ООП lua

ScorpioT1000, да, было бы неплохо всю инфу по lua разжевать и залить в одно место. А я только пару дней назад узнал, что у функции error есть второй параметр, который крайне необходим в реалиях wc3
0
13
4 года назад
0

» WarCraft 3 / Заряды способности

NazarPunk, и заряды в комплекте, отличный вариант
0
13
4 года назад
Отредактирован Nelloy
0

» WarCraft 3 / Заряды способности

Bergi_Bear, действительно, не пришло в голову... Можно попробовать на фреймы кнопок абилок повесить скрытие зарядов, а на кнопку 11 скрытие/показ в зависимости от текущего состояния. Но все эти навороты приводят к тому что через замену иконок проще, правда нужно много иконок.
0
13
4 года назад
0

» WarCraft 3 / Заряды способности

Bergi_Bear, если устраивает отображение зарядов только в случае выбора одного юнита, то можно сделать наследников параметров юнита, тогда они будут видны только одновременно с этим фреймом. Чтобы цифры не перекрывали кнопки, поставь им лвл меньше чем у кнопок. Но все равно придется детектить текущего выбранного юнита, чтобы знать чьи заряды отображать, но там ничего сложного через события SelecetedUnit и DeselectedUnit
0
13
4 года назад
0

» WarCraft 3 / [Lua] Совместная работа над WC3 проектами

ScorpioT1000, да, иначе код будет работать только на третью ночь после Ивана Купалы.
2
13
4 года назад
2

» WarCraft 3 / [Lua] Совместная работа над WC3 проектами

ScorpioT1000, проблема в том что нет ни одного способа, который однозначно даст верный результат
0
13
4 года назад
0

» WarCraft 3 / [Lua] Совместная работа над WC3 проектами

NazarPunk, может не у всех так, но у меня нотации от sumneko в vscode захлебываются и перестаются адекватно работать на примерно 50-70 файлах. Аналогично с EmmyLua в PyCharm. На счет подхода к написаю кода соглашусь. Что для тебя ересь (require или ООП на lua), то для меня наиболее адекватное решение. Lua, конечно, не устареет быстро, но вот выкатят близы патч с возможностью использовать несколько .lua файлов, и все системы сборки станут неактуальны.
1
13
4 года назад
Отредактирован Nelloy
1

» WarCraft 3 / [Lua] Совместная работа над WC3 проектами

ScorpioT1000, командная разработка - крайне сложно огранизационно... Собрать команду, выбрать лидера, выбрать систему документирования кода. На данный момент ни EmmyLua, ни Lua 0.15.4 от sumneko не дают необходимых инструментов. Необходимо совместно разработать стандарт кодирования. А люди на добровольных неоплачиваемых началах не склонных уделять достаточное время подобным вещам. Нам всем гораздо интереснее процесс созидания, нежели грамотная его организация. А в связи с тем что сейчас идет бета тестирование, все разработанное может устареть с выходом релиза или даже просто нового патча.