popstarfreas / Dimensions

The load-balancing and routing service for Terraria Servers
MIT License
41 stars 16 forks source link
proxy routing terraria terraria-server

The latest version is currently in testing at Dark Gaming pending approval. You can find this version (v6.0.0-beta.0) marked as pre-release.

README

Dimensions is: A routing service that can also load balance connections. For use with Terraria Servers.

Installation

Step 1: Install NodeJS

Follow the link and download either version. Later releases may offer better performance. https://nodejs.org/en/

Step 2: Install the Plugin

Download the plugin and put it in each Terraria Server for use with Dimensions

Step 3: Setting Up and Running

Step 4 (Optional): Install Redis

If you do not need to have live reloading of modules / the configuration file then you do not need to do this step.

Redis is used to communicate with the dimensions process via the dimensions_cli.js file. It will allow you to reload the config and/or reload things like extensions or modules without the need to manually restart dimensions, reducing downtime.

Download and install Redis for your OS

Development

Dimensions uses the latest Typescript with strict checks enabled to help catch bugs. It is recommended that you modify the Typescript code instead of the transpiled javascript code. This will not only provide you with more safety regarding changes, but the original source is likely to be more understandable and you can merge changes from this repo using git.

Extensions

To build an extension:

Supporters

Thanks to all who have financially supported development: