M484GCS Version 8.0 Released
This was a big update again, and now the M484 Game Creation System is at Version 8.0. Lots of new stuff has been added, such as platformer support, 2 new collision methods, a visual XY/Hitbox editor and object transform value inheritance tables.
1. Platformer Support
So, starting from this version the M484GCS finally has official support for platformers. Although this support is still quite "basic" and lacks some features that were originally planned. But at least it works, and offers a good starting point for the creation of a more advanced model in the future.
This platformer model that we now have is composed out of these elements:
1. Platformer Animation Template
This is a new animation model for a "Platformer type" Object, which has 2-way "animation slots" for these actions: "Walk", "Jump up", "Fall down", "Duck", "Ladder climb", "Ladder Shoot", "Stand idle".
2. Game Gravity + Object Gravity Flags
The game itself now has a "gravity variable"; if you set this to a value larger than "0", then the game has gravity. Gravity causes all objects that have their "Gravity Flags" set to "YES" to constantly fall down. Only a "Stop Wall" under object's feet will stop falling. (so in the game "stop walls" are both the "ground" and all sorts of "solid blocks")
3. Player Action: JUMP
This is a normal action that you can set for any "action button". After setting this in the "Values Screen", 2 new options will activate: "Player JUMP SPEED" and "Player AIR TIME", which you should also set to some values. "Jump Speed" is simply the Speed of the Jump, and "Air Time" is the maximum time that the Player can stay in the "Fly Up" stage of the jump.
4. X Lock
After setting all of the above, you might want to activate the Player "X Lock", so that all "joystick movements" UP and DOWN are ignored...because if you don't do this, then the Player can move up and down during the jump, which creates a funny looking "control scheme".
Notice that the X Lock is "smart"; even when turned "ON" it still allows your Player to "Duck" if the Player's animation type is "Platformer".
But as said, some features are still missing: for example "ladders" have not been implemented and also only the Player object is affected by Game Gravity...but these things will be fixed/added in the future.
For a quick demonstration here is one concept platformer map editor screenshot:
(Graphics shown here are from Opengameart: Opengameart.org )
Theoretically a simple hack'n slash (or shooter) platformer like that could be accomplished with the current Platformer mode, but I have not yet tested it enough to say for sure. Maybe I'll make a short tutorial about this in the future, we'll see. :)
2. Two new collision methods + a visual XY Coordinate/HITBOX Editor
There are now 3 collision methods in total: "Pixel Perfect", "ImageBox" and "HitBox".
"Pixel Perfect" is the default method, and the most accurate of them; this is a good method for shmups. "Imagebox" and "Hitbox" are the new ones; these are "box based" collision mehods, where a certain "box area" determines the collisions. These methods provide a reliable way to interact with "Stop Walls" and therefore they should be used for platformer objects.
Also, to aid with Hitbox XY area setting there is a new handy mouse operated "visual editor", which you can see in action in the screenshot above. This "XY Visual Editor" is actually a multi-purpose tool that can be accessed from many parts of the editor, and which automatically changes it's functionality according to the situation; you can use this thing to quickly set "Shot Offsets", "Weapon Offsets", "Gun Locations" and "Hitboxes".
Buttons leading to this tool have been added around the editor, and they look like this:
3. Transform Value Inheritance + Script ID Giver
This is a very important upgrade to the Object System. This data table gives us the ability to give a Script ID to a transforming object, and also it allows us to determine whether or not a transforming object should inherit any old values when it transforms. All standard object transform types are supported.
This is useful for many things; for example it is now much easier to make complex "multi-form/multi-action stage" bosses...you can now directly accomplish advanced things, like changing an object's weapon and looks without changing it's Energy or Lifetime, and stuff like that.
Also with this update "Player Action Button Transforms" now use "autological inheritance"; when Player Transform is caused by an "Action Button", then all values are automatically inherited. (In the past no values at all were inherited, which made Player Action Button Transforms somewhat useless)
And in addition to all those big things mentioned above, many smaller things have been added as well. These things include a customizable editor background color, addition of a separate Margin Scroll Speed value, fixing a nasty RND MOVE/RND ASSAULT script editor bug, and many smaller upgrades and fixes.
So, download the new version everyone. :)