gml-raptor
is a ready-to-use project template for GameMaker Studio 2.3+ with a comprehensive wiki documentation that provides lots of classes and functions that will speed up your game development!
The Releases page contains the latest version in .yyz
format (project template) and ready-to-import local packages in .yymps
format.
View the public roadmap on Trello |
Just want to see the demo without cloning?
Test the html-version of the raptor-demo directly on my itch.io page!
If you like what you see, please don't forget to ⭐ the repository and consider following me here and on itch! The more reach raptor
gets, the faster it can evolve even more!
In case you are a night owl like me and you want to support my work,
especially the gml-raptor platform for GameMaker,
spend me a coffee through PayPal.
Thank you!
Coding & Data | Visuals & Objects |
---|---|
Savegames Have your data saved and restored with optional encryption |
State Machines Easy to use but powerful game object control |
RACE (RAndom Content Engine) Loot, Random maps, Dice, all that can be random with json-based config |
Animations Runtime sprite animations with triggers and runtime tweaks |
Tools Utils and Helpers, like Object Pools, Effects, Struct & Array enhancements, Message Broadcasting |
UI and Localization Basic UI Controls objects incl. Text Input, json-localization, 100% Scribble-based |
You need Studio 2.3+ to use raptor
.
These versions of external libraries are packaged into the current raptor
release:
GMS Version | raptor Version | Scribble | SNAP | OutlineShader | AnimatedFlag | HighScorer |
---|---|---|---|---|---|---|
2023.11 | 2.7.1 | 8.7.0 | 6.1.0 | 3.1 | 1.3.1 | 1.4.1 |
When working with an entire platform like this one, there is more to do for the author (me), than simply publishing a .zip file and call it a release.
While the project template itself is useful and must be up-to-date when you start a new Project, the normal case is, that you are in the middle of development, when a new release is done here. But in this second case you have very likely adapted configuration scripts (in the GAME_SETUP section of the project) and you do not want to have them overwritten when updating to the latest version.
To cover both of these scenarios, you will find several files and downloads for each release here:
- A
.zip
file, containing the project template (you should always update this locally in your templates folder to be ready for the next project!) - A
*-full.yymps
local package file that contains all files of the platform in a single package. This includes the config files, so take care, when importing! - A
*-update.yymps
local package file that contains all files of the platform except the configuration files. It should be safe to import this, as long as you didn't modify any of the platform source code itself.
Please Note: In rare cases it might be possible, that there is no *-update.yymps
available for a release. This happens, when I (for whatever reason) had to update/change the basic configuration files also. I will leave a dedicated note in the Release Notes, if this is the case. You should copy the sources of your GameConfiguration out of the way before updating and have to merge manually then. But mostly such a case will only contain a new config switch or two. Nothing to worry about.
Important! Please read
There are many objects and scripts in this library and to get going with this platform, you should take the time to read the basic concepts that this platform follows in the Wiki.
I tried to isolate some of the classes and make smaller repositories of it, but I failed. They work too good together and, as an example, to isolate my savegame-system out into its own repository and removing all the dependencies would've required to sacrifice lots of its functionality. Same is true for the StateMachine or the Animation system. So, after thinking about it for some time, I decided to make it public "as-it-is". It's a set of working-together parts, that allows you to speed up your game development process.
If you have questions, feedback or just want to discuss specific parts of this platform, just open a new thread in the discussions for this repository. I'll do my best to answer any questions as quick as possible!
Feel free to fork, advance, fix and do what you want with the code in this repository, but please respect the MIT License and credit.
I am happy, if you want to support raptor
to become even better, just launch a pull request, explain me your changes, and I make sure, you get credited as contributor.
My main goal is to provide a ready-to-use project template. I am not a big friend of "oh, yes, this is the classes, but you need to download this from here and that other thing from there and make sure, you apply this and this and this setting and best do a npm xy to have this running..." what a mess! I do not like that. You will always find a single-download-and-run release in the template.
That being said, it leads to this requirement/fact:
raptor
contains some other libraries that are referenced from my classes, so they are packaged together with this project template.
Some of these 'other libraries' are my own and are by default also included in the package, because I find it more easy to remove one not required folder by a simple hit of the 'Delete' key instead of browsing the file system for all bread crumbs that need to be added. It just saves time.
By default, these libraries of mine are included:
Very special thanks to Alex
@pamims for proof reading my version of the english language and correcting it to the real version of the english language! Thank you very much for volunteering here!
-
@JujuAdams and the great community at GameMakerKitchen Discord for the SNAP Library and Scribble, which I packaged into this repository and the project template. I do my best to keep the re-packaged libraries here always at the latest version of Juju's repo. If you prefer to look up the most recent version (or any specific version) for yourself, you find SNAP and Scribble at the links a few lines above this one.
-
@YellowAfterLife for the Open Link in new Tab Browser Game extension for GameMaker, which I modified a bit to fit into the platform. This extension is also packaged into the platform and ready-to-use.
Beside the communication channel here, you can reach me as @Grisgram on the GameMakerKitchen Discord.
(c)2022-2024 coldrock.games