What this is: a free, open-source, cross-platform interpreter for GML 1.4, everyone's favourite game development toolkit. It's easy: ogm ./MyGame.project.gmx
in any terminal and your game will launch.
What this is not: an IDE or graphical user interface. If you want to OpenGML for development, you must write your code, draw your sprites, and tile your rooms with your own preferred software. Recommendations are provided in the "Other Software" section below.
- Use: To get started running an existing GML project or a new project, see the Quickstart guide.
- Build: To compile OpenGML from source yourself, see the build instructions.
- Link: To use OpenGML as a C++ library for building your own tool, see the Library guide.
- Develop: If you are interested in helping to develop OpenGML, or you'd like to modify or hack it, or you just want to get an overview of the codebase, see the Source Code Overview.
- Recurse: To use OpenGML from within GML (e.g. to replace
string_execute()
), see the usage instructions for gig.
- Written to be totally compatible with the 1.4 version of everyone's favourite game creation toolkit, unlike ENIGMA, which does not (and will never be able to) run all games written in GML. (100% compatability for OpenGML isn't yet achieved, but it is a design goal from the ground-up.)
- Compiles to an intermediate bytecode format, allowing speedy execution and the future potential for compilation to different targets (e.g. JavaScript/HTML5).
- Available as a stand-alone binary to interpret GML:
ogm ./MyGame.project.gmx
- Can also be used as a C++ library to parse, beautify, compile, and execute GML code:
#include <ogm/interpreter/execute.hpp>
- Debugger
- Beautifier
- Graphical display for the interpreter (SDL)
- 100% compatability with GML.
- GML 2.0 support
Here are some software suggestions which may be helpful for creating games with OpenGML. Not all of these have been tested for interoperability.
- GMEdit (also on github), a code editor for GML with extended syntax. Recommended.
- A text editor like Notepad++, Notepadqq, or Atom.
- PushEd, which creates GML-compatible rooms in both 2D and 3D.
- GIMP, a powerful open source, cross-platform image editing tool, not specifically for pixel art.
- Krita, a powerful open source, cross-platform image editing tool, not specifically for pixel art.
- GrafX2, an open source, cross-platform cross-platform 256-colour bmp editing tool.
If you decide you don't like OpenGML, you may be interested in these alternatives. Not all of them are complete or usable.
- ENIGMA is popular compiler, though it isn't 100% accurate to GML and probably won't work for large existing codebases.
- Game Creator, which compiles to Microsoft's .NET framework.
- Acolyte, which compiles to C++.
These combine all of the above to offer all of the different tools needed to create a game in GML in one comprehensive user-interface.
- The best and most reliable IDE and compiler available for this programming language can be found here. Neither free nor open source.
- LateralGM, an open source IDE for GML and ENIGMA. Might be out of date.
Check the releases to see if there is a recent build for your operating system. If not, see the build instructions.