Results 1 to 7 of 7

Thread: [Confirmed] Timewalk movement speed is too fast.

  1. #1
    Basic Member igo95862's Avatar
    Join Date
    Aug 2012
    Posts
    3,142

    [Confirmed] Timewalk movement speed is too fast.

    Dota 1: 65 units every 0.025 seconds = 2600

    Spoiler: 

    function Func2869 takes nothing returns nothing
    local unit loc_unit01=GetTriggerUnit()
    local location loc_location01
    local trigger loc_trigger01=CreateTrigger()
    local integer loc_integer01=GetHandleId(loc_trigger01)
    local real loc_real01=GetUnitX(loc_unit01)
    local real loc_real02=GetUnitY(loc_unit01)
    local real loc_real03
    local real loc_real04
    local real loc_real05
    local unit loc_unit02=CreateUnit(GetOwningPlayer(loc_unit01), 'e00E',loc_real01,loc_real02,0)
    if GetSpellTargetUnit()==null then
    set loc_location01=GetSpellTargetLoc()
    else
    set loc_location01=GetUnitLoc(GetSpellTargetUnit())
    endif
    set loc_real03=GetLocationX(loc_location01)
    set loc_real04=GetLocationY(loc_location01)
    set loc_real05=Func0168(loc_real01,loc_real02,loc_real 03,loc_real04)
    call RemoveLocation(loc_location01)
    call SetUnitAnimationByIndex(loc_unit01,0)
    call SetUnitPathing(loc_unit01,false)
    call SetUnitInvulnerable(loc_unit01,true)
    call SetUnitVertexColor(loc_unit01,0,0,0,255)
    call SaveInteger(hashtable001,(GetHandleId((loc_unit01) )),((4261)),(1))
    call SaveReal(hashtable001,(loc_integer01),(66),((Func0 125(loc_real03))*1.0))
    call SaveReal(hashtable001,(loc_integer01),(67),((Func0 128(loc_real04))*1.0))
    call SaveReal(hashtable001,(loc_integer01),(23),((loc_r eal01)*1.0))
    call SaveReal(hashtable001,(loc_integer01),(24),((loc_r eal02)*1.0))
    call SaveReal(hashtable001,(loc_integer01),(137),((loc_ real05)*1.0))
    call SaveUnitHandle(hashtable001,(loc_integer01),(14),( loc_unit01))
    call SaveUnitHandle(hashtable001,(loc_integer01),(19),( loc_unit02))
    call SaveGroupHandle(hashtable001,(loc_integer01),(187) ,(Func0030()))
    call Func0190(loc_unit02,'A0LA')
    call SetUnitAbilityLevel(loc_unit02,'A0LA',GetUnitAbili tyLevel(loc_unit01,'A0LK'))
    call TriggerRegisterTimerEvent(loc_trigger01,0.025,true )
    call TriggerAddCondition(loc_trigger01,Condition(functi on Func2868))
    set loc_unit01=null
    set loc_location01=null
    set loc_trigger01=null
    set loc_unit02=null
    endfunction

    function Func2868 takes nothing returns boolean
    local trigger loc_trigger01=GetTriggeringTrigger()
    local integer loc_integer01=GetHandleId(loc_trigger01)
    local unit loc_unit01=(LoadUnitHandle(hashtable001,(loc_integ er01),(14)))
    local real loc_real01=(LoadReal(hashtable001,(loc_integer01), (66)))
    local real loc_real02=(LoadReal(hashtable001,(loc_integer01), (67)))
    local real loc_real03=(LoadReal(hashtable001,(loc_integer01), (137)))
    local integer loc_integer02=GetTriggerEvalCount(loc_trigger01)
    local real loc_real04=GetUnitX(loc_unit01)
    local real loc_real05=GetUnitY(loc_unit01)
    local real loc_real06=(LoadReal(hashtable001,(loc_integer01), (23)))
    local real loc_real07=(LoadReal(hashtable001,(loc_integer01), (24)))
    local unit loc_unit02=(LoadUnitHandle(hashtable001,(loc_integ er01),(19)))
    local group loc_group01=Func0030()
    local group loc_group02=(LoadGroupHandle(hashtable001,(loc_int eger01),(187)))
    local integer loc_integer03=GetUnitAbilityLevel(loc_unit01,'A0LK ')
    if Func0148(loc_real04,loc_real05,loc_real01,loc_real 02)<=real330 then
    set loc_real04=loc_real01
    set loc_real05=loc_real02
    else
    set loc_real04=Func0125(loc_real06+65*Cos(loc_real03*b j_DEGTORAD))
    set loc_real05=Func0128(loc_real07+65*Sin(loc_real03*b j_DEGTORAD))

    endif
    if loc_integer03==1 then
    set integer497='A29A'
    elseif loc_integer03==2 then
    set integer497='A299'
    elseif loc_integer03==3 then
    set integer497='A29B'
    elseif loc_integer03==4 then
    set integer497='A298'
    endif
    set unit124=loc_unit01
    set group020=loc_group02
    call GroupEnumUnitsInRange(loc_group01,loc_real04,loc_r eal05,325,Condition(function Func0301))
    call ForGroup(loc_group01,function Func2867)
    call Func0029(loc_group01)
    call SaveReal(hashtable001,(loc_integer01),(23),((loc_r eal04)*1.0))
    call SaveReal(hashtable001,(loc_integer01),(24),((loc_r eal05)*1.0))
    call SetUnitPosition(loc_unit01,loc_real04,loc_real05)
    if(loc_real04==loc_real01 and loc_real05==loc_real02)or loc_integer02>40 then
    call SetUnitX(loc_unit02,loc_real04)
    call SetUnitY(loc_unit02,loc_real05)
    call IssueImmediateOrder(loc_unit02,"thunderclap")
    call Func0029(loc_group02)
    call FlushChildHashtable(hashtable001,(loc_integer01))
    call Func0035(loc_trigger01)
    call SetUnitAnimation(loc_unit01,"stand")
    call SetUnitPathing(loc_unit01,true)
    call SetUnitInvulnerable(loc_unit01,false)
    if GetUnitTypeId(loc_unit01)=='E02X' then
    call SetUnitVertexColor(loc_unit01,255,255,255,255)
    else
    call SetUnitVertexColor(loc_unit01,0,255,150,255)
    endif
    call SaveInteger(hashtable001,(GetHandleId((loc_unit01) )),((4261)),(2))
    endif
    set loc_trigger01=null
    set loc_unit01=null
    set loc_unit02=null
    return false
    endfunction



    Dota 2: 3000

    Spoiler: 

    // Faceless Void: Time Walk
    //================================================== ================================================== =============
    "faceless_void_time_walk"
    {
    // General
    //-------------------------------------------------------------------------------------------------------------
    "ID" "5182" // unique ID number for this ability. Do not change this once established or it will invalidate collected stats.
    "AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_POINT"

    // Casting
    //-------------------------------------------------------------------------------------------------------------
    "AbilityCastRange" "700 900 1100 1300"
    "AbilityCastPoint" "0.35 0.35 0.35 0.35"

    // Time
    //-------------------------------------------------------------------------------------------------------------
    "AbilityCooldown" "19.0 17.0 15.0 13.0"

    // Cost
    //-------------------------------------------------------------------------------------------------------------
    "AbilityManaCost" "90"

    // Stats
    //-------------------------------------------------------------------------------------------------------------
    "AbilityModifierSupportValue" "0.25" // mostly about the blink

    // Special
    //-------------------------------------------------------------------------------------------------------------
    "AbilitySpecial"
    {
    "01"
    {
    "var_type" "FIELD_INTEGER"
    "speed" "3000"
    }
    "02"
    {
    "var_type" "FIELD_INTEGER"
    "radius" "300"
    }
    "03"
    {
    "var_type" "FIELD_FLOAT"
    "duration" "3.0"
    }
    "04"
    {
    "var_type" "FIELD_INTEGER"
    "movement_speed_pct" "-20 -30 -40 -50"
    }
    "05"
    {
    "var_type" "FIELD_INTEGER"
    "attack_speed_pct" "-20 -30 -40 -50"
    }
    "06"
    {
    "var_type" "FIELD_INTEGER"
    "tooltip_range" "700 900 1100 1300"
    }
    }
    }

  2. #2
    Banned
    Join Date
    Dec 2012
    Location
    no
    Posts
    21,959
    Does that mean it shouldn't break the leash? I forgot the numbers that break it.

  3. #3
    Basic Member igo95862's Avatar
    Join Date
    Aug 2012
    Posts
    3,142
    Quote Originally Posted by Noo View Post
    Does that mean it shouldn't break the leash? I forgot the numbers that break it.
    You can't say exact numbers because time walk interval is faster then pounce leash. Leash will break then unit moved 100 units in 0.03 seconds. Because timewalk moves unit for 65 each 0.025 it is highly possible that it will move unit for 130 in 0.03 seconds.

  4. #4

  5. #5
    Basic Member d07.RiV's Avatar
    Join Date
    Sep 2012
    Location
    The Clock Tower
    Posts
    1,160
    Still better than jumping across the map vs greater bash/netherstrike.

  6. #6
    Basic Member igo95862's Avatar
    Join Date
    Aug 2012
    Posts
    3,142
    Quote Originally Posted by d07.RiV View Post
    Still better than jumping across the map vs greater bash/netherstrike.
    It should end at 40th trigger count so maximum distance is 40*65=2600.

  7. #7
    Basic Member Heh_'s Avatar
    Join Date
    Oct 2012
    Posts
    6,198
    Quote Originally Posted by igo95862 View Post
    Such funny interactions may happen between leash and timewalk.
    LOL. Still not as absurd as the random teleportation bug though.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •