ID:86980
 
Resolved
Fixed in 461
BYOND Version:459
Operating System:Windows Vista Business 64-bit
Web Browser:Firefox 3.5.5
Status: Resolved (461)

This issue has been resolved.
Descriptive Problem Summary:
When updating client.pixel_x/y rapidly (like once per tick), the screen does not update immediately. Instead, it jerks ahead every 1-3 seconds (perhaps whenever the offset total has increased by a multiple of world.icon_size or more)

Numbered Steps to Reproduce Problem:
http://www.polatrite.com/files/ClientPixelBug.zip

Code Snippet (if applicable) to Reproduce Problem:
http://www.polatrite.com/files/ClientPixelBug.zip


Expected Results:
Updating client.pixel_x/y should update the client immediately.

Actual Results:
As indicated above, the client is only updated "every so often" - 1-3 seconds, and then the client view jerks, instead of updating smoothly.

When does the problem NOT occur?
If you move the client view using the arrow keys, the client will update correctly as long as you keep moving.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
I have not checked this.

Workarounds:
I do not know of any workaround at this time, if the updates need to be performed while the client view remains still (such as in my case).


Thanks for investigating!


~Polatrite~
client.pixel_step_size also exhibits strange and similar behavior. It does not move in the way you would expect.

If you set pixel_step_size to 1 then move, it will act as though the step_size is still automatic, and only switch explicitly to 1 near the tail-end of the movement.

Disable the while() loop and add client/pixel_step_size = 1 to see this problem.