A tool to package MonoGame and other .NET Core applications into several distributable formats
Find a file
2024-08-31 13:19:49 +02:00
.github Update FUNDING.yml 2021-11-08 15:53:20 +01:00
GameBundle added monogame mode for excluding native libraries 2024-08-31 13:19:11 +02:00
Test added monogame mode for excluding native libraries 2024-08-31 13:19:11 +02:00
.gitignore start 2020-04-09 16:18:50 +02:00
GameBundle.sln part 1 finished 2020-04-09 18:06:01 +02:00
LICENSE Initial commit 2020-04-09 16:07:06 +02:00
Logo.png some updates, including readme and logo 2020-04-09 20:31:43 +02:00
README.md added monogame mode for excluding native libraries 2024-08-31 13:19:11 +02:00

The GameBundle logo

GameBundle is a tool to package MonoGame and other .NET Core applications into several distributable formats.

Installing

GameBundle is a dotnet tool, meaning you can install it very easily like so:

dotnet tool install --global GameBundle

Using

By default, GameBundle builds the .csproj file that it finds in the directory that it is run from. The bundled outputs go into bin/Bundled by default.

To build and bundle your app for Windows, Linux and Mac, all you have to do is run the following command from the directory that contains your project file:

gamebundle -wlm

GameBundle will then build a self-contained release of your application for each system using dotnet publish and clean up the output directory using NetCoreBeauty by moving most of the libraries into a Lib subdirectory.

Building a MonoGame Project

If you're building a MonoGame project using MonoGame's DesktopGL version 3.8.2.1105 or later, you can additionally supply the --mg argument to automatically exclude MonoGame's native libraries from being moved into the Lib subdirectory, which is a requirement for your game to run.

Configuring

GameBundle takes several optional arguments to modify the way it works. To see a list of all possible arguments, simply run

gamebundle --help

Future features

In the future, GameBundle plans to include the following features:

  • An option to create a .app folder for Mac Implemented in 1.1.1
  • An option to create an installer for Windows
  • An option to create a flatpak (or similar) installer for Linux