Skip to content

thennothinghappened/GMEdit-Constructor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GMEdit-Constructor

As the title suggests, Constructor is a plugin for YellowAfterlife's GMEdit, which allows you to compile from the editor just as you can in the GameMaker IDE.

Currently, Constructor about matches the capabilities of builder, which is another plugin serving the same role, but as GM now uses Igor as a commandline tool to automate things, it means that interacting with the compiler is a lot easier and a lot less error-prone (especially as GM changes, which invoking the AssetCompiler directly cannot cope with.)

Constructor can currently compile for the current build target (your OS), and can switch between build configs.

Features

  • Run compile, run and clean jobs (technically can be in parallel!)
    • Stop jobs by closing their tab
    • YYC Support
  • View compile output (duh)
  • Compile and runner error parsing (view them nice and neat rather than scrolling the log!)
  • Runtime selection & project-specific properties
    • Project build configuration select (#macro SOMETHING:Config ... support)
  • Control Panel (see screenshot below)
    • Centralised error display for build and configuration problems
  • Automatic check for updates

image

Installation

Installation is the same here as any other GMEdit plugin - clone it into your plugins folder (see below), or download the .zip from Releases, and extract the contained folder into plugins.

Windows

git clone https://github.com/thennothinghappened/GMEdit-Constructor %appdata%\AceGM\GMEdit\plugins\GMEdit-Constructor

MacOS

git clone https://github.com/thennothinghappened/GMEdit-Constructor "~/Library/Application Support/AceGM/GMEdit/plugins/GMEdit-Constructor"

See GMEdit#Installing plugins for more details!

Shortcuts

Shortcut Key
Control Panel Ctrl+`
Compile Ctrl+F5
Clean Ctrl+F7
Run F5

Maybe later these can be customisable :)

Planned features include:

  • Support for other targets:
    • HTML5
    • Android
    • Remote compilation for other platforms using devices.json (compile on another machine via ssh as you can in the IDE)
  • Option for docked console as opposed to full-window

Issues

If you have any issues with Constructor, feel free to either ask on Discord (below), or make a post on the GitHub Issues page. I'll try to get back to you when I can, but no guarantees.

Feature requests

If there's anything else you'd like out of Constructor that isn't mentioned here, the same applies as above with issues - make a feature request by opening an issue on GitHub!

I hope Constructor is a useful tool - though please note that I can only test on the machines I have available to me, so there's gonna be edge cases.

Finally, I also have a thread for this project on the GameMaker Kitchen Discord server, for quick feedback!

Thanks, and have fun :)