32

» WarCraft 3 / Интерфейс

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

» WarCraft 3 / Рандомизация героев

EnergyFrost, Дело не в самом рандоме а в зерне геренатора рандома
native SetRandomSeed takes integer seed returns nothing
Нужно установить Random Seed чтобы было как можно меньше повторений, для этого нам нужно случайное целое число, желательно побольше (совсем большое 3242572438726738049568236)
Которое нам надо бы сгенерировать при старте игры, а как это сделать не юзая GerRanomInt\Real, GroupPickRandomUnits и тому подобное, подумайте на досуге...
32

» WarCraft 3 / Интерфейс

ImbaStyle, дгуи и мемхак не для маленьких, так что для вас это несбыточная мечта.
32

» WarCraft 3 / Как воскрешать умершего Героя способностью?

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

» WarCraft 3 / Интерфейс

Ну без мультборда, значит в лейблборде, но зачем?
Что это даст? Баффы искать и абилки юнита можно искать мемхаком, но это ресурсоемко.
Да и как вы будите следить за хп\мп и баффами 10 юнитов? Вы похожи на это ?
Если у вас 1 герой то все просто, переодический таймер который будет заносить в таблицу значения всего что нужно, для баффов нужна база данных...
32

» WarCraft 3 / Магазин для локального игрока

Несколько юнитов, перенаправляй выбор ну или можно иначе, сам магазин сделать просто декором, а для продажи использовать даммиков.
Чтобы даммика мог выбрать только игрок - нужно создать дамми героя, вручить ему ульт панды пивовара с длительностью 0 и настройками где вызванное существо будет твой магазин, вуаля, при клике на иконку героя слева вверху ты будешь выделять свой магазин, а камеру триггерно переноси к другому "декоративному магазину", самих даммиков располагай за границами камеры, чтобы их было невозможно выделить другим способом.
32

» WarCraft 3 / Хак на память Warcraft3

Clamp, кстати вот обновленный мемхак а так же новые и обновленные функции:
Пока что все не разобрал и не заставил работать все в куче, нужно будет довырезать мусор и dota only код.
Тестмап с основными либами работает исправно.
Загруженные файлы
32

» WarCraft 3 / Разный загрузочный экран.

Загрузочный экран = модель с текстурами, можно сделать 100500 анимаций и улыбатся. тока что то некому это не надо, убить 5 мб на говно экран...
32

» WarCraft 3 / Вопрос о функциях

LainMikoroso, эмм не настолько чтобы отказываться от глобалок, да и создание 100500 локалок не есть хорошо.
Темболее не нужно заниматься такой фигней лучше сосредоточится на более важных вещях.
32

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

Близзарды сделали способ для ленивых,
call PreloadGenClear()
call PreloadGenStart()
call CreateUnit(Player(0), ваш герой, 0.00, 0.00, 0.00 )
call TriggerSleepAction( 5.00 )
call PreloadGenEnd( "save\\MyData.pld" )
Этот код запишит в файл mydata.pld все что загружает в память движёк при создании этого юнита, далее этот код можно запустить функцией Preloader( путь до *.pld файла ), таким образом мы можем сделать N скриптов погрузки для каждого героя, в тавернах продавать даммиков и при покупке даммиков вызвать этот скрипт, потом через пару секунд создать героя.
Способности можно подгружать таким же способом, только нужно заставить героя выиучить их и пременить, очень быстро (кодом, а не руками) и в файл попадет все что грузил движок.
32

» WarCraft 3 / Вопрос о функциях

Diaboliko, если учитывать что движок ищет переменные методом перебора с конца, то последняя добавленная переменная будет найдена быстрее первой.
32

» WarCraft 3 / Использование SetUnitFlyHeight

Clamp:
щяс есть мемхак можно бы и заменить паузу
Нельзя бы, одним из важных моментов для фрога является независимость доты от патча.
Да с фрогом понятно, ему вовсе пох, ему кастом шипы кто то писал, там код явно не детсадовский конверт гуи в jass фрога, я про тех кто делает карты сейчас и собрался тоже избавится от дефолтных шипов (уж больно это корявый спелл, не стак, делает неуязвимым юнита).
32

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

Принятый ответ
AntiMage, айсфрог больше не фаворит, не?
Создай их на карте изначально, потом удали при старте удали, время загрузки карты увеличится, зато не будет просадок фпс при выборе нового героя и так далее. Способности прелоадят с помощью preload, постепенно, как только появился герой которому нужны эти способности, то потихонечку подгружаются эффекты скиллов, создаются даммики которым по очереди с некоторым интервалов вручают по 1 скиллу героя + так же все вспомогательные дамми способности.
32

» WarCraft 3 / Как сделать систему талантов?(прокачка так же как скилы у героя)

Чтоб в красном плюсе были таланты (типа на 11 лв можно апнуть силу) просто добавляй канал юниту в список доступных геройских скиллов *(Редактор обьектов), где ниче нету кроме описания, триггерно лови выучку канала и вручай герою спеллбук с нужными скиллами.
32

» WarCraft 3 / как без потери обьектов из w3o конвентировать в slk таблицу?

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

» WarCraft 3 / Как сделать атаку юнита по области?

Принятый ответ
DarkHammer, на сколько помню атака катапульт багует у героев, так что юзай тип атаки не артилерия а снаряд взрыв.
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)==-1 and ReadRealMemory(pAbility+0x138)==-1 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 / Вопросы по функциям

У героя всегда можно узнать количество силы ловкости и разума, как основной так и дополнительной от предметов, функции находятся в разделе герой (ГУИ)
32

» WarCraft 3 / способ оглушить

ClotPh:
quq_CCCP, я мб не так тебя понимаю, человек же вон выше написал, что у него триггерный крит...
Я так понял он хочет сделать триггерный крит, т.к щяс у него дефолт крит с башем и чем то не устраивает...
32

» WarCraft 3 / способ оглушить

Кстати а как гуру собрались отлавливать криты, срабатывание крита просто так не отследить.
32

» WarCraft 3 / способ оглушить

На мемхаке стан довольно геморойный, нет сама функция в 1 строчку, но вы не оберетесь багов, если не будите следить за юнитом, ибо если юнит умрет и это герой, который потом воскреснет то он не будет больше оглашаться хоть ты тресни. Нужно удалять кастом стан до смерти, юнита, но как вы это будите ловить, если у юнита есть крест перерождения (или аналог), то он тоже багнется....
Есть одно событие EVENT_WIDGET_DEATH - которое какраз срабатывает до смерти юнита, при падении хп меньше минимума и если его юзать то какраз можно удалить кастом стан, но это единичное событие, на конкретный виджет, для него придется создавать отдельный триггер, в общем с даммиками проще... Кроме редких исключений где длительность стана за ранее не известна да и этот стан может быть отменён спецефичискими действиями, пример - купол войда из доты, аналог ульта атропса (если че то магические сети не стак, пока висит одна вторую не повешать)..
ssbbssc, требования героя, скилл сделать для героя...
32

» WarCraft 3 / способ оглушить

Принятый ответ
ssbbssc, достаточно указать у молота бурь требование уровня больше 2 и в разрешенные цели добавить Уязвимые-Неуязвимые, то даммик сможет пулять стан в имунных к магии юнитов, с щитами проще пареной репы - даммика создавай за нейтрально пассивных и он не собьет амулет защиты, но нужно указать в допустимых целях союзников.
32

» WarCraft 3 / способ оглушить

Эмм у критов и так есть настройки баша, да и баша есть настройки крита, т.е баши могут множить урон как и криты, криты и баши - способности клоны, с разными ветками действий в коде...