32

» WarCraft 3 / Как сделать подгрузку текстовой команды из папки с вариком

Гуванч, М-да, а каким образом он создаётся то? Мб хватить вредные советы постить, это и от же самый прелоад.

Смотрим функционал мемхака и делаем, там были эти функции, синх само собой кешем, только зачем вам сообщения в чат?

На гуи такого нет, идём учить jass. Статей пруд пруди, Дата менеджер, прелоад, мемхак.
32

» WarCraft 3 / Что за объект или integer вызывает фатал на Варкрафт III?

goodlyhero, кстати координаты 0,-11 в доте лича иногда вызывали фаталы, поэтому юзать предлагается другие координаты чтобы скрывать кнопку.
32

» WarCraft 3 / Перевоплощение при завершении выключает баффы?

морфы не прерывают стандартные дебаффы, но врученные триггерно - пропадут. Во время трансформации на юнита перестают работать дизейблы, это сделано для баланса умышленно.
32

» WarCraft 3 / Невидимость

Ещё раз, никак нельзя изменить механику дефолтных способностей, ваще никак, совсем никак. Делается кастомный аналог с нужными параметрами, ннельзя из критов сделать промахи и наоборот.
32

» WarCraft 3 / Москиты не скрывают даммика вызванного с помощью Огненный Голем

Потому что там походу происходит пауза юнита, а москиты как раз перестают после неё работать.
32

» WarCraft 3 / Создание ИИ

Vitamin, не ну в потоке карты тоже реализовывали, правда там страшное кол-во кода.
32

» WarCraft 3 / Создание ИИ

Vitamin, ну ок, пример кода - когда нужно юзать нестандартные предметы, прыг во врага и активация предмета стан по аое, ну или что аватар нужно врубать перед замесом а не лоу хп как это делает мили ИИ.
32

» WarCraft 3 / Создание ИИ

Vitamin, ну такие ИИ же больше для мили, там микро не сделаешь... Лишь макро и тактика.
32

» WarCraft 3 / Хэш-таблицы в vJass

Я юзаю одну на все случаи жизни, а для того чтобы не попасть в одну ячейку 2жды, юзаю стринг хеши в качестве ключей.
32

» WarCraft 3 / интересные карты

Гуванч, а версия 1.32 пока не готова, но есть 1.31, там пару багов и баланс надо менять... То скелетам шибко много поблажек.
32

» WarCraft 3 / интересные карты

Гуванч, ну вот
Хз, я и тут выкладывал, да и карта прекрасно гуглится - "Как достать скелета?", начиналось все еще тут
32

» Мир безумного / Warcraft 3 Reforged на Unreal Engine 5

Ну на вид не варкравт а вов, или какая то рпг с моделями рефаунда, анриал насколько помню для шутанов, а вар ртс...
Ну и ярко и красочно, прикольно, только ума не приложу как контролить юнитами на карте с такими домами?
32

» WarCraft 3 / интересные карты

Гуванч, ну у меня еще есть ссылка
То я любитель TAG карт, и решил сделать нестандартный tag, то че одни клоны вампиризма....
32

» WarCraft 3 / интересные карты

На ирине чет народ долго собирается, надо свою карту таки допилить... А так дотка, лтд, uther paty, давно не играл в алкоголизм, петров, замок скиби и бомбардировщики, достаточно увлекательные карты.
32

» WarCraft 3 / как двигать несколько дамми юнитов одновременно

rsfghd, ну или структуры vjass чтобы двигать юнтитов в цикле, я как раз помнится делал такие спеллы и даже выкладывал.

32

» WarCraft 3 / Есть ли модели дота в открытом доступе?

Nikolay36, онив Game.dll, и их нет в привычном тебе понимании, они написаны на с++ и далеки от алгоритмов простого jass.
Существует методы - своего рода заготовки всего насвете, даже того что в текущей версии нет, сайленсы, станы, промахи, совершенно все, включая всякие заряды и кулдауны. И струкутра абилки которая набирает из готовых методов сам спелл, в структуре всегда содержится основа, таким образом получается делать безчисленное количество клонов одной способности, к примеру creep thunder bolt (кинуть камень у голема) в движке игры ссылается на молоток бурь горного короля.
Разберем пример, старый старт кулдауна из мемхака:
unction StartAbilityCooldownFx takes unit whichUnit, integer abilityId, real cd returns boolean
	local integer pAbility = 0
	if GetUnitAbilityLevel( whichUnit, abilityId  ) == 0 or cd == 0.00  then
		return false
	endif
	set pAbility = GetUnitAbility(whichUnit, abilityId)
	if pAbility < 1 then
		return false
	else
		if RMem(pAbility+0x134)==-1 and RMem(pAbility+0x138)==-1 then
			call WMem(pAbility+0x134,0)
			call WMem(pAbility+0x138,0)
		endif
		set Memory[pReserverdIntArg1 / 4] = mR2I(cd)
		call CallThisCallWith2Args( pStartAbilityCD, pAbility, pReserverdIntArg1 )
		return IsAbilityOnCooldown( pAbility )
	endif
	return false
endfunction
pStartAbilityCD = GameDLL + 0x62D4C0
Что тут делается, ну мы ищем адресс абилки у юнита, и вызываем этот самый метод - pStartAbilityCD, который как выяснилось насамом деле RestoreManaAoe (спасибо IseFog), котрый и является целиком эффектом абилки 'AImr', предмет-массовое восстановление маны, оно принимает в качестве аргументов структуру абилки и кулдаун, но эта функция фаталила на некоторых абилках, обратите на 2 оффсетаь которые проверяются в функции, там должна лежать структура из которой этот метод прочитает радиус, допустимые цели и остальные нужные параметры, если их нет - игра крашится. А этот метод использовали как запуск абилки в кд, ибо его юзают совсем другие абилки.
Теперь немного понятнее как там все сделано?
32

» WarCraft 3 / Утечки в коде

Гуванч, ептить...
globals
integer ExMySpellKey = StringHash("Ура в жопе дыра")
endglobals
....
set t = LoadTriggerHandle( HashTable, ExMySpellKey, GetHandleId(unit))
32

» WarCraft 3 / Утечки в коде

стрингхеши тоже можно вывести в глобалки, это хоть немного но быстрее.