ID:728863
 
(See the best response by .screw.)
Problem description:
I want to create a character type in my game that's fast. Simple enough, that. But I really can't figure out how to actually make it faster.

I want all my mobs to move at normal speed, that is to say without any sort of delay, while still making this new character move faster.

I understand that this will obviously make it harder to control the character, but that's fine with me. Any suggestions?

If I was you I would set the speed variable in the characters type then use move() to set the speed accordingly.

This was you can have 10 characters/monsters moving different speeds without having to edit much code.
Yeahh, but that's what I can't figure out how to do. The closest I can come to the effect is to make the pixel_step_size bigger, but that messes me up since I use a tile map.
Just add a delay in move() for the slower characters you can do something like,

sleep(character_speed)//slow the characters speed

We seem to have a resource on this, check it out it may give you an insight.

http://www.byond.com/developer/?text=speed&sort=pop
That's what I mean, I'm trying to find a way of doing it without lowering the speed of other mobs. :P
Best response
I produced this snippet for somebody in another thread, but it applies here as well.

mob/var
delay = 10
moved = 0

mob/Move()
if(moved) return // if you moved, stop execution of this proc

// else, move
moved = 1
..()

spawn(delay) moved = 0


mob/verb
set_delay(d as num) // sets the delay, this is here for your testing purposes
delay = d