add RGSS_VERSION (RGSS3) #61
No reviewers
Labels
No Label
RGSS accuracy
bug
compilation
discussion
documentation
duplicate
enhancement
invalid
performance issue
port request
question
ruby incompatibility
wontfix
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: MapleShrine/mkxp#61
Loading…
Reference in New Issue
No description provided.
Delete Branch "mri-add-rgss_version"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Even though 3.0.1 is the current version, 3.0.0 is used, because mkxp doesn't
implement the changes like not raising a TypeError for 'Color.new == nil' yet.
3.0.1 (finally) returns false. Other changes don't affect mkxp (I think).
See http://tkool.jp/support/download/rpgvxace/rpgvxace_update (Japanese).
The comparison change and maybe adding
RGSS_VERSION
forrgssVer == 1
andrgssVer == 2
requires some discussion.I think mkxp should implement 3.0.1's behavior for
rgssVer == 3
as its usage is higher than 3.0.0, because the international VX Ace defaults to RGSS301.dll since its release.Yeah, I'm a bit worried about scripts that will intentionally test if this constant is defined to probe whether they're running on RGSS3 or earlier (and adjust their behavior accordingly). IMO it would be wiser to not define it pre 3.
That could be the case. It was just an idea.
Any comments on the comparison issue? If mkxp also fixes it, the version string can be changed to 3.0.1. Or do you need some time to think about supporting not only major versions? There are some older games that use RGSS300.dll, but I think that change wouldn't break any of them.
No, fixing the comparison issue and changing the string to "3.0.1" is perfectly fine I think. The only behavior that we're changing is to not crash from a raised exception, right? I don't see any way in which a game could rely on a TypeError being raised.
Until 3.0.1 a Color, Tone or Rect instance can only be compared to another instance of the same class, otherwise a
TypeError
is raised. 3.0.1 correctly returnsfalse
instead.Anyway, that can happen in a later commit. Can you wrap the
RGSS_VERSION
definition in aif (rgssVer == 3)
? Then I can pull this.Isn't it sort of already in one? Should I add an assertion, too?
Oh, excuse me, you're right; with the small hunk context and the discussion about earlier RGSS versions, I somehow didn't realize this. My bad.