27

» WarCraft 3 / Как можно воздействовать на юнита в транспорте?

на второй вопрос я не могу знать ответа. Это нужно самому потестить. Ну например, триггерный урон можно нанести, думаю. У меня такой задумки не было.
27

» WarCraft 3 / Как можно воздействовать на юнита в транспорте?

Что значит без события "юнит погружен"? Возможно вы хотите зафиксировать, что юнит находится в транспорте, то без этого никак. Добавляете в группу. Эта группа нужна просто для проверки, что юнит в транспорте. Когда нужно узнать в транспорте ли он, в условием Boolean - "юнит в <группе>". Можно и по-другому чекать, но мне с группой проще
А выход из группы возможен с помощью приказа. Когда юнит дропается или вылезает из транспорта, он получается приказ "stop". Есть наработка на хгм.
Можно еще зафиксировать условием Boolean - "находится ли юнит в транспорте". Однако, это условие очень не подходящее, поскольку нужно указывать не только пассажира, но и транспорт. А так сложнее будет, поскольку транспортом может кто-угодно быть. Нужно пикать всех юнитов на карте, и чекать этой фукц
так что вы имели в виду не понятно. Возможно можно воздействовать и давать, самим то чего не проверить? Юниты по сути скрыты. Пример навык кодоя, который проглатывает жертву, и переваривает ее - это тоже транспорт.

27

» WarCraft 3 / Aqua (300 Heroes)

Сексуальная. жаль гг не понимает этого. но у него там три проблемные девушки. там Аква и девушка-рыцарь топ
27

» WarCraft 3 / Области спавна и радиусы вышек через ALT [готово]

отрисовка радиусов не работает у тех, кто стоит с краю карты или около возвышенностей?
27

» WarCraft 3 / Кодируем и декодируем строки и сейвкоды

лучше пихать не в статью, а в алгоритмы. ну короче, статей по варкрафту так много
27

» WarCraft 3 / Скорость поворота юнита

такой абилки нет. но есть в триггерах скорость поворота (см. бот выше помогает вам)

хот мб есть такие. помню находил такие, они просто не давали делать повороты. надо найти мой коммент

xgm.guru/p/blog-steal-nerves/ability4 <= раздел о статичных поворотах
27

» WarCraft 3 / Вопрос по переменным

KKrey, в гуи массив включить. это в начальных статьях объясняется. смотри где урок про переменные. там со скринами
в гуи 1.26 ограничения индекса массива от -8192 до 8192. тип туда не вставить, тк 4-значный равкод имеет большие цифры. там приходиться бд по другому строить: мы забиваем бд равкодов. потом нужно сравнить какой тип, пробегаем по бд равкодов циклом, вытаскиваем. неудобно как-то
27

» WarCraft 3 / Вопрос по переменным

тип юнита - число (равкод). или точнее номер в бд. В редакторе триггеров в гуи-меню у вас сразу высвечиваются иконки типов.
  • Если нужно создать пехотинца, указываем тип пехотинца (номер пример 'hfoo')
  • Если нужно заставить раба строить, указываем тип здания (пример ферма 'hhou')
  • Если нужно обучить в казармах стрелка, указываем тип стрелка ('hrif')
и др
юнит - это просто ссылка на боевую единицу. В триггерах в сравнении юнитов можно сравнивать юнитов, это помогает отсеивать одинаковых или одни и тех юнитов. есть ряд функции для работы с юнит. юнит в варкрафте это все.
27

» WarCraft 3 / EditBox - User Text

ScorpioT1000, вы рофлите? какие эмодзи?
да никак он не ведет себя. нажатие одновременное Ctrl+буква или цифра = > ничего не происходит. работает только с буквами и цифрами.
Но если выделять текст мышкой, и нажать Ctrl+C => копирует текст в буфер
Ctrl+V => вставляет текст из буфера
Ctrl+A => никак не выделить текст
Insert => не знаю, что это за кнопка. Примерно понимаю, что на курсор ввода как-то влияет. Но по ощущениям ничего не происходит.
Может вылететь, у меня так и произошло.

я очень долго редактировал поле, и у меня вылетало.
помню писали об этом здесь, правда, там про десинки в мультиплеере. не знаю, мб это еще из-за дебага BlzFrameGetText (Editbox) или события FRAMEEVENT_EDITBOX_TEXT_CHANGED
27

