ID:2117230
 
Resolved
Pixel gliding was activated even when the change in loc and pixels was much greater than step_size.
BYOND Version:511.1349
Operating System:Windows 7 Ultimate
Web Browser:Chrome 51.0.2704.103
Applies to:Dream Seeker
Status: Resolved (511.1350)

This issue has been resolved.
Descriptive Problem Summary:
The example mob i'm going to work off of is our ghost/observer in ss13. this is it's effective animate_movement and sight:
animate_movement = 2
sight = 60

(client.mob == client.eye) //true
(pixel_movement) //false

When I join a game and hit observe to spectate the round, the game will spawn this mob at the late join spawn point (an 'arrivals shuttle') then set it's key to my key to connect my client to the mob.

The issue is that when it does this, the client's center will jump to the tile between my client's current eye, but just before the new eye location, then glide to the new eye

This actually happens with client.mob, not client.eye, but also happens if you just change the eye, and not the mob.

Meat of the issue:

If my client's current mob/eye was at 1,1,1 and i moved the client's mob/eye to a new mob/obj located at 10,1,1 it's jumping to 9,1,1 then gliding to 10,1,1.

Other Notes

It will do this as well for loc changes of the client's mob or eye.

It will do this with any of our mobs, or when we use the verb to set our eye to an object to follow it around.

It will do this when a 511 client connects to a 510 server, as well as a 511.1349 server.

Testing

You may join /tg/station at byond://game.tgstation13.org:1337 or our 511 test server at byond://game.tgstation13.org:9337 with a 511 client and click observe to test this effect. after that, you can double click on any tile more then 2 tiles away to jump to it to also observe the effect.
Hrm, figures there'd be more pixel-glide weirdness to contend with. Any chance you can whip up a demo project?
i think one of my existing ones i sent you will work, (like the pixel shifted sight check one with the googly eyes for a mob)

I'll check
ya, add the following verb to any test project you have that uses tile movement and the issues will jump out quite quickly. (such as sight_check.zip)

/mob/verb/Random_Jump() {loc = locate(rand(1,world.maxx), rand(1,world.maxy), rand(1,world.maxz))}
oh, here is sightcheck again (unmodified, i just still have the link handy) incase you don't have it anymore:

https://tgstation13.org/msoshit/sightcheck.zip

just add that verb, recompile, and then use it.
Descriptive Problem Summary:
Movement animations play even when directly setting a movable atom's loc.

Expected Results:
For movement animations not to play unless actively moving around.

Actual Results:
Movement animations play regardless of whether you are actively moving around. This is undesirable in some situations, i.e. creation of a new movable atom.

Does the problem occur:
Every time? Or how often? Every time.
In other games? N/A
In other user accounts? N/A
On other computers? N/A

When does the problem NOT occur? When not using the latest BETA version.

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.)
The latest stable performs fine; this problem only appeared in the latest BETA release.

Workarounds: N/A
In response to FKI
dupe: http://www.byond.com/forum/?post=2117230&first_unread=1

edit, technically not a dupe, but the cause is the same.
In response to FKI
http://i.imgur.com/lpnrkxh.gifv

It's pretty silly that directly setting step_x and step_y on creation causes a client-side pixel glide.
In response to FKI
Still looking for a way to just turn this effect off. Haven't been able to keep client fps in lof. Quite frankly I'm perfectly fine without this effect.
In response to FKI
Bump? A few of us are really buzzing for the ability to shut the effect off.
In response to MrStonedOne
I think this does count as a duplicate. I'm working on it.
Lummox JR resolved issue with message:
Pixel gliding was activated even when the change in loc and pixels was much greater than step_size.
So if I set step_size to 1, it won't pixel glide right?
client.fps underperformes worst then world.fps, you can't also achive 60 fps with client.fps it caps at around 45-50 and becomes very stuttery and laggy.

world.fps on 510.1347 smooth as butter

client.fps on 511.1349 choppy fps, stuttery jumps 30-50 if set to 40, 60.
This doesn't seem to be fixed on 511.1350. Both client and server updated (and i doubled checked by looking at about byond in both) and the code was recompiled under the new version.

Did you forget to check out again =P
Nope, everything checked out. I'll look into it some more.
I haven't been seeing any more issues regarding this.
it only happens in tile movement.

https://tgstation13.org/msoshit/sightcheck.zip

add the following verb
/mob/verb/Random_Jump() {loc = locate(rand(1,world.maxx), rand(1,world.maxy), rand(1,world.maxz))}


click it, and you will see the issue.