New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed GM_COMPATIBILITY_VERSION using the old 0,1,2 system instead of … #993
Conversation
…version numbers which broke new alpha behaviour from #969
There are big distinctions between GM5 and 6 (and even between 6 and 6.1); I'd probably use numbers like 530, 600, 610, 700, 710, 800, and 900, and just use 0 for Standard. It's not a huge issue, as I think Sorlok just put his 5.3 compatibility layer in an extension (correct me if I'm wrong, @sorlok). |
I can't use 0 for standard because then the comparisons won't work the same and I'll have to have a |
Personally, I think it's better for the code to say what it means; it's true that in most cases, changes made to future versions of GM are improvements, and that ENIGMA would always want to include those improvements. But we know that even so far, this isn't always the case, so designing a check system around that can cause issues. If you mean to say, "If we're doing GM compatibility for an old version," say it; It's just a way to avoid future surprises. |
I disagree, for one |
What I'm saying is that I don't think it's valid to try to place ENIGMA somewhere in Game Maker's chronology; it's nice that ENIGMA's selection of reasonable defaults coincide with most versions of Game Maker, but that compatibility is not the engine's sole purpose (and even with the support macros we have, it doesn't accomplish full compatibility, anyway). Checks like |
Yeah but ENIGMA's default is to be compatible with Studio, that's what |
In practice, it's probably better if we fit our concepts to math, given that this code is running on a giant calculator. I think our core disagreement lies in the idea that ENIGMA's default is Studio compatibility. I think I speak for most of the other contributors when I say that Studio isn't really part of ENIGMA's equation. Harri doesn't care about Game Maker at all, at this point; his sights are set much higher. Sorlok is most interested in compatibility with really old GM versions (including 5.3). I'd say Robert cares the most about further GM versions, actually, but he usually goes with the flow. In my eyes, Studio doesn't really bring much to the table. Most of the ideas introduced in Studio were in ENIGMA since the beginning, and the rest are largely AIDS (like that new subscript syntax from #988). ENIGMA was created when Yoyo initially bought Game Maker at version 6.1. Both GM and ENIGMA have improved on 6.1 immensely, but feature parity beyond 6.1 is a combination of convergent evolution and feature requests, rather than principle. I could probably ramble for a while about places we've deliberately diverged vs places we've entertained minute differences, but there's not much point. And this is probably way more discussion than a short series of three-digit numbers is worth. We can deal with any needed refactoring if and when we decide to conditionally support a difference between ENIGMA and GM:S (so far, we've just canned them). That said, this change is basically fine by me, for now; I'll let Robert or Harri merge this, so they have a chance to opine. |
Believe it or not, I am of the opinion that GMS is more compatible with ENIGMA. The reason being that it is compiled and has removed support for most of the things we could never get around to, like looking up variables by name and That said, and considering Josh's position, I don't understand why he is the one that is wanting more specific version numbers. But yes I do believe we should only focus on compatibility where it's actually kind of useful. I don't think anybody really cares about What I mean is that I don't really care about GameMaker version numbers less than a minor. I don't even really care about anything less than a major. GM 8.1's changes over 8.0 were great and don't require any debate. Most of it being in the graphics system where they added a model batcher that significantly sped up 3D games, something it should have been doing all along. Additionally, old games didn't need refactored in order to benefit from the changes. I say go ahead and merge it. |
Bump; This needs merging |
…version numbers which broke new alpha behaviour from #969
Either I forgot to commit that file or it got lost because of the force-push. Either way, this fixes GM8 behaviour always being used.