Forwards compatibility and scripting discussion
Since #867 was closed, and the conversation was quite valuable, I thought I'd open a new issue with the goal of continuing this discussion further. What was already discussed was the possibility of breaking forwards compatibility to add new features making custom level creation easier, and the idea of a Lua API for more control over the game, to do what scripting currently cannot.
Additionally, I've created a thread in the (unofficial) VVVVVV Discord server for discussion on what a hypothetical Lua API would look like; however this is just implementation details to make sure that if we end up adding a Lua API, it'll be a good one.
And continuing from the previous issue, I would rather VVVVVV not become a mess of everything we'd like to implement, and forwards compatibility features be added in moderation, with hopefully more than one reviewer on the PR when it's time to merge. I do not want VVVVVV to go the same way as Community Edition, and I doubt a lot of other people would, either.
As a personal note, VVVVVV is an important game to me. I've always loved creating cool systems in things that were never intended to be used as such. I absolutely love abusing internal scripting and pushing the engine to its limits for maybe only a few seconds of gameplay. I find this kind of thing fun; it's problem solving taken to the extreme, with the huge payoff of being able to step back and see that you, in fact, made this huge elaborate system in a level editor for a game from 2010. With the addition of a Lua API, some of that charm would go away, and I believe this is the case for a lot of other people. However, I would rather this not stop progress, because what a small group of people enjoy in a game shouldn't stop the rest of the level creators from getting a much better system to create what they want. I'd rather lose that specific enjoyment than stopping everyone else from being able to make what they want.
With all of that said, I hope this sparks a discussion.