Docs / Games / Minecraft
Minecraft

Minecraft

The world's most popular game. Complete guide to Java/Bedrock server hosting, plugins, mods, and community management.

Overview

Release Date: Java (2009), Bedrock (2017)

Platform: Java Edition (Windows/Mac/Linux), Bedrock (Windows/Console/Mobile)

Player Base: 140+ million players

Customization: Plugins (Java), Datapacks, Mods (Forge/Fabric)

Max Players: Unlimited (hardware dependent)

System Requirements

Java Server (Minimum)

  • OS: Windows/Linux/Mac 64-bit
  • Java Version: Java 17+ required
  • RAM: 2GB (6GB+ recommended)
  • Storage: 500MB base + worlds
  • Connection: 30Mbps upload

Recommended Setup

  • OS: Linux (Ubuntu 20.04+ preferred)
  • Java Version: Java 21 LTS
  • RAM: 16GB+ for 100+ players
  • Storage: 100GB+ SSD for worlds
  • Connection: 100Mbps+ upload

Server Installation

1

Install Java

Install OpenJDK 17+ or Oracle JDK. Verify with: java -version

2

Download Server JAR

Download server.jar from Paper, Spigot, or official Minecraft launcher

3

Configure server.properties

Edit server settings: difficulty, pvp, spawn-protection, max-players

4

Launch Server

Run: java -Xmx6G -Xms6G -jar server.jar nogui

Server Configuration

# server.properties
server-name=My Minecraft Server
max-players=20
difficulty=2
gamemode=survival
pvp=true
enable-command-block=true
spawn-protection=16

Common Issues

Out of Memory (OOM)

Server crashes with OutOfMemoryError. Increase -Xmx value (max heap RAM allocated).

Chunk Loading Issues

Players can't load chunks or experience lag. Reduce view-distance setting.

Plugin Conflicts

Plugins cause server to crash. Test plugins individually for conflicts.

Auth Server Down

Players can't connect to Microsoft auth. Check Minecraft Services status.

Troubleshooting Guide

Server Crashes at Startup

  • Verify Java 17+ is installed: java -version
  • Accept EULA in eula.txt file
  • Check disk space availability
  • Review latest.log for error messages

Players Can't Connect

  • Verify firewall allows port 25565 (or custom port)
  • Check port forwarding on router
  • Verify server-ip in server.properties
  • Check network connectivity from server location

Performance Optimization

Server Tuning

  • Set view-distance to 8-10 for lower end
  • Reduce simulation distance
  • Disable unnecessary world features
  • Use Paper server instead of vanilla

Java Optimization

  • Use latest Java LTS (21)
  • Enable aggressive GC flags
  • Allocate 60-75% of available RAM
  • Monitor GC pauses with GCeasy
Extended Troubleshooting & Bug Solutions

Extended Troubleshooting Guide

Memory & Performance Issues

Server Uses 100% CPU

Symptoms: High CPU usage even with few players, server slows down progressively

Solutions:

  • Run /spark tps to identify chunk loading bottlenecks
  • Disable world generation if not needed (set level-type to flat if possible)
  • Reduce entity-activation-range in paper-world.yml (default: 48, try 32)
  • Check for rogue plugin loops: restart with plugins one by one to isolate
  • Update to latest Paper/Spigot version for optimizations

Server RAM Memory Leak (OOM)

Symptoms: Memory usage grows continuously, server crashes after days of uptime

Solutions:

  • Increase Xmx to 60-70% of available RAM as temporary fix
  • Disable problematic plugins incrementally to find the culprit
  • Use -XX:+UseG1GC and -XX:MaxGCPauseMillis=200 GC flags
  • Schedule automatic server restart using CRON every 6-12 hours
  • Monitor with /gc command or JConsole for leak patterns

TPS Drops & Server Lag Spikes

Symptoms: Server runs fine but regularly drops TPS (20 to 10 or lower)

