#server #service #running #factorio #game #controling

bin+lib wonderland

A package for controling a server running games and other services

2 unstable releases

0.2.0 Nov 5, 2023
0.1.0 Oct 3, 2023

#727 in Games

MIT license

85KB
2K SLoC

Please read before you use

This Repo is only a hobby project, and you should not think this is secure. And you might open up your server for malicious use.

It was meant for me to test out the Rust programming language with a project, and it could be more pretty to look at.

Feel free to use the Library, Compiled Binary, or Compile a new binary yourself. The API of the library might change as I see better ways to do it.

It is only tested for Linux Debian 11 and will not work for Windows.

If you find a bug or missing feature, post an Issue or submit a Pull request. I would be highly grateful for the contribution.

Right now, it only works for Factorio servers, and other services are on the agenda. We will see if I get there or not.

Supported Services

Games

  • Factorio

ENV

Using the bin

The .env file needs to be placed in the root dir of the command or the $home/.game-server/.env

The script will first try to get the local .env, and if it fails, it will try to find the $home/.game-server/.env.

IMPORTANT The .env variabels are requierd to use the libeary

  • FACTORIO_USERNAME - The username of the Factorio account
  • FACTORIO_TOKEN - The token of the Factorio account
  • FACTORIO_ROOT - The root dir where the Factorio server will be installed
  • DOWNLOADE_ROOT - The root dir where the server will download the archives and mods
  • ROOT_DIR - The root dir where the servers will be installed
  • SCREEN_PREFIX - The prefix of the screen sessions. Default: gs
  • FACTORIO_GAME_PASSWORD - Default game password
  • GS_CONFIG_IN_HOME_DIR - (bool) should the config be rooted in the home dir
  • GS_CONFIG_DIR - the path and name of the config dir
  • SERVER_IP - server IP

Dependencies

~36–52MB
~896K SLoC