Set_tile doesn't work as expected

I’m fighting the engine quite a bit right now w/ set_tile. I previously posted here: Tilemap collision shape doesn't update w/ set_tile about an issue w/ set_tile not updating collision masks. I’ve resolved that using a workaround trick. However, I am working on a more advanced level design at the moment and I’m experiencing a worse form of this bug where set_tile simply doesn’t do anything at all. Using the previous trick doesn’t help, nor does stalling by 2 update calls. With this issue I’m afraid I won’t be able to use the engine to continue developing the game as my level design requires this functionality to work properly. I’d like to submit the repro project to Github but I am locked out of my account since I was homeless recently and lost my password/phone associated to the account.

You can also zip the project and attach it here (exclude the .git and build folders though)

1 Like

Here’s a link to it: https://forum.defold.com/uploads/default/original/3X/0/8/087eaf0d927cf47c0578b710f484650e36fb70d9.zip

Thanks if you get the chance to investigate. I can try to help in whatever way to fix it. I’m still working on trying to build Defold but learning the code there will probably take me too long and I would rather not use a custom build of the engine in case the issue is resolved another way.

Here’s my explanation of the bug for the repro project:

Move the player (kinematic object) with arrow keys. Debug physics show collision with removed walls (during init). Ones that are removed within the timer.delay function register collisions properly. This shows that tileset.set_tile must be deferred until later. I’ve determined from my own testing that the first update loop must execute before the collision shape is properly updated (for my own game.)

Sorry the build folder is already included in that ZIP I had attached it to the previous thread already.

Here’s a zip without the build folder:

tilemap-collision.zip (7.5 KB)

EDIT: I re-tested and the bug isn’t happening now for me… Not sure it seems to be spontaneous. Wish I could show a better example.

Possibly related: