Factorio ARM64
The vanilla Factorio server. https://www.factorio.com/
- updated
- variables
- 16
- images
- 1
- author
- parker@parkervcp.com
- sha256
- 4c32040f642d
Readme
This egg ships without a README.
Startup command
if [ ! -f "./saves/{{SAVE_NAME}}.zip" ]; then box64 ./bin/x64/factorio --create ./saves/{{SAVE_NAME}}.zip --map-gen-settings data/map-gen-settings.json --map-settings data/map-settings.json; fi;
box64 ./bin/x64/factorio --port {{SERVER_PORT}} --server-settings data/server-settings.json --start-server saves/{{SAVE_NAME}}.zip The parts in blue are filled in by the panel when the server starts, from the variables below.
Docker image
- Box64 ghcr.io/ptero-eggs/yolks:box64
Variables
16 settings
-
Factorio Version
Which version of Factorio to install and use.
- env
- FACTORIO_VERSION
- default
- latest
- rules
- required|string|between:3,12
- viewable
- editable
-
Maximum Slots
Total number of slots to allow on the server.
- env
- MAX_SLOTS
- default
- 20
- rules
- required|numeric|digits_between:1,3
- viewable
-
Save Name
The save name for the server.
- env
- SAVE_NAME
- default
- gamesave
- rules
- alpha_dash|between:1,100
- viewable
- editable
-
Server Token
Your factorio.com token, it is required for your server to be visible in the public server list.
- env
- SERVER_TOKEN
- default
- undefined
- rules
- alpha_num|max:100
- viewable
- editable
-
Server Name
Name of the game as it will appear in the game listing
- env
- SERVER_NAME
- default
- Factorio Server
- rules
- required|string|max:100
- viewable
- editable
-
Server Description
Description of the game that will appear in the listing.
- env
- SERVER_DESC
- default
- Description
- rules
- required|string|max:200
- viewable
- editable
-
Server Username
Username used for the server
- env
- SERVER_USERNAME
- default
- unnamed
- rules
- required|string|max:40
- viewable
- editable
-
Auto Save Interval
Time between auto saves specified in minutes
- env
- SAVE_INTERVAL
- default
- 10
- rules
- required|numeric|digits_between:1,3
- viewable
- editable
-
Auto Save Slots
The number of auto saves to keep.
- env
- SAVE_SLOTS
- default
- 5
- rules
- required|numeric|digits_between:1,3
- viewable
- editable
-
AFK Kick
Time specified in minutes to kick AFK players. 0 is off
- env
- AFK_KICK
- default
- 0
- rules
- required|numeric|digits_between:1,3
- viewable
- editable
-
BOX64_DYNAREC_SAFEFLAGS
- env
- BOX64_DYNAREC_SAFEFLAGS
- default
- 0
- rules
- required|numeric|in:0
-
BOX64_DYNAREC_BIGBLOCK
- env
- BOX64_DYNAREC_BIGBLOCK
- default
- 2
- rules
- required|numeric|in:2
-
BOX64_DYNAREC_FORWARD
- env
- BOX64_DYNAREC_FORWARD
- default
- 1024
- rules
- required|numeric|in:1024
-
BOX64_DYNAREC_CALLRET
- env
- BOX64_DYNAREC_CALLRET
- default
- 1
- rules
- required|numeric|in:1
-
BOX64_DYNAREC_FASTROUND
- env
- BOX64_DYNAREC_FASTROUND
- default
- 0
- rules
- required|numeric|in:0
-
BOX64_DYNAREC_ALIGNED_ATOMICS
- env
- BOX64_DYNAREC_ALIGNED_ATOMICS
- default
- 1
- rules
- required|numeric|in:1
Installation script 57 lines container ghcr.io/ptero-eggs/installers:debian entrypoint bash show hide
#!/bin/bash
# Factorio Installation Script
#
# Server Files: /mnt/server
apt update
apt install -y curl tar xz-utils jq
VERSION_JSON=$(curl -sSL https://factorio.com/api/latest-releases)
latest_stable=$(echo $VERSION_JSON | jq -r '.stable.headless')
latest_experimental=$(echo $VERSION_JSON | jq -r '.experimental.headless')
if [ -z "${FACTORIO_VERSION}" ] || [ "${FACTORIO_VERSION}" == "latest" ]; then
DL_VERSION=$latest_stable
elif [ "${FACTORIO_VERSION}" == "experimental" ]; then
DL_VERSION=$latest_experimental
else
DL_VERSION=${FACTORIO_VERSION}
fi
mkdir -p /mnt/server
cd /mnt/server
echo -e "\n running 'curl -sL https://www.factorio.com/get-download/${DL_VERSION}/headless/linux64 -o factorio-${DL_VERSION}' \n"
curl -sL https://www.factorio.com/get-download/${DL_VERSION}/headless/linux64 -o factorio-${DL_VERSION}
tar -xf factorio-${DL_VERSION} --strip-components=1 -C /mnt/server
rm factorio-${DL_VERSION}
if [ -e data/map-gen-settings.json ]; then
echo "map-gen exists"
else
echo "copying map-gen default settings"
mv data/map-gen-settings.example.json data/map-gen-settings.json
fi
if [ -e data/server-settings.json ]; then
echo "server settings exists"
else
echo "copying server default settings"
mv data/server-settings.example.json data/server-settings.json
fi
if [ -e map-settings.json ]; then
echo "map settings exists"
else
echo "copying map default settings"
mv data/map-settings.example.json data/map-settings.json
fi
## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"