Hey, y'all. You may find that, from time to time, I am unable to post every Saturday. I'll try to keep that from happening in the future. No promises, though.
Localization / Keyboard Layouts
So, some raw stuff went in today that pulls the OS's language and country and runs some QWERTZ and AZERTY checks when a gmRPG game starts up. Most countries and languages are covered. Eventually, this will hook into the Localization Manager using the ISO 639-1 standard (for languages) and the ISO 3166-1 standard (for countries). I understand that someone may prefer to play a game in a different language than the one specified by their OS, so I'll build in the ability to override as the Localization Manager takes shape. You'll probably use the Menu Designer (remember that?) to draw up a classic language selection menu.
Scaling the Application Surface
So, recently, all versions of the Game Maker Studio engine exposed a surface variable called application_surface. This is the surface that everything except the GUI gets drawn on. A neat thing about the Application Surface is that it is able to be manipulated - stretched, skewed, shaded, whatever.
Naturally, this is what's going to be used for pixel-perfect scaling of a game. There are still some issues to be worked through on this front - there's a weird sort of diagonal tearing along vertex lines in the surface quad that I can only get rid of by forsaking the GUI layer altogether. But that's on me to fix; the end user shouldn't even have to mess with this stuff.