Releases: YAL-GameMaker-Tools/GmxGen
Releases · YAL-GameMaker-Tools/GmxGen
GM2024 support
And there is now a sample/
folder showcasing the various ways of tagging functions.
I should set up automatic builds sometime
Till then, here are the recent changes
Tweaks and basic C# support
- Now running Haxe 4.2 (not that you can tell the difference in a binary release)
.h
/.c
/.hpp
files are now accepted as alternatives for looking up functions for DLL/DyLib/SO files..cs
files are now accepted as alternative for DLL/DyLib/SO files (note: just functions - no macros/enum/struct conversions)
Multi-version GML, struct syncing, and GMS2.3 improvements
- Added support for
--copy source dest
, wheredest
can be a relative path in the extension files directory.dest
may have an:arch
suffix (a.dll:x86
->a.dll
,a.dll:x64
->a.x64.dll
)source
anddest
may contain*
for basic pattern matching (likesteam_*.gml
)
- Added support for version-specific GML code, so you can do
and it will flip the first comment into
// GMS >= 2.3: ... code for 2.3 /*/ ... code for pre-2.3 //*/
/*
for pre-2.3, allowing to reuse GML files across versions.
(generally used in conjunction with above) - Expanded support for
<extension path>.base
a little - if the extension file doesn't exist at all, but.base
does, that will be used instead of throwing an error.
This allows to gitignore the extension entirely if auto-generated functions being added to it bother you. - Added support for
/// @autostruct relative_path.gml
to C++, which will update the chosen GML file so thatwill repopulate arguments forstruct MyStruct { int x; uint8_t y; }
see here for an exampleglobal.MyStruct = my_struct_create("x", buffer_s32, "y", buffer_u8);
GMS2.3 support and .gmx.base/.yy.base support
- The tool now processes GameMaker Studio ≥ 2.3 extensions (which are technically invalid JSON) correctly.
- If there is a .gmx.base or a .yy.base file for the extension, the tool will use that instead of the regular file, allowing for templates.