32

» WarCraft 3 / Типы данных в JASS - Требуется пояснение

Пушистый:
quq_CCCP, это какая-то внутренняя ошибка позволяет так сохранять любой handle? Просто раньше о такой фиче не знал)
На самом деле все handle типы это одинаковые ссылки, в таблице хендлов и хранятся все эти типы, ну а в функциях которые требуют эти хендлы уже и ведется проверки на то что есть что. Другими словами и локейшин и юнит можно сделать целым числом и сохранить в хт, но сделать из локейшина юнита или наоборот не получится.
Fogstate exploit это один из многих не досмотров близзардов, как и ретурн баг и прочие ошибки.
32

» Dota 2 / Продление конкурса героев до 1-го июня

Ну давайте уже быстрее, столько времени прошло, уж публикуйте как есть...
32

» WarCraft 3 / Перезарядить отдельный предмет

 function StartAbilityCooldown takes unit whichUnit, integer abilityId, real cd returns boolean
        local integer pAbility = 0

        if whichUnit == null or GetUnitAbilityLevel( whichUnit, abilityId  ) < 1 or cd == 0.00  then
            return false
        endif
        
        set pAbility = GetUnitAbility(whichUnit, abilityId)
        
        if pAbility < 1 then
            return false
        else

            if ReadRealMemory( pAbility+0x134 ) != 0 or ReadRealMemory( pAbility+0x138 ) != 0 then
                call WriteRealMemory( pAbility+0x134,0 )
                call WriteRealMemory( pAbility+0x138,0 )
            endif
            
            set Memory[pReserverdIntArg1 / 4] = SetRealIntoMemory(cd)
            call CallThisCallWith2Args( pStartAbilityCD, pAbility, pReserverdIntArg1 )
            return IsAbilityOnCooldown( pAbility )
        endif
        return false
    endfunction
32

» WarCraft 3 / Типы данных в JASS - Требуется пояснение

Агент это не тип как таковой, это все хендлы. Агент введен для хештаблицы, чтобы меньше морочится с сохранением и загрузкой данных.
Раньше была фишка fogstate exploit
call SaveFogStateHandle( hashtable, 0, 0, ConvertFogState( GetHandleId( любой хендл до fogstate ) )
return LoadUnitHandle( hashtable, 0, 0 )
Вот такой код позволяет не морочится и сохранить почти любой ссылочны тип, а выгрузить получится только такой какой он есть. Т.е у нас есть одна универсальная функция под записть и множество под чтение конкретного типа, агент введен для этого насколько я помню. Подробнее о наследовании типов можно посмотреть тут.
Про диалог и мультиборд бред, это хендлы самих обьектов, кнопки и текст вовсе отдельные обьекты, такие как dialog button и multiboarditem.
32

» WarCraft 3 / Как перместить юнита за спину цели

Берем опен доту и шариам там блинк-страйки героя рикумару, там все готово. Копируем к себе и все.
Вот вам опен дота
(то нынче народ разучился гуглить)
Загруженные файлы
32

» WarCraft 3 / Перезарядить отдельный предмет

очень просто - StartAbilityCooldown ( unit, id, -1.00 ), функцию я прикладывал в теме про мемхак, как и проверку на фатал блинка.
32

» WarCraft 3 / Боевая единица и максимальная скорость перемещения

И дальше то что? Если на литровой банке написать 1000 л. кубометр воды туда поместить не получится, есть лимиты которые не обойти.
522 мс - предел, об этом знают уже даже дотеры которые не видели редактора.
Блин куда катится мир
Привышение лимита мс делается обходными путями, в основном это движение по координатом с некторой частотой или подгрузка своей длл на мемхаке.
32

» WarCraft 3 / Молния

Talgar2, там и написано что как делать, LightningData.slk это и есть молнии, точнее данные по молниям.
В списке как стандартные молнии у тебя не появятся никак, только вводить РО код молнии ( те что в этом самом LightningData.slk хранятся)
32

» WarCraft 3 / Применении заклинания сразу

Вопрос нахрена вам каст? Сразу триггерно эффект нельзя изобразить или сделать из ауры?
32

» WarCraft 3 / Текстовый ХП-бар

Хп бар из текстага можно надыбать в карте BomberCommand от Blizzard.
32

» WarCraft 3 / Способность "Создать труп" кладбища Нежити

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

» WarCraft 3 / Отследить стан

Вам нужно именно отследить факт получения стана или оглушенный ли сейчас юнит?
Для проверки оглушения есть проверка на тип юнита IsUnitType( unit, UNIT_TYPE_STUNNED ).
Чтобы отследить получения стана нужно событие - юнит проверяет урон ну и проверка на бафф.
32

» WarCraft 3 / Превращение героя

Либо крепить модель оружия к модели персонажа, либо делать морф.
Про морфы можно почитать тут (xgm.guru/p/wc3/powerups)
32

» WarCraft 3 / Об утечках для человека который в этом нечего не понимает

Нужны познания ГУИ выше среднего и Jass на начальном уровне чтобы избавится от большей части утечек на ГУИ.
в первмо примере ты должен:
  1. записать в переменную позицию умершего юнита, переменную типа "точка" (location на jass) нужно создать в рекдакторе переменных.
  2. Создать и тут же удалить спецэффект в этой локации.
  3. После всех дейсвтий с этой точкой написать в custom script call RemoveLocation( udg_+имя переменной для точки )
Ну а так, нужно хорошо понимать как выполняются действия в варктавте, чтобы организовать код нормально, без лишних действий и утечек.
32

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

Доспехи веры ваще никакой урон не блокируют, что за идиотия? Способность добавляющая защиту вместо способности снижающей любой урон!
Только триггерное снижение урона!
32

» WarCraft 3 / GetWidgeLife(...), GetUnitState(...)

Нет, юзайте что нравится,Unit state умеет не только брать и добавлять хп, но и ману.
32

» WarCraft 3 / Движущая декорация

Зачем двигать декорации - когда можно двигать юнитов ( декор стандартными средствами нельзя двигать).
32

» WarCraft 3 / Наименование функций и переменных

Конечно есть, имя функции не должно повторятся и совпадать с именами из common.j и blizzard.j.
32

» WarCraft 3 / Разная магия pt.2

Думаю юзать ауру в качества ауры вампиризма от заклинаний, вот тока внятного названия не придумал (магический вампиризм - длинно и не оригинально)..
32

» WarCraft 3 / JASS: группа или массив?

Ну дык пиши весь код карты на асме или вовсе инжекти мемхаком дллку, на Си все будет ближе и быстрее.
32

» WarCraft 3 / Момент полного удаления боевой единицы из игры

DracoL1ch, ага их еще RemoveUnit делают и еще иллюзии вроде не разлагаются как и варды. Запаришся плодить таймеры и бд, кто скока...
32

» WarCraft 3 / Момент полного удаления боевой единицы из игры

Clamp, а хендл и не равен 0, проверял правда на триггерах, там довольно долго можно проверить Istriggerenabled. Просто проверять на тип или еще чего, ибо от переменной берется корректный хендл, но по его адресу в таблице уже ничего нету.
Лич вроде писал что хендлы по второму кругу идут очень,очень редко.
Отследить удаление из таблицы хендлов думаю можно только погрузкой через мемхак какой-то либы, которая бы добавила событие на это дело.