Hi, Woffelson! Allow me to address some of the points of your post here. ENIGMA, being open source, understandably has some differences from GM. In recent months though, we've been taking a lot of steps to address this including the addition of continuous integration, engine cleanup, abstraction, and additional testing. There is much work to be done still but things have demonstrably been improving.
Deactivation/activation codes weren't working as they should.
I am not surprised, we have some open issues in regards to instance activation and deactivation.
https://github.com/enigma-dev/enigma-dev/issues/743https://github.com/enigma-dev/enigma-dev/issues/851It seems that the activated region was locked to its beginning position.
Your bug is interesting and sounds as if it could be related to the persistent rooms issue I linked above.
Maybe setting the variables in create event has something to do with this lockdown of id variables?
Using [snip]show_message(str)[/snip] to verify all of your assumptions would be a great start if you really think that is the cause. It would also help with getting the bug fixed too, since finding the actual issue in a way that's reproducible is half the task of fixing it.
Oh, and other small thing: backgrounds doesn't seem to tile outside the room. (Quite annoying when trying to generate endless rooms.)
Ah, I was curious about this one myself while going through the graphics code sometime recently. Luckily, we are actually in a much better position to fix this now that all of our background drawing code has been generalized (meaning we have only 1 version of the functions used by all graphics systems; D3D no longer has its own function different from GL).
I actually already apparently have an issue open for this that we haven't closed yet:
https://github.com/enigma-dev/enigma-dev/issues/646We draw the tiled backgrounds here:
https://github.com/enigma-dev/enigma-dev/blob/4e8ad7c3857794f490610c621ae64ae54b3456b0/ENIGMAsystem/SHELL/Graphics_Systems/General/GSscreen.cpp#L83[snip]draw_background_tiled_ext[/snip] is implemented here:
https://github.com/enigma-dev/enigma-dev/blob/4e8ad7c3857794f490610c621ae64ae54b3456b0/ENIGMAsystem/SHELL/Graphics_Systems/General/GSbackground.cpp#L217If you want to experiment with the code in your local copy, changes to ENIGMA's source code take effect as soon as you save the source file and run the game again.