Wednesday, March 12, 2008

Upgrading Modules to AGS 3.0

I've been going through the Hypertext, Credits and SpriteFont modules checking if they need to be changed to work better under AGS 3.0. Forrtunately, Credits didn't need anythign doing at all. If you turn off "Enforce object-based scripting" in AGS 3.0, they all should still work, but they would be, still, using the Room background as a temporary draw space, then restoring it, which less efficient.

So, it turned out to be relatively painless to move to the DrawingSurface commands I mentioned before, but I have yet to fully test the upgraded modules at all game resolutions, which can often be the tricky bit to get working. Also, since my own site is on the same server as the AGS forums, I can't upload it right now anyway!

But to make sure the modules still work under 2.72 (and 2.71 and 2.70, where possible) I have to stick lots of #ifver 3.0 and #ifnver 3.0 in all over the place, to wrap up the version-specific code. And then, if you have to support versions before 2.72, then you need to wrap those up in #ifdef AGS_SUPPORTS_IFVER as 2.71 and earlier didn't have the #ifver commands! So it can get quite convoluted. Then, I need to load up all the different versions and check they still work... Maintenance can be pretty non-trivial, sometimes.

No comments:

Post a Comment

Please keep comments clean: foul language means your comment will not get published. Sorry for the captcha, was getting to much spam.