diff --git a/content/games/flappy_witch.md b/content/games/flappy_witch.md deleted file mode 100644 index 78e2411..0000000 --- a/content/games/flappy_witch.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "Flappy Witch" -menu: - main: - parent: Games ---- - -[Play latest version](/games/flappy_witch/flappy_witch.html) - -### screenshots - - - diff --git a/content/games/klick-the-witch.md b/content/games/klick-the-witch.md deleted file mode 100644 index c755693..0000000 --- a/content/games/klick-the-witch.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Klick the Witch" -menu: - main: - parent: Games ---- - -[Play latest version](/games/klick-the-witch/witch.html) - -### screenshots - - diff --git a/content/games/minecraft.md b/content/games/minecraft.md new file mode 100644 index 0000000..13ae612 --- /dev/null +++ b/content/games/minecraft.md @@ -0,0 +1,248 @@ +--- +title: 'Setup Minecraft Server' +menu: + main: + parent: Games +--- + +Setup Minecraft Java Server PaperMC on Arch Linux based lxc container + +## Install PaperMC + +### setup environment +``` +pacman -S jre-openjdk-headless +mkdir -p /opt/minecraft/{papermc,latest,plugins} +mkdir -p /opt/minecraft/latest/plugins +useradd -d /opt/minecraft -M -r -U minecraft -s /bin/sh +chown -Rvf minecraft:minecraft /opt/minecraft +``` + +### download PaperMC +download latest version from https://papermc.io/downloads/paper + +``` +cd /opt/minecraft/papermc +wget https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/386/downloads/paper-1.20.4-386.jar +ln -sf /opt/minecraft/papermc/paper-1.20.4-386.jar /opt/minecraft/latest/server.jar +``` + +### server.properties + +``` +cat > /opt/minecraft/latest/server.properties << EOF +enable-jmx-monitoring=false +rcon.port=25575 +level-seed= +gamemode=survival +enable-command-block=true +enable-query=false +generator-settings={} +enforce-secure-profile=false +level-name=world +motd=myPrivate Minecraft Server +query.port=25565 +pvp=true +generate-structures=true +max-chained-neighbor-updates=1000000 +difficulty=easy +network-compression-threshold=512 +max-tick-time=60000 +require-resource-pack=false +use-native-transport=true +max-players=6 +online-mode=true +enable-status=true +allow-flight=false +initial-disabled-packs= +broadcast-rcon-to-ops=true +view-distance=6 +server-ip= +resource-pack-prompt= +allow-nether=true +server-port=25565 +enable-rcon=true +sync-chunk-writes=true +resource-pack-id= +op-permission-level=4 +prevent-proxy-connections=false +hide-online-players=false +resource-pack= +entity-broadcast-range-percentage=100 +simulation-distance=10 +rcon.password=30092008Alexander +player-idle-timeout=0 +debug=false +force-gamemode=false +rate-limit=0 +hardcore=false +white-list=true +broadcast-console-to-ops=true +spawn-npcs=true +spawn-animals=true +log-ips=true +function-permission-level=2 +initial-enabled-packs=vanilla +level-type=default +text-filtering-config= +spawn-monsters=true +enforce-whitelist=true +spawn-protection=16 +resource-pack-sha1= +max-world-size=29999984 +EOF +``` + +### install whitelist.json +Remember to prepend minecraft bedrock (see Geyser plugin below) usernames with `.` + +``` +cat > /opt/minecraft/latest/whitelist.json << EOF +[ + { + "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "name": "myJavaUser" + }, + { + "uuid": "00000000-0000-0000-xxxx-xxxxxxxxxxxx", + "name": ".myBedrockUser" + } +] +EOF +``` + +### install ops.json + +``` +cat > /opt/minecraft/latest/ops.json << EOF +[ + { + "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "name": "myJavaUser", + "level": 4, + "bypassesPlayerLimit": true + } +] +EOF +``` + +### accept End User License Agreement (EULA) + +``` +cat > /opt/minecraft/latest/eula.txt << EOF +eula=true +EOF +``` + + +## Install additional Plugins + +### ServerTap - Management API +Docs here: https://servertap.io/ +Latest version here: https://github.com/servertap-io/servertap/releases/latest + +``` +wget https://github.com/servertap-io/servertap/releases/download/v0.6.1/ServerTap-0.6.1.jar -O /opt/minecraft/plugins/ServerTap-0.6.1.jar +ln -sf /opt/minecraft/plugins/ServerTap-0.6.1.jar /opt/minecraft/latest/plugins/ServerTap.jar +``` + +``` +mkdir -p /opt/minecraft/latest/plugins/ServerTap/ +chown minecraft:minecraft /opt/minecraft/latest/plugins/ServerTap/ + +cat > /opt/minecraft/latest/plugins/ServerTap/config.yml << EOF +port: 4567 +debug: false +useKeyAuth: true +key: 'OuguiJ5ahd7Eejae' +normalizeMessages: true + +tls: + enabled: false + +corsOrigins: + - "*" + +websocketConsoleBuffer: 1000 +disable-swagger: true +EOF +``` + +### Geyser + Floodgate - Minecraft Bedrock +Play Minecraft with Bedrock and Java clients + +Docs here: https://geysermc.org +Latest version here: https://geysermc.org/download + +``` +wget https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot -O /opt/minecraft/plugins/Geyser_build412.jar +ln -sf /opt/minecraft/plugins/Geyser_build412.jar /opt/minecraft/latest/plugins/Geyser.jar + +wget https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/spigot -O /opt/minecraft/plugins/Floodgate_build87.jar +ln -sf /opt/minecraft/plugins/Floodgate_build87.jar /opt/minecraft/latest/plugins/Floodgate.jar +``` + +### Multiverse Core - create multiple worlds + +``` +wget https://dev.bukkit.org/projects/multiverse-core/files/4744018/download -O /opt/minecraft/plugins/Multiverse-Core_4.3.12.jar +ln -sf /opt/minecraft/plugins/Multiverse-Core_4.3.12.jar /opt/minecraft/latest/plugins/Multiverse-Core.jar +``` + +### Terra World Generator +Docs and latest version can be found here: https://modrinth.com/plugin/terra +Download Bukkit version for usage with PaperMC. + +``` +wget https://cdn.modrinth.com/data/FIlZB9L0/versions/lBGwt5NT/Terra-bukkit-6.4.3-BETA%2Bab60f14ff-shaded.jar -O /opt/minecraft/plugins/Terra-bukkit-6.4.3-shaded.jar +ln -sf /opt/minecraft/plugins/Terra-bukkit-6.4.3-shaded.jar /opt/minecraft/latest/plugins/Terra.jar +``` + +## Systemd Service + +### install service file +``` +cat > /etc/systemd/system/minecraft.service << EOF +[Unit] +Description=Minecraft Server +After=syslog.target network.target + +[Service] +SuccessExitStatus=143 +User=minecraft +Group=minecraft +Type=simple +WorkingDirectory=/opt/minecraft/latest +ExecStart=/usr/bin/java -Xmx4G -Xms4G -jar server.jar --nogui +ExecStop=/bin/kill -15 $MAINPID + +[Install] +WantedBy=multi-user.target +EOF +``` + +### start service +``` +systemctl start minecraft.service +``` + +### enable service +``` +systemctl enable minecraft.service +``` + +## setup LXD portforwardings +Configure portforwarding for your minecraft clients to connect to the server. Update external ports (listen=...) as appropriate. + +### java clients +``` +lxc config device add minecraft-server tcp25565_4 proxy connect=tcp:10.0.0.57:25565 listen=tcp:[0.0.0.0]:25565 nat=true proxy_protocol=false +lxc config device add minecraft-server tcp25565_6 proxy connect=tcp:[fd00::57:1]:25565 listen=tcp:[::]:25565 nat=true proxy_protocol=false +``` + +### bedrock clients (geyser plugin neccessary) +``` +lxc config device add minecraft-server udp19132_4 proxy connect=udp:10.0.0.57:19132 listen=udp:[0.0.0.0]:19132 nat=true proxy_protocol=false +lxc config device add minecraft-server udp19132_6 proxy connect=udp:[fd00::57:1]:19132 listen=udp:[::]:19132 nat=true proxy_protocol=false +``` + diff --git a/content/games/polizei.md b/content/games/polizei.md deleted file mode 100644 index a3a00af..0000000 --- a/content/games/polizei.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Polizei" -menu: - main: - parent: Games ---- - -[Play latest version](/games/polizei/polizei.html) - -## screenshots - - diff --git a/static/games/flappy_witch/flappy_witch.html b/static/games/flappy_witch/flappy_witch.html deleted file mode 100644 index 1cdc87d..0000000 --- a/static/games/flappy_witch/flappy_witch.html +++ /dev/null @@ -1,459 +0,0 @@ - - - -
- - - - -