» WarCraft 3 / Вопрос по связи отрядов в областях по горизонтали и вертикали.

есть
  • прямоугольные ректы. Если там прямоугольная форма, то ее можно растянуть еще. Как у вас выше.
  • регионы, в которые добавляют/вычищают в себя все ректы. Тут есть у вас будут различные прямоугольные формы: Г, T итд. вспоминаем тетрис. тогда нужно разбивать области на прямоугольные области
  • можно просто запоминать
27

» WarCraft 3 / BonusMod v2.8

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

» WarCraft 3 / BonusMod v2.8

Bergi,
Предмет: регенерация маны 'AIrm'/Предмет: регенерация маны (малый) 'AIrn' - каждую секунду процентно восстанавливает ману. Процент идет от базового регена + от регена интеллекта героя + другие бонусные регенерации типа чародейская ауры или аура фонтана магии. Эта регенерация работает только у героя, у обычных юнитов что-то не хочет идти.
формула
MANA_REGEN_SobiMask =((base_mana_regen + mana_regen_Intellect + другие бонусы типа чародейской ауры)*p) - реген от одной абилки. Если вообще нет никакого регена (реген != 0, главное чтоб был хотя бы один реген), то не будет работать реген и от маски. теперь даже отрицательный реген может получится, если указано отрицательное значение коэффициента. ВНИМАНИЕ: в этой формуле MANA_REGEN_SobiMask не учитывается реген от других соби масок, если у героя их несколько. Учитывают базовый реген, реген от инты +другие регены
MANA_REGEN_Common = mana_regen_Intellect + MANA_REGEN_SobiMask + другие бонусы типа чародейской ауры - общий реген (так как у героя работает только реген от инты и от других бонусов, а вот базовый реген не учитывается. Так как базовый реген не работает на герое)
MANA_REGEN_Common = mana_regen_Intellect + MANA_REGEN_SobiMask1 + MANA_REGEN_SobiMask2 + другие бонусы типа чародейской ауры - общий реген ((если абилок от маски соби несколько, они суммируются вот так)
Какие бонусы есть в игре? Это пассивки (чародейская аура, аура фонтана, маска соби не учитывается), активных заклинании с постепенным восстановлением не много (рев, леденящий крик, омоложение не учитывается,
base_mana_regen - базовый реген, который указан в РО юнита "Характеристики - Восстановление маны". Работает только у обычных юнитов, тестировал этот момент у героя. У героя показывает реген от интеллекта (базовый не работает у героя), но когда он одевает маску соби учитывается базовый реген. Благодаря базовому регену, можно сделать героя с уникальным регеном.
mana_regen_Intellect = Intellect * k - реген от интеллекта (где Intellect - кол-во интеллекта героя, k - константа "Характеристики героя: увеличение скорости восстановления за единицу разума", которая за каждую единицу маны восстанавливает заданное число)
p - процент от абилки
27

» WarCraft 3 / BonusMod v2.8

бонус мана реген через абилку маски соби может не работать у не-героев, только у героев. тестил еще в мемхаке. так что лучше напрямую изменять базовый мана реген, а данных хранить в таблицах
--base regen mana/sec
        function GetUnitBaseRegenMana(unit)
            return BlzGetUnitRealField(unit, UNIT_RF_MANA_REGENERATION)
        end
        function SetUnitBaseRegenMana(unit, value)
            return BlzSetUnitRealField( unit, UNIT_RF_MANA_REGENERATION, value )
        end
27

» WarCraft 3 / BonusMod v2.8

повторяющие действие. пример бонус на макс хп можно изменить прямой нативкой. или реген тоже можно изменять.
а вот сила/ловкость/интеллект, защита/урон и др => им трудно добавить бонус, тк нативки изменяют только базовый или общий, т.е. белый параметр. нету подразделения четкого. это тогда нужно изменять сам интерфейс. в принципе не сложно добавить зеленку в интерфейс, а все данных в таблицах подразделять: бонус/базовый. Но это уже в след версии. Здесь бонусы добавляются через абилки степени двойки
27

» WarCraft 3 / Игра в кальмара для Warcraft 3

это из какой то игры или фильма? откуда эти челики выше? я про главный постер
27

» WarCraft 3 / ИИ

можно триггером полностью отключить управление скриптом юнита. так и обратно подключить. а вот частичное, такое нельзя. не знаю точно, это надо в редактор ИИ смотреть. Но судя по всему нет (я еще ни разу не разобрался как работает это дрянь. примерно понял, что там есть определенный алгоритм атаки/защиты/стройки и пр) было бы интересно внутри капота заглянуть и стырить код. ИИ там рассчитан на сражения.
ты можешь отключать в нужный момент. И возвращать его ему, когда например, база атакована или какой момент в атаку идет. не знаю.
27

» WarCraft 3 / бонусы скорости атаки от ловкости

вот пример результата:
герой Блэйдмастер
cooldawn time = 1.770
базовый = 1.00
23 ловкости*0.02=0.046%
формула задержки: time = cooldawn / bonus
бонусов от перчаток нет (понятное дело, что скорость не уперлась в лимиты. боятся нечего. никаких изменении не будет в теории)
теоретическое время = 1.212329 сек (при общем бонусе 1.46%)
замеренное таймером задержка = 1.210938 сек

бонусы добавляем
4.00 бонуса от перчаток (тут без формулы урезания)
теоретическое время = 0.3241759 сек (при общем бонусе 5.46% - что вообще-то неправильно)
замеренное таймером задержка = 0.3515625 сек или 0.359375 сек
погрешность в сотых

теперь тоже самое, но с учетом бонуса ловкости в лимит
4.00 бонуса от перчаток (бонус от перчаток урезали до 354 из-за ловкости)
теоретическое время = 0.3547095 сек (при общем бонусе 5.00% - макс лимит)
замеренное таймером задержка = 0.3515625 сек или 0.359375 сек
к последнему эксперименту пробовал добавлять бонус ловкости. и изменения не происходят. явно уперлось в границы лимита
ладно. понятно
27

» WarCraft 3 / Список дефолтных фреймов-3. ConsoleUI и его потомки

poisoNDealer, там невидимые родители кнопок 1-12. они вот слоем выше вашего фрейма находятся. когда выделяешь юнита, то кнопки появляются
27

» WarCraft 3 / Список дефолтных фреймов-3. ConsoleUI и его потомки

poisoNDealer, нужны подробности
если кнопка подсвечивается, значит, реакция мыши и событие сфокусированы на кнопке, клики должны работать
но клик срабатывает примерно 1 раз из 10, в зависимости от того, с какой стороны подведёшь курсор.
сложно сказать, возможно залипание.
Тут есть какие-то подводные камни?
никаких. это просто невидимый фрейм. его убрать/скрыть можно.
27

» WarCraft 3 / Обучение jass

МрачныйВорон, давай ка поподробнее, впервые слышу. Был переходный момент для видео по ссылке, а что за сроки хранения? Есть ссылки на справку?
ну много таких было))
27