Solutions:

  • Use /timings report to identify slow blocks and plugins
  • Disable excessive redstone machines or farms
  • Reduce max-tick-time in server.properties (default 60000ms)
  • Optimize world borders to prevent exploration lag
  • Check for too many hopper chains or redstone updates

Networking & Connection Issues

Players Kicked: "Connection Reset"

Symptoms: Players connect for a few seconds then get kicked immediately

  • Check server.log for "Timed out" messages - usually network issue
  • Verify max-players setting isn't being reached
  • Check if player IP is banned: /banlist ips
  • Test with localhost connection first to isolate network from server
  • Disable any IP whitelisting or mod filters temporarily
  • Increase timeout in server.properties if players on slower connections

Players See "Outdated Server/Client"

Symptoms: Version mismatch error preventing connections

  • Ensure server JAR version matches client Minecraft version
  • For Paper/Spigot: version auto-negotiates, so usually works
  • Try with vanilla launcher first to test if mod conflict
  • Check network proxy ISN'T intercepting connections

Players Experience Rubber-Banding

Symptoms: Player movement gets reversed or repeated (rubber-bands)

  • Indicates network latency problem, NOT server
  • Check player ping with /ping playername
  • Suggest player check ISP, antivirus, VPN blocking packets
  • On server side: ensure network bandwidth available

Plugin & Mod Issues

Plugin/Mod Not Loading

Symptoms: Plugin jar placed in plugins/ but commands don't work

  • Check /plugins list to see if plugin IS loaded
  • See server console output on start (scroll back)
  • Verify jar is not corrupted: try re-downloading
  • Check plugin dependencies - some need specific server software
  • Paper vs Spigot vs Bukkit - make sure plugin supports your server type
  • Java version too old - plugin might require Java 17+

Plugin Conflict / Crash on Startup

Symptoms: Server crashes when loading plugins, or immediately after startup

  • Read full crash log for plugin name and error line
  • Try removing plugins one by one to find culprit
  • Check plugin versions match Paper/Spigot version
  • Update conflict plugins to latest versions
  • Check if plugin YAML has correct syntax (spaces not tabs)

World & Data Save Issues

World Corruption / Can't Load World

Symptoms: Server won't start with specific world, or world loads but chunks missing

  • Restore from latest backup immediately
  • Use NBTExplorer to check world NBT data integrity
  • Delete region files in world/region/ matching error location
  • Consider using world management plugins (Multiverse, etc)
  • Regular automated backups prevent this issue

Server Won't Save Data

Symptoms: Player progress lost between restarts, inventories don't save

  • Check disk space - server might have nowhere to save!
  • Verify file permissions on server folder (chmod 755)
  • Check save-all interval in server.properties
  • Look for SQL connection errors if using database backend

Commands & Permissions Issues

Commands Not Working / Permission Denied

Symptoms: Player has permission but can't execute command

  • Check /op status - player might not be op
  • Permission plugin might override - check LuckPerms, PermissionsEx
  • Server might require permission like "*" to do everything
  • Try /say to test if commands work at all

For issues not listed here, check server logs with: tail -f logs/latest.log

Server Customization

Minecraft servers can be customized with plugins (Java), datapacks, or mods (Forge/Fabric).

Popular Plugins (Java)

Essentials, World Guard, LiteBans, Sky Factory

Mod Loaders

Forge, Fabric, Quilt, NeoForge

Developer Resources

Plugin Development

Spigot API and Paper API for Java plugin development. Full Maven/Gradle support.

🔨 Mod Development

Forge Mod Development Kit (MDK) and Fabric API for extensive content creation

Data Packs

Create datapacks with JSON config for loot tables, recipes, structures, dimensions

FAQ

Java vs Bedrock - which should I host?

Java Edition: More customization, plugins, mods. Bedrock: Console/mobile friendly, cross-platform multiplayer.

How often should I back up my world?

Daily backups recommended. Use plugins like BackupProvider or simple tar/zip scripts for world files.