Skip to content

A simple (or complex) GMS2 commandline compile wrapper.

License

Notifications You must be signed in to change notification settings

GameMakerDiscord/RubberSharp

Repository files navigation

Rubber#

An IGOR Wrapper Utility

Note: Outdated, use Rubber JS

Rubber# (Rubber Sharp) utility will use the currently active runtime to compile a GameMaker Studio 2 project file. It is used with a command line tool or using the C# library.

Maintained by: ImDaveead

Command Line Usage

The simplest way to use Rubber# is with the command line .exe file.

Rubber# <Project Path> <Platform> <Command> <Export Path>

Project Path is the path to the project folder, NOT the .yyp
Platform can be Windows, Mac, or Linux/Ubuntu
Command can be Run/Test, Zip, or Installer
Export Path is ignored if you choose Run/Test

C# Library

All of the code is in the RubberSharp namespace.

using RubberSharp;

static class Example {
    private static void Test() {
        int igorexitcode = Rubber.Compile(new RubberConfig(){
            ProjectPath = @"C:\Projects\Example",
            ExportPlatform = ExportPlatform.Windows,
            ExportType = ExportType.PackageZip,
            ExportOutputLocation = @"C:\Projects\Example\output.zip",
            YYC = true
        });
        Console.WriteLine("The Rubber# Build " (igorexitcode >= 0) ? "was successful" : "failed!");
    }
}

Notes

  • Using a project with shaders is untested
  • Exporting to Mac is not implemented
  • Exporting to Linux is not implemented
  • The library used to read .yyp, YoYoProject, is in a work in progress state, so that could break something here.
    • Using a project containing GMiOSOptions Crashes