» WarCraft 3 / [lua] BonusMod

Vlod, ну прямой нативки в рефордже на attack speed нет. Есть лишь нативка BlzGetUnitAttackCooldown / BlzSetUnitAttackCooldown. Конечно, можно этим отследить базовую скорость, зная задержку.
ты решил добавить через способности степени двойки скорость атаки?
да. это только всего лишь бонусы. Но если использовать это, тогда все скиллы должны быть полностью кастомными, и итемы тоже.
можно вообще работать только с BAT (AttackSpeed). а бонусы просто в интерфейс через фреймы информировать зелеными циферками.
точно также с base damage, base armor.
код
native BlzGetUnitArmor takes unit whichUnit returns real --считывает базовый+бонус
native BlzSetUnitArmor takes unit whichUnit, real armorAmount returns nothing

native BlzGetUnitBaseDamage takes unit whichUnit, integer weaponIndex returns integer
native BlzGetUnitDiceNumber takes unit whichUnit, integer weaponIndex returns integer
native BlzGetUnitDiceSides takes unit whichUnit, integer weaponIndex returns integer
native BlzSetUnitBaseDamage takes unit whichUnit, integer baseDamage, integer weaponIndex returns nothing
native BlzSetUnitDiceNumber takes unit whichUnit, integer diceNumber, integer weaponIndex returns nothing
native BlzSetUnitDiceSides takes unit whichUnit, integer diceSides, integer weaponIndex returns nothing
Нет только нативок на бонусы (их можно сделать или использовать BonusMod). Бонусы можно просто отображать через фркеймы. Но это еще больше работы.
27

» WarCraft 3 / Обучение jass

смотрите чтобы видосы не удалились с ютуба. на ютубе чудесным образом есть сроки хранения