Skip to content

This Project aims to empower you to set up your own Minecraft Server Network with very little knowledge. In the worst case it could help as an Example Project.

License

Notifications You must be signed in to change notification settings

kb01guy/minecraft-server-kb01-de

Repository files navigation

Description

This Project aims to empower you in setting up your very own Server-Network using Docker, which can be started using docker-compose up inside this Directory.

I use this Repository to run my own Minecraft-Server at kB01.de.

This Repository is currently in a Prototyping State!

Quick Links

Permissions

Player Commands

Usage

The following is for this Repository and for the Server Administrator or Developer.
For help using the preconfigured Plugins please refer to player-commands.md.

Reqirements:

  • git
  • docker
  • docker-compose

Clone this Repository git clone https://github.com/kB01guy/minecraft-server-kb01-de

Navigate into Repository cd minecraft-server-kb01-de

Start the Server-Network docker-compose up

Configuration

For my Use-Case Containerization is great to get the most Performance for each Universe (Survival, Creative, Lobby, Minigames).

Even though Minecraft supports Multiple Threads, the Main Game-Logic runs on a single Thread. All Server Plugins, The Game Logic, and all Worlds are handled Single-Threaded. Some Little Things are running on different Threads like the Chunk-Sending to Players.

If you just want run a Minecraft Server without different Worlds and not many Plugins, I strongly advice not to use my Project and instead only use https://github.com/itzg/docker-minecraft-server for creating your Server.

To further configure your Server-Network, see https://github.com/itzg/docker-bungeecord for mc-bungeecord and https://github.com/itzg/docker-minecraft-server for other Services

Server Configuration

The Server Proxy (default: BungeeCord) supports Plugins as well as the Game-Servers them selves. The Docker Containers allows automatic Plugin-Downloads from spigotmc.org via the Variable SPIGET_RESOURCES, which contains a Comma separated List of Plugin-IDs.

BungeeCord

This is the Proxy-Server that listens to the default Minecraft Port 25565 and then distribute the Players to the Game-Server they want to play on.

Plugin List
Spigot ID Price Name Description Links
Free LuckPerms BungeeCord Manages Permissions for BungeeCord Plugins Github luckperms.net
241 Free ServerListPlus Allows customization of your ServerList Info Github Spigot
8695 Free AdvancedBan All-In-One Punishment-System Github Spigot
68956 Free UltraStaffChat Allows Communication to the Server-Team, throughout the Network and even beyond thanks to Discord-Integration. Github Spigot
80677 Free BungeeTeleportManager Teleports across Servers and Dimensions. GitHub Spigot
95509 Free SlashServer Enables /lobby instead /server main and /survival instead /server survival. Github Spigot
Plugins in Planning
Spigot ID Price Name Description Links
12592 Free Bungee Chat Manages your Chat globally on the server Github Spigot

Main Server: Lobby, Creative, Minigames

This Server Hosts the Lobby, Creative World and Minigames. It is separated, because some Plugins change Vanilla Behaviour. AntiCooldown also disables Sweeping Edge and Quake might crash the Server.

It runs on Paper because it is Resource friendly.

Plugin List
Spigot ID Price Name Description Links
51758 Free Join Commands Executes Commands on Player Join. Used for Gamemode and Teleportation to Lobby Github Spigot
28140 Free LuckPerms Manages Permissions Github Spigot
390 Free Multiverse-Core Allows Multi-World-Configuration, needed to load Custom Worlds and not load Vanilla-Worlds Github Spigot
6245 Free PlaceholderAPI Allows you to use Placeholder in nearly any Config-File Github Spigot
7688 Free Armor Stand Editor [dead] Allows players in survival to easily edit Armorstand pose and attributes. Github Spigot
13932 Free Fast Async WorldEdit Allows large Scale World-Modifications, needed by PlotSquared Github Spigot
25391 Free, Closed Source VoidGen Multiverse-World-Generator generating Empty Worlds Spigot
51321 Free AntiCooldown Removes Hit-Cooldown of newer Minecraft Versions for faster PvP experience Github Spigot
63714 Free Screaming Bedwars PvP GameMode in the Sky, Players are trying to destroy the Respawn-Block (Bed) of the other Teams Github Spigot
70616 Free BackupOnEvent Automatically creates Backups and manages configured Storage-Space Github Spigot
77506 15€ PlotSquared Manages User-Plots for Creative Building Github Spigot
80677 Free BungeeTeleportManager Teleports across Servers and Dimensions. GitHub Spigot
53036 Free Custom Images Creates Map-Items displaying Image Files. Used for TV-Like Custom Signs Github Spigot
92975 Free EconomyPlus Economy Plugin using Vault for Plugin Compatibility and MySQL for Storage Github Spigot
Plugins in Planning
Spigot ID Price Name Description Links
45928 15€, Closed Source Quake Fast paced Shooter-like Minigame with Powerups Spigot
81702 Free uSurvivalGames PvP GameMode on the Ground, with loot and a protection Period Github Spigot
87226 Free Walk in the Park Infinite Generating Parkour Github Spigot
79165 Free My Home Rules Rules-Accept Plugin which uses MySQL for Storage Github Spigot

Survival

This Game-Server hosts the Survival Map, with Advancements like Protecting your Builds, Teleporting to friendly Players and simple Economy in the Form of Chest-Shops.

My choice for the Survival Game Server Type was Spigot, which is a bit heavier on the resources compared to Paper. The Reason for this choice is because my Players had Problems using Game-Bugs which are Fixed in Paper (e.g. breaking Bedrock). However, you can configure Paper to allow these, but my Players still complained, so I switched back to Spigot, which does not fix any Vanilla Server Bugs. TLDR: Players blame Paper for Things that might not exist.

Plugin List
Spigot ID Price Name Description Links
93738 Free Simple Voice Chat Proximity Voice-Chat, Requires Client Mod! Github Spigot
1997 Free ProtocolLib Library Plugin used by Simple Voice Chat Github Spigot
70616 Free BackupOnEvent Automatically creates Backups and manages configured Storage-Space Github Spigot
7688 Free Armor Stand Editor [dead] Allows players in survival to easily edit Armorstand pose and attributes. Github Spigot
9089 Free EssentialsX Essential Commands like /home /tpa, etc. Github Spigot
1884 Free GriefPrevention Players can Protect flexible sized Plots using a golden Shovel Github Spigot
73997 Free MoreMobHeads Player- and Mob-Heads, and Micro-Blocks traded from the wandering Trader Github Spigot
34315 Free Vault Permissions, Chat, & Economy API to give plugins easy hooks into these systems, used for Economy only. Github Spigot
51856 Free ChestShop a simple system for making physical shops using signs and chests Github Spigot
16708 Free Daily Rewards Rewards the Player to stay active. Type /reward each Day to get in-game Currency Github Spigot
92546 Free Heart Displays Life of Players below their Name. Github Spigot
80677 Free BungeeTeleportManager Teleports across Servers and Dimensions. GitHub Spigot
Plugins in Planning
Spigot ID Price Name Description Links
79165 Free My Home Rules Rules-Accept Plugin which uses MySQL for Storage Github Spigot

About

This Project aims to empower you to set up your own Minecraft Server Network with very little knowledge. In the worst case it could help as an Example Project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published