Skip to content
/ Xenium Public

Generates the initialization scripts for a Garry's Mod addon/gamemode, using a module-based approach.

License

Notifications You must be signed in to change notification settings

xCynDev/Xenium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xenium

A tool that generates the initialization scripts for a Garry's Mod addon/gamemode, using a module-based approach.

Features

Xenium was built out of the necessity to replace my module loader, which provided the same features, except it broke auto-refresh.

As such, I have built a tool that would keep my benefits of using a module loader, but also allow for auto-refreshing of scripts.

  • Module-based approach to addon and gamemode development.
  • Configuration on a project and per-module basis.
    • Configurable load order of modules in the project configuration.
    • Configurable load order of files and folders in a module, in the module's configuration.
  • Automatically generates AddCSLuaFile() and include() statements based on the file's prefixes.
    • These are configurable if you wish to add custom prefixes. The defaults are sv_, sh_ and cl_ for server, shared and client files respectively.
  • Writes them to the init scripts for your addon and gamemode.
    • lua/autorun/client and lua/autorun/server for addons.
    • gamemode/cl_init.lua and gamemode/init.lua for gamemodes.
  • CI friendly, can be used as a build step when deploying your addons & gamemodes to servers.
  • Tiny! Using .NET's Native AOT, the binary is self-contained and does not require a .NET runtime to function.

Download

Head over to the latest releases and download the Xenium binaries for your OS. Releases include Windows & Linux. Head over to the Building section of the README for instructions on how to build for different operating systems.

Documentation

Check the wiki out to learn how to use this tool.

Building

Install the .NET 9 SDK for your platform of choice.

Then run the following in the root directory of the repository.

# Build for Windows
dotnet publish -c Release --os win

# Build for Linux
dotnet publish -c Release --os linux

# Build for MacOS
dotnet publish -c Release --os osx

Xenium has been tested on Windows & Linux. MacOS should work, but hasn't been tested. You can find .NET runtime identifiers (RIDs) here.

About

Generates the initialization scripts for a Garry's Mod addon/gamemode, using a module-based approach.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages