Factorio-Access / FactorioAccess

An accessibility mod for the video game Factorio, making the game accessible to the blind and visually impaired.
Other
14 stars 8 forks source link

building while free walking can teleport the player #156

Closed ahicks92 closed 1 month ago

ahicks92 commented 1 month ago

We had a discussion on Discord and I said I didn't use free walking because it had weird issues. I did try to use free walking to turret creep today, thus remembering said weird issues: if things line up just right (being more than 1x1 really helps) then hitting the cursor to drop something while moving can end up on top of you, breaking the line.

LevFendi commented 1 month ago

I need to reproduce this by build locking and running with 2 by 2 buildings but it may be related to the bug of the cursor occasionally selecting the character while running. Will act according to what testing reveals

LevFendi commented 1 month ago

After testing, it was found that the issue of the player teleporting and mis-aligning the building previews happens during build lock mode when in cursor mode, while I was unable to find cases of it happening in smooth walk mode of any kind.

The recent changes will stop the player from being teleported if build lock is on or the player is currently running while you try to build over them. It also plays an extra alert beep to distinguish it from a regular obstacle preventing the construction.

ahicks92 commented 1 month ago

I'll take another look at a repro. 100% sure I saw this, but I haven't seen it again; I was trying to turret creep; it could be a weird reaction that we'll never find.

ahicks92 commented 1 month ago

I have yet to get a repro at all. I'm guessing it's more complicated than this or fixed somehow. Closing: if I'm the one who opened it and I can't break it again... I'll either reopen this or open something new with a reliable repro with steps. My guess is it's going to turn out to be some specific sequences of steps not in a straight line followed by a build such that the player is now inside the area.