Можно, конфликта не будет, но поддержка мультиплеера будет под большим вопросом (AMAI устроен подобным образом, программа добавления модифицированного ИИ добавляет дополненный Blizzard.j, в результате чего можно только против ботов играть, с мультиплеером не катит).
Можно дать этим юнитам одинаковую скорость движения и двигать их по точкам, которые лежат на параллельных прямых. Также можно двигать только юнитов ближнего боя, а точку для лучников (за их спиной) рассчитывать через полярные координаты в виде startX+dist*Cos(angle); startY+dist*Sin(angle), где angle - угол между точками положений юнита ближнего и дальнего боя.
Звуки окружения - то есть наступление дня/ночи?
Можно удалить звуки, отвечающие за включаемые звуки при этом и удалить триггеры, которые анализируют смену суток в игре
Событие: боевая единица умирает.
Условие: у боевой единицы был бафф (или же способность, если делать начисто через JASS).
Действие: какой-то спецэффект.
При наличии баффа его уровень будет отличным от 0.
Обратной совместимости нет (карта, сделанная на 1.29 не будет работать на 1.26 ввиду большего количества игроков и новых функций), но карта, сделанная на 1.26 должна работать на 1.29.
UrsaBoss, это в зависимости, какая способность (если что-то типа ауры, то лучше через таймер), если же просто дать/забрать способность, то через входы/выходы.
UrsaBoss, вариант с областями - самый удобный, как по мне (потому что под любую карту сойдет, при инициализации достаточно создать регион WaterPlaces и добавлять области RegionAddRect(WaterPlaces,gg_rct_Water01), RegionAddRect(WaterPlaces,gg_rct_Water02), RegionAddRect(WaterPlaces,gg_rct_Water03), .... А потом проверять через IsUnitInRegion в глобальном таймере, который будет работать с группой юнитов, обладающих такой пассивкой (при изучении пассивки создать группу и добавить юнита, после чего запустить таймер, если юнит первый). Если группа пуста, то уничтожить таймер и удалить группу. Таким образом можно сымитировать действие этой пассивной способности.
UrsaBoss, разве что придумать костыльный алгоритм для определения (хотя, когда-то его уже придумали, вроде, просто точно попадалось что-то подобное, но не могу вспомнить где).
Создать обычные области в редакторе, после чего использовать функции RegionAddRect(регион, область). Если что-то лишнее (например, нужно из области вырезать область), то можно использовать RegionClearRect(регион, область. которая не будет учтена). Также используются RegionAdd/ClearCell - добавление определенной точки (минимальные ячейки, которыми могут быть области, размер 32х32, в редакторе обозначены серым цветом. На них можно основывать занятные алгоритмы нестандартных форм регионов (я так делал треугольники и круги).
Есть триггерная команда, которая позволяет выдавать золото тем, кто убил юнита. Если нужно, чтобы выдача была всем, то можно установить систему отлова урона, с помощью которого ловить момент до убийства юнита, после чего переходить к моменту после этого находить изменение количества золота у игрока-убийцы (главное, чтобы после нанесения урона наступала смерть юнита). Осталось только поделить сумму между кол-вом игроков команды (например, 20 золота дали за убийство юнита, а в команде еще 3 игрока, то вычесть у первого 15 и раздать по 5 остальным). Это более сложный вариант решения, но, зато, более точный. Можно сделать, как сказано выше, но тогда придется делать базу данных на типы юнитов и сопоставлять каждому определенное количество золота (главное, перед этим исключить получение золота игроком-убийцей, так как начисление будет происходить ему дважды + эффект на месте погибшего в виде монеток можно добавить).
Можно настроить игровые константы, где описана схема получения опыта героем через таблицу (поэтому герои не могут качаться выше 5 уровня на монстрах в стандартных картах).
Вот так оно выглядит.
Нужно два триггера. При покупке юнита, который герой (то есть выбор в таверне) - заносить его в переменную типа юнит-массив (можно даже в группу, если не нужно знать героя конкретно), и второй - который регистрирует смерть юнита (происходит проверка, что умерший юнит равен HeroUnits[0], HeroUnits[1] и т.д. или же просто юнит входит в группу Heroes = да).
ai - уже скомпилированный код ИИ и обратно в GUI-вариант не переводится (аналогичная ситуация с GUI-триггерами). Приказы для ИИ находятся в файле Scripts\common.ai.
Нужно отредактировать файл MiscData, чтобы создавать более крутые склоны (тогда зависимость высоты от размера кисти уменьшится).
А именно строку "MaxSlope=50" на "MaxSlope=90".
Это просто перевести тригегры 1.29 на русский (чтобы в редакторе они отображались на русском). Была идея такое воплотить, но то, что JNGP не поддерживается на этом патче - останавливает( Даете JNGP на 1.29-1.30, а то WEX меня не устраивает (без cjass и поддержки кириллицы - при сохранении русские строки зачищаются в коде).
Plague Doctor, потому что "Ввести" - это не личный сценарий (это дополнительное действие в редакторе триггеров, отвечающее за ввод чит-кода). Версия для личного сценария такая: call Cheat("ISeeDeadPeople")
Обожал лепить подобные функции с таймингом (временная пауза, временная анимация и подобное). Один лишь минус - применение одной функции не исключает применения другой (например, удалить "Благодать" за 5 секунд и сразу запустить вторую, где ее удалить нужно через 0.5 секунд). Жаль, что нет функции перевода в равкод (хотя, насколько я помню мемхак, то там работа с данным типом велась напрямую; может, и перевод в равкод допилить там реально).
» WarCraft 3 / Исцеляющий газ
Ред. Пушистый
» WarCraft 3 / Кастомный blizzard.j
Ред. Пушистый
» WarCraft 3 / Как в редакторе сменить ночь на день?
Эта кнопка регулирует яркость, а если время суток, то через Файл->Параметры->Визуальные->Фикс. время суток(...).
» WarCraft 3 / Колонна
» WarCraft 3 / Как убрать звуки окружения
Можно удалить звуки, отвечающие за включаемые звуки при этом и удалить триггеры, которые анализируют смену суток в игре
» WarCraft 3 / Триггер
Условие: у боевой единицы был бафф (или же способность, если делать начисто через JASS).
Действие: какой-то спецэффект.
При наличии баффа его уровень будет отличным от 0.
» WarCraft 3 / По поводу кастомных заклинаний...
» WarCraft 3 / Мапинг 1.26 /1.29
» WarCraft 3 / Проверка на то, что юнит в воде.
Ред. Пушистый
» WarCraft 3 / Проверка на то, что юнит в воде.
» WarCraft 3 / Проверка на то, что юнит в воде.
» WarCraft 3 / Проверка на то, что юнит в воде.
Ред. Пушистый
» WarCraft 3 / Как сделать так ,что за убийство монстров,голда давалась всем
» WarCraft 3 / Нюанс в cJass
Ред. Пушистый
» WarCraft 3 / Нюанс в cJass
Ред. Пушистый
» WarCraft 3 / Как уменьшить кол-во даваемой exp за юнита
Вот так оно выглядит.
» WarCraft 3 / Как сделать воскрешение героя которого выбрал в таверне?
» WarCraft 3 / ai > wai
Ред. Пушистый
» WarCraft 3 / Ограничение функции рельефа "повысить"
А именно строку "MaxSlope=50" на "MaxSlope=90".
» WarCraft 3 / 20 уровень у удаленного(?) гранитного голема на "Големах мрака"
» WarCraft 3 / Есть ли русификатор триггеров для версии 1.29
» WarCraft 3 / Насчет ландшафта
» WarCraft 3 / Ошибка с абилкой
» WarCraft 3 / Покупка wc3
» WarCraft 3 / Текстура эффекта