28

» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков

VinerX, благодари только если сработает, потому что люди смотрят на это и думают будто я правда тебе тут чем-то помог
28

» WarCraft 3 / this application has encountered a critical error FATAL ERROR

ну если в звуке дело то скинь код как ты его используешь, либо сам звук

или вообще, выведи проблему на отдельную карту и скинь сюда
28

» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков

VinerX, я проверил, сорян, гуи дебильное, ненавижу, его фиг поймёшь)
замени PLAYER_STATE_GOLD_GATHERED на PLAYER_STATE_RESOURCE_GOLD
28

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

выбери нужное событие и во вкладке с юнитами найти действие с выполнением приказа на другого юнита, там выбери массовую телепортацию
28

» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков

VinerX, вджасс на рефе работает, но лучше тогда бы на луа тебе сделали)
если сомневаешься то сделаю на джассе тогда уж

вот, я без понятия работает ли, потому что лень создавать юнитов под эти условия, да и может накосячил случайно где-то и работает не так как задумано, поможет или нет не знаю, но попробуй что-ли(?)
код
function Trig_Income_Cond takes nothing returns boolean
    local integer i
    set udg_lastFilterUnit = GetFilterUnit( )
    
    set i = GetUnitFoodMade( udg_lastFilterUnit )
    if IsUnitInGroup( udg_lastFilterUnit, udg_GroupEnded ) or ( i == 150 or i == 75 ) then
        set udg_Inc = udg_Inc + i
    endif
    
    return false
endfunction

function Trig_Income_and_Disincome_Copy_Enum_Func takes nothing returns nothing
    local integer i
    set udg_TempPlayer = GetEnumPlayer( )
    
    set udg_Inc = 0
    call GroupEnumUnitsOfPlayer( udg_LocalOtrad, udg_TempPlayer, udg_IncomeCondition )
    
    call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Доход золота (каждые 15 секунд):|r |cff00ff00" + I2S( udg_Inc ) + "|r" )
    
    set i = GetPlayerTechCount( udg_TempPlayer, 'R004', true ) * 75
    set udg_Inc = udg_Inc + i
    
    call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Дополнительный доход (от улучшений):|r |cff00ff00" + I2S( i ) + "|r" )
    
    set i = GetPlayerUnitCount( udg_TempPlayer, false ) * 25
    set udg_Inc = udg_Inc - i
    
    call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00,  "|cffffcc00Потребление на войска:|r |c00FF0303" + I2S( i ) + "|r" )
    
    if udg_Inc > 0 then
        call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00,  "|cffffcc00Итого баланс:|r |cff00ff00" + I2S( udg_Inc ) + " (Профицит)|r" )
    elseif udg_Inc == 0 then
        call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00,  "|cffffcc00Итого баланс:|r |cffffff000 (Нулевой бюджет)|r" )
    else
        call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00,  "|cffffcc00Итого баланс:|r |cffff0000" + I2S( -udg_Inc ) + " (Дефицит)|r" )
    endif
    
    call SetPlayerState( udg_TempPlayer, PLAYER_STATE_GOLD_GATHERED, GetPlayerState( udg_TempPlayer, PLAYER_STATE_GOLD_GATHERED ) + udg_Inc )
    set udg_Inc = 0
endfunction

function Trig_Income_and_Disincome_Copy_O_Actions takes nothing returns nothing
    call ForForce( bj_FORCE_ALL_PLAYERS, function Trig_Income_and_Disincome_Copy_Enum_Func )
endfunction

//===========================================================================
function InitTrig_Income_and_Disincome_Copy_O takes nothing returns nothing
    set gg_trg_Income_and_Disincome_Copy_O = CreateTrigger(  )
    call DisableTrigger( gg_trg_Income_and_Disincome_Copy_O )
    call TriggerRegisterTimerExpireEvent( gg_trg_Income_and_Disincome_Copy_O, udg_Compteur1 )
    call TriggerAddAction( gg_trg_Income_and_Disincome_Copy_O, function Trig_Income_and_Disincome_Copy_O_Actions )
    
    set udg_IncomeCondition = Condition( function Trig_Income_Cond )
endfunction
Загруженные файлы
28

» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков

бож лол, это ж просто конвернутое гуи)

сейчас попробую сделать получше, без понятия поможет ли
28

» WarCraft 3 / Утечки памяти от юнитов

дополню ответ от quq_CCCP, чтобы никаких багов не было достаточно выставить оптимальное время смерти и убрать разлагаемость в типе смерти
28

» WarCraft 3 / волны врагов. некоторые юниты стоят на месте

ну отобрази на отдельной карте эту проблему и скинь сюда, попробуем решить
28

» WarCraft 3 / волны врагов. некоторые юниты стоят на месте

Ну во первых нужно дать их игроку где пустой слот, во вторых, если юнитов на одного игрока много то они начинают тупить с поиском пути
28

» WarCraft 3 / Свечение юнита, как у фонаря

Нейни, факел тоже как объект можно прикрепить к юниту, вон даже триггерно не нужно крепить, ScorpioT1000, напомнил об абилках
28

» WarCraft 3 / Свечение юнита, как у фонаря

ну триггерно я бы просто прикрепил их к юниту, в моделэдиторе или других редакторах без понятия
28

» WarCraft 3 / Sephiroth

Красный Товарищ, ну вес соответствует качеству, высокополигональная модель с 84 анимациями это прям вау, достойненько

если не для гг, то как для рейд босса маст хев
28

» WarCraft 3 / Длительность реплики во время ролика

Lord_Teo, единственная ситуация когда действие добавить несёт какую-то пользу, это работа со звуком с этим соглашусь, но и то, даже для этого есть отдельная функция "ждать звука"
28

» WarCraft 3 / Длительность реплики во время ролика

Lord_Teo, мне кажется я знаю побольше твоего и работу функции получше знаю, если уж внутренности посмотрел и понял что там))
и мой первый коммент подтверждает тогда решение проблемы)
ну попробуй изменить "добавить" на "установить"

по поводу твоих скринов, можно установить 25 секунд и тыкнуть "не ждать", в след, ниже поставить функцию "ждать", результат будет такой же)
Загруженные файлы
28

» WarCraft 3 / Длительность реплики во время ролика

Lord_Teo, не знаю, у меня даже проблемы автора нет собственно, реплики проигрываются даже дольше указанного мной времени, вместо 25 сек 30-31
28

» WarCraft 3 / Длительность реплики во время ролика

Lord_Teo, раскрой функцию TransmissionFromUnitWithNameBJ, внутри найдёшь TriggerSleepAction, это то же самое, что и действие "Ждать"
28

» WarCraft 3 / Усиления громкости звука в области и Преследования за Юнитом

AncientOverlord, в триггерах просто поройся, для звука прям отдельную вкладку "звук" сделали, как и для области, где есть её перемещение
28

» WarCraft 3 / Длительность реплики во время ролика

ну попробуй изменить "добавить" на "установить", если не поможет, то действие "ждать" отдельной функцией