bbassieandClaude Fable 5 e79822b26e Add a test suite for the roles plugin
Run with `pnpm --filter @expcluster/roles test`, using tap as the runner.

The lua module is exercised for real: each test file runs in its own lua
state, created on first use by the helper, with the factorio surface and the
clusterio modules stubbed. The environment is passed to the chunk as an
argument so no globals are involved. Covers lookups and comparisons, the
permission checks, assignment with confirmation, rejection and local only
roles, jail suppression, the sync entry points, and the holder listings,
including a player holding a role in both the synced and the local list.

The javascript side covers the message records round tripping through their
schemas, the indexed permission encoding, and the seed: every permission it
grants must be defined by exp_scenario, and every parent must exist and have
its permissions carried into its children.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-20 22:02:51 +00:00
2026-08-08 23:09:39 +01:00
2026-08-08 23:09:39 +01:00
2026-08-19 15:52:50 +00:00
2026-08-08 23:09:39 +01:00
2026-07-14 00:50:00 +01:00
2024-11-19 22:17:25 +00:00
2026-08-08 21:58:46 +01:00
2026-08-20 22:02:51 +00:00
2024-11-19 21:51:13 +00:00
2024-12-24 20:50:48 +00:00
2026-08-08 23:09:39 +01:00
2024-11-19 21:51:13 +00:00
2024-12-28 19:08:12 +00:00
2024-12-24 20:50:48 +00:00
2024-12-24 20:50:48 +00:00
2024-12-24 20:50:48 +00:00

logo
Release Downloads Star Fork Discord

ExpGaming Clusterio Repository

Explosive Gaming

Explosive Gaming (often ExpGaming) is a server hosting community with a strong focus on Factorio and games with similar themes. We are best known for our weekly reset Factorio server with a vanilla+ scenario where we add new features and mechanics that are balanced with base game progression. Although our servers tend to attract the more experienced players, our servers are open to everyone. You can find us through our website, discord, or the public server list with the name ExpGaming.

Installation

This is a plugin collection for Clusterio which implements all our scenario features.

To use this plugin you must have a clusterio instance running, see here for clusterio installation instructions.

This module is currently not published and therefore can not be installed via npm. Instead follow the steps for building from source

Building from source

  1. Create a external_plugins directory within your clusterio instance.
  2. Clone this repository into that directory: git clone https://github.com/explosivegaming/ExpCluster
  3. Install the package dev dependencies: pnpm install (pnpm is recommended over npm)
  4. Add supported plugins will be loaded on next controller / host restart.

Contributing

See Contributing for how to make pull requests and issues.

Releases

Release* Release Name Factorio Version**
6.4 Farewell Factorio 1.1 1.1.110
6.3 Feature Bundle 2: Electric Boogaloo 1.1.101
6.2 Mega Feature Bundle 1.1.32
6.1 External Data Overhaul 1.0.0
6.0 Gui / 0.18 Overhaul 0.18.17
5.10 Data Store Rewrite 0.17.71
5.9 Control Modules and Documentation 0.17.63
5.8 Home and Chat Bot 0.17.47
5.7 Warp System 0.17.47
5.6 Information Guis 0.17.44
5.5 Gui System 0.17.43
5.4 Admin Controls 0.17.32
5.3 Custom Roles 0.17.28
5.2 Quality of life 0.17.22
5.1 Permission Groups 0.17.13
5.0 0.17 Overhaul 0.17
4.0 Softmod Manager 0.16.51
3.0 0.16 Overhaul 0.16
2.0 Localization and clean up 0.15
1.0 Modulation 0.15
0.1 First Tracked Version 0.14

* Scenario patch releases have been omitted and can be found here.

** Factorio versions show the version they were made for, often the minimum requirement to run the scenario.

License

The Explosive Gaming codebase is licensed under the MIT

S
Description
No description provided
Readme MIT
14 MiB
Languages
Lua 85.3%
TypeScript 11.5%
JavaScript 3.2%