mirror of
https://github.com/LpmRaven/factorio-docker-server.git
synced 2024-12-12 08:24:07 +02:00
custom settings and map settings added
This commit is contained in:
parent
66ec9c9d1b
commit
c253421ea1
@ -13,6 +13,8 @@ USER factorio
|
||||
|
||||
ENV HOME /opt/factorio
|
||||
ENV SAVEFILE /opt/factorio/saves/factorio_save.zip
|
||||
ENV MAPSETTINGS /opt/factorio/map-gen-settings.json
|
||||
ENV SERVERSETTINGS /opt/factorio/server-settings.json
|
||||
|
||||
WORKDIR /opt/factorio
|
||||
|
||||
@ -20,6 +22,8 @@ RUN wget -q -O - https://www.factorio.com/download-headless/stable | grep -o -m
|
||||
&& tar -xzf /tmp/factorio.tar.gz -C /opt \
|
||||
&& rm -rf /tmp/factorio.tar.gz
|
||||
|
||||
ADD map-gen-settings.json /opt/factorio/
|
||||
ADD server-settings.json /opt/factorio/
|
||||
ADD init.sh /opt/factorio/
|
||||
|
||||
EXPOSE 34197/udp
|
||||
|
@ -31,7 +31,7 @@ Windows users will need to look at alterations for using PuTTY.
|
||||
|
||||
# Build Your Factorio Headless Server
|
||||
|
||||
The latest Factorio headless server is downloaded at build time. This may be a good reason you want to build your own image since the Docker Hub repo may not always be up to date.
|
||||
The latest Factorio headless server is downloaded at build time.
|
||||
|
||||
1. `git clone https://github.com/LpmRaven/docker-factorio.git`
|
||||
2. `docker build -t factorio-instance-name .`
|
||||
|
4
init.sh
4
init.sh
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ ! -f $SAVEFILE ]; then
|
||||
/opt/factorio/bin/x64/factorio --create $SAVEFILE
|
||||
/opt/factorio/bin/x64/factorio --create $SAVEFILE --map-gen-settings $MAPSETTINGS
|
||||
fi
|
||||
/opt/factorio/bin/x64/factorio --start-server $SAVEFILE
|
||||
/opt/factorio/bin/x64/factorio --start-server $SAVEFILE --server-settings $SERVERSETTINGS
|
||||
|
19
map-gen-settings.json
Normal file
19
map-gen-settings.json
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"_comment": "Sizes can be specified as none, very-low, low, normal, high, very-high",
|
||||
|
||||
"terrain_segmentation": "normal",
|
||||
"water": "normal",
|
||||
"width": 0,
|
||||
"height": 0,
|
||||
"starting_area": "normal",
|
||||
"peaceful_mode": false,
|
||||
"autoplace_controls":
|
||||
{
|
||||
"coal": {"frequency": "low", "size": "normal", "richness": "normal"},
|
||||
"copper-ore": {"frequency": "low", "size": "normal", "richness": "normal"},
|
||||
"crude-oil": {"frequency": "low", "size": "high", "richness": "normal"},
|
||||
"enemy-base": {"frequency": "very-high", "size": "very-high", "richness": "very-high"},
|
||||
"iron-ore": {"frequency": "low", "size": "normal", "richness": "normal"},
|
||||
"stone": {"frequency": "low", "size": "normal", "richness": "normal"}
|
||||
}
|
||||
}
|
60
server-settings.json
Normal file
60
server-settings.json
Normal file
@ -0,0 +1,60 @@
|
||||
{
|
||||
"name": "Name of the game as it will appear in the game listing",
|
||||
"description": "Description of the game that will appear in the listing",
|
||||
"tags": ["game", "tags"],
|
||||
|
||||
"_comment_max_players": "Maximum number of players allowed, admins can join even a full server. 0 means unlimited.",
|
||||
"max_players": 0,
|
||||
|
||||
"_comment_visibility": ["public: Game will be published on the official Factorio matching server",
|
||||
"lan: Game will be broadcast on LAN"],
|
||||
"visibility":
|
||||
{
|
||||
"public": false,
|
||||
"lan": false
|
||||
},
|
||||
|
||||
"_comment_credentials": "Your factorio.com login credentials. Required for games with visibility public",
|
||||
"username": "",
|
||||
"password": "",
|
||||
|
||||
"_comment_token": "Authentication token. May be used instead of 'password' above.",
|
||||
"token": "",
|
||||
|
||||
"game_password": "",
|
||||
|
||||
"_comment_require_user_verification": "When set to true, the server will only allow clients that have a valid Factorio.com account",
|
||||
"require_user_verification": true,
|
||||
|
||||
"_comment_max_upload_in_kilobytes_per_second" : "optional, default value is 0. 0 means unlimited.",
|
||||
"max_upload_in_kilobytes_per_second": 0,
|
||||
|
||||
"_comment_minimum_latency_in_ticks": "optional one tick is 16ms in default speed, default value is 0. 0 means no minimum.",
|
||||
"minimum_latency_in_ticks": 0,
|
||||
|
||||
"_comment_ignore_player_limit_for_returning_players": "Players that played on this map already can join even when the max player limit was reached.",
|
||||
"ignore_player_limit_for_returning_players": false,
|
||||
|
||||
"_comment_allow_commands": "possible values are, true, false and admins-only",
|
||||
"allow_commands": "admins-only",
|
||||
|
||||
"_comment_autosave_interval": "Autosave interval in minutes",
|
||||
"autosave_interval": 10,
|
||||
|
||||
"_comment_autosave_slots": "server autosave slots, it is cycled through when the server autosaves.",
|
||||
"autosave_slots": 5,
|
||||
|
||||
"_comment_afk_autokick_interval": "How many minutes until someone is kicked when doing nothing, 0 for never.",
|
||||
"afk_autokick_interval": 0,
|
||||
|
||||
"_comment_auto_pause": "Whether should the server be paused when no players are present.",
|
||||
"auto_pause": true,
|
||||
|
||||
"only_admins_can_pause_the_game": true,
|
||||
|
||||
"_comment_autosave_only_on_server": "Whether autosaves should be saved only on server or also on all connected clients. Default is true.",
|
||||
"autosave_only_on_server": true,
|
||||
|
||||
"_comment_admins": "List of case insensitive usernames, that will be promoted immediately",
|
||||
"admins": []
|
||||
}
|
Loading…
Reference in New Issue
Block a user