Ну так разбирай стандартные синематики, те же конфетные войны, там есть опция отключить стандартные звуки и проигрывать свои, кодом в определенный момент.
Вопрос зачем? Это скрипт, их априори сливать нелья, тебе не смущает наличие обьектов в каждой карте и их связь со скриптом. Не говоря про то что, а как будет работать спавн юнитов, работа триггерных заклинаний если они на 1 и тоже ID будут срабатывать?
Не так не получится, + ты забываешь про обзор, туман войны обновляется раз в 0.4 сек, у тебя юнит убежит и в темноте потеряется, прежде чем вокруг него появится обзор.
Не говоря про просчеты пути. Так что никак, только как инвалид - подталкивать юнита по понемногу .
Darkmen500, просто апгрейды делаем кастомные, продаем юнитов в здании с описанием и иконкой апгрейда, как только он построиться - тут же удаляем его, делаем недоступным для найма, а сам апгрейд делаем вручением способностей.
Зачем, почему не взять просто GetHandleId от истекшего таймера, и судя по названию муи - то таймеров может быть много, хендл ты вернешь первого сработавшего. Какая то несусветная хрень, напиши сразу че делать собрался, то не понимаю подобных решений.
Chongoyuto, блин тебе мб из доты дать код, он примитивный, весь эффект дает soulburn файрлорда, а урон отдельный триггер, просто себе скопировал и можно не вникать.
Ну просадки фпс будут на любом патче если ты вдруг увидишь кучу обьектов которых до этого не видел, т.к движок начнет подгружать их в память, т.к игра однопоток - побоку скока там у вас ядер и прочего дерьма, для игры всегда есть 1 ядро и 512мб озу, и точка. Реальный рост фпс будет зависить лишь от частоты ядра, больше - быстрее. Разумеется карты сделанные кривыми руками подлагивают, иногда так конкретно, если вспомнить всякие гринт тд или тот же легион тд. Ну и в целом игра заточена под виндовс и директ их, на котором она вышла. Близарды так и не переписали рендер движка по нормальному, и поэтому в рефаунде даже усугубилось всё.
Все стандартные стомп способности вызывают просадку фпс, причем чем больше карта - тем сильнее, это баг - т.к один из кодеров решил что шибко долго искать все декрации в радиусе, лучше целиком в цикле перебрать весь их класс чтобы пересчитать им высоту над рельефом, когда деформируется земля - пересчитываются высоты всех стоящих на ней обьектов - чтобы они не висели в воздухе. Подобное было и в сравнительно современных играх.
// Evasion
// Blur
// Drunken Brawler
// Butterfly
// Halberd
// Talisman
// Smoke screen -
// Whirling Axes - 60%
// Crippling Fear - 50%
// Drunken Haze - 45, 55, 65, 75
function GT1 takes unit SFI returns nothing // evasion up
local real GR1 = 1
local integer GP1 = UnitInventorySize( SFI )
local integer x = 0
local item i
local integer SUI = GetUnitAbilityLevel( SFI, 'A03P' ) // blur
if SUI > 0 then
if SUI == 1 then
set GR1 = GR1 * 0.8
elseif SUI == 2 then
set GR1 = GR1 * 0.7
elseif SUI == 3 then
set GR1 = GR1 * 0.6
elseif SUI == 4 then
set GR1 = GR1 * 0.5
endif
endif
set SUI = GetUnitAbilityLevel( SFI, 'A0MX' )
if SUI > 0 then
set GR1 = GR1 * ( 1 - ( 0.05 + 0.05 * SUI ) )
endif
loop
exitwhen x > GP1
set i = UnitItemInSlot( SFI, x )
if F01( i ) == ButterflyActiveId then
set GR1 = GR1 * 0.65
elseif F01( i ) == HN0 or F01( i ) == HeavensHalbertId then
set GR1 = GR1 * 0.75
endif
set x = x + 1
endloop
set SUI = R2I( ( 1 - GR1 ) / 0.05 )* 1
if SUI > 0 then
call AddPermanentAbility( SFI, 'A2V3' )
call SetUnitAbilityLevel( SFI, 'A2V3', SUI )
set x = GetUnitAbility( SFI, 'A2V3' )
if x < 1 then
call BJDebugMsg("ability not added!")
else
call SaveInteger( HashData, ExEvasionData, GetHandleId( SFI ), x )
if IsUnitIllusion( SFI ) then
if RMem( x + 0x3C ) > 0 then
call WMem( x + 0x3C, 0 )
endif
endif
endif
else
call UnitRemoveAbility( SFI, 'A2V3' )
call RemoveSavedInteger( HashData, ExEvasionData, GetHandleId( SFI ))
endif
set i = null
endfunction
Вот функция сложения шансов промахов из доты, автор IceFrog.
GR -это вероятность попасть по юниту, перечисляются всё источники, после идёт округление до 5, т.у у пассивки шаг промахов 5%, добивать до 1% смысла нет.
Tredor46, как нето перечислены источники уклонения и ведется сложение, после 1 абилке 20 лвл выдается уровень, таким образом в доте 6.83 фрога слкадываются пассивные уклонения,
Svintus, AI нативки работают по большей части в потоке AI скрипта, скрипт пишется на языке JASS, советую изучить для начала, после посмотреть список AI нативок и стандартные melee ai скрипты.
Скрипт AI можно запустить только для игрока бота, если слотом управляет человек - всё AI не стартанет, убираешь все стандартные триггеры сражения и создаешь запуск твоего ии для конкретного игрока если им управляет компьютер.
» WarCraft 3 / Как реализовать перебор группы в площади треугольника ? - [Jass]
» WarCraft 3 / Как реализовать перебор группы в площади треугольника ? - [Jass]
» WarCraft 3 / Звуки и музыка через триггеры в синематеках WarCraft III
» WarCraft 3 / Нужна помощь с Мемхаком
» WarCraft 3 / Альтернатива москитам
» WarCraft 3 / Самый простой способ заставить ИИ пикать кастом героя, при условии что герой доступен
» WarCraft 3 / Слияние двух war3map.j в один
» WarCraft 3 / Превышение лимита скорости
Не говоря про просчеты пути. Так что никак, только как инвалид - подталкивать юнита по понемногу .
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Тип атаки "огня феникса"
» WarCraft 3 / рестарт карты
» WarCraft 3 / Простейший триггер по спауну чего-либо
» WarCraft 3 / Небольшой вопрос касательно хэш-таблиц
» WarCraft 3 / Ищу карту
» WarCraft 3 / Убрать "награду" за убийство иллюзий
» WarCraft 3 / Насколько быстро выполняется if ? - [Jass]
» WarCraft 3 / Про перенос warhammer 40000: Horus heresy в warcraft III
» WarCraft 3 / Способности и алгоритмы на заказ
» WarCraft 3 / Как сделать чтобы крипы бежали по указанной линии ?
» WarCraft 3 / Проседает фпс. Как лечить?
Все стандартные стомп способности вызывают просадку фпс, причем чем больше карта - тем сильнее, это баг - т.к один из кодеров решил что шибко долго искать все декрации в радиусе, лучше целиком в цикле перебрать весь их класс чтобы пересчитать им высоту над рельефом, когда деформируется земля - пересчитываются высоты всех стоящих на ней обьектов - чтобы они не висели в воздухе. Подобное было и в сравнительно современных играх.
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Как начать писать свой код ИИ?
Скрипт AI можно запустить только для игрока бота, если слотом управляет человек - всё AI не стартанет, убираешь все стандартные триггеры сражения и создаешь запуск твоего ии для конкретного игрока если им управляет компьютер.
» WarCraft 3 / Как сделать полоску хп у юнита/здания невидимой?
Либо мемхаком, флаг юниту особый ставим -