GML+ is a collection of useful functions and built-in variables designed to fill the gaps in vanilla GML. This gives the package an unusually broad scope that may seem daunting at first. But don't worry! GML+ is organized to be as easy to navigate as possible.
Vanilla-Compliant Folder Structure
Most of GML+ resides in your project's Scripts folder. There, you'll find GML+ functions are organized in a structure that mimics the vanilla GML reference guide.
Self-Integrating Manager Object
Besides scripts, some GML+ components (such as built-in variables) rely on an object called
obj_gmlp. However, you don't need to place this object in any of your rooms--ever! So long as it's in your project, it will self-create in the first available room and persist until the game ends. No further interaction is required.
Documented Dependency Requirements
But how do you know if a function requires the manager object--or other GML+ functions--to work? Just open it to find out! Every GML+ function uses JSDOC headers to define syntax and list other properties, as well as more detailed explanations and usage examples below. Look for a line beginning with
@requires for a list of external dependencies.
If this line is absent, it means there are no external dependencies and the function can be used completely independently. This way, you can pick and choose only the functions your project needs!
Detailed Reference Guide
Now that you understand the GML+ folder and dependency structure, you're all set to dive straight into the full reference guide, where we'll examine each function and built-in variable in detail.