Browse through the thread, the code snippets should be all there (I'm too tired to do it now, it's 8 am).
What you need:
- set/get HEADING
- a seperate loop which compares the unit's position (your_old_position - current_position) over time in short intervals to see if it moves and how fast it goes
- get UNIT_XZ(get MY_ID)
You need to run a seperate loop which checks in short intervals (25-50 ms) if the unit moves and how fast it moves, use PRINT to see what the value at maximum speed and your desired can't steer speed (use set MAX_SPEED for overrides etc.).
When your value is, say, at 20% of it's maximum value, save the current heading (get HEADING) if it wasn't stored before, and override HEADING with it. Once it's greater than 20% set your stored heading to -1 (as in unset it) to move it out of the 0-65535 range. I think spring never reports negative values through get HEADING, can be wrong though.
What ever that should be all you need. How do I shot BOS not included...