Movement Speed

Status
Not open for further replies.
Level 12
Joined
Mar 23, 2008
Messages
942
Just a little doubt, Its possible to increase a unit movement speed to something higher than the gameplay constants says?

(I don't want all my units to be able to walk at that speed, just a specific unit)
 
You cannot beyond the gameplay constant or the units maximum speed(the one in the object editor.
P.s. that is a hint.
 
max is 522 you can't change it (only in gameplay constants) if you don't belive me, make this trigger:
  • MS check
    • Events
      • Player - Player 1 (Red) types a chat message containing -ms as An exact match
    • Conditions
    • Actions
      • Game - Display to Player Group - Player 1 (Red) the text:(String((Current movement speed of Your unit <gen>))))
just pick the unit you control, than you will see :)
 
You are telling me to change the constants to a high value and them set each unit max speed to the previous gameplay constant value?

Too much work...
Huh? What are you saying? Your other units wouldn't run fast. Why would they? Set the max movement speed gameplay constants value to 522 and set your desired unit's movement speed to what you want.
 
Huh? What are you saying? Your other units wouldn't run fast. Why would they? Set the max movement speed gameplay constants value to 522 and set your desired unit's movement speed to what you want.
What are you saying? Your other units will not run more than 522 that way...

I told to put 1800 as gameplay constants, and set each max unit speed to 522, and only one unit to 1800. so that will be the only unit that can go to 1800 speed.
 
The GUI's PolarProjection (Move Unit Instantly) interrupt unit orders,
I'm not sure about SetUnitPosition also interrupt unit orders too.

I'm using the latter one in Missile War.

function Trig_Unit_Move_Code_Enum takes nothing returns nothing
local unit u = GetEnumUnit()
call SetUnitPosition(u, GetUnitX(u)+50.0*Cos(GetUnitFacing(u)*0.01745), GetUnitY(u)+50.0*Sin(GetUnitFacing(u)*0.01745))
set u = null
endfunction

function Trig_Unit_Move_Code_Enum_Fast takes nothing returns nothing
local unit u = GetEnumUnit()
call SetUnitPosition(u, GetUnitX(u)+75.0*Cos(GetUnitFacing(u)*0.01745), GetUnitY(u)+75.0*Sin(GetUnitFacing(u)*0.01745))
set u = null
endfunction

function Trig_Unit_Move_Code_Enum_Slow takes nothing returns nothing
local unit u = GetEnumUnit()
call SetUnitPosition(u, GetUnitX(u)+15.0*Cos(GetUnitFacing(u)*0.01745), GetUnitY(u)+15.0*Sin(GetUnitFacing(u)*0.01745))
set u = null
endfunction

function Trig_Unit_Move_Code_Enum_Medium takes nothing returns nothing
local unit u = GetEnumUnit()
call SetUnitPosition(u, GetUnitX(u)+37.5*Cos(GetUnitFacing(u)*0.01745), GetUnitY(u)+37.5*Sin(GetUnitFacing(u)*0.01745))
set u = null
endfunction

function Trig_Unit_Move_Code_Actions takes nothing returns nothing
call ForGroup(udg_Move, function Trig_Unit_Move_Code_Enum)
call ForGroup(udg_MoveLaser, function Trig_Unit_Move_Code_Enum)
call ForGroup(udg_MoveFast, function Trig_Unit_Move_Code_Enum_Fast)
call ForGroup(udg_MoveSlow, function Trig_Unit_Move_Code_Enum_Slow)
call ForGroup(udg_MoveMedium, function Trig_Unit_Move_Code_Enum_Medium)
endfunction

//===========================================================================
function InitTrig_Unit_Move_Code takes nothing returns nothing
set gg_trg_Unit_Move_Code = CreateTrigger()
call TriggerAddAction(gg_trg_Unit_Move_Code, function Trig_Unit_Move_Code_Actions)
call TriggerRegisterTimerEvent(gg_trg_Unit_Move_Code, 0.05, true)
endfunction
 
That is not possible. Units cannot move faster than 522 without trigger assistance. For speeds above 522, projectile/unit movement system is needed which moves units above the movement limit, but that would be without units move animation.
They can't move faster than 522? Even if I edit gameplay constants?
So why I played a map that my movespeed was 540?
 
Status
Not open for further replies.
Back
Top