Skip to main content
This guide covers common issues encountered when running PocketMine-MP servers and their solutions.

Server Won’t Start

Symptoms:
  • “PHP version not supported” error
  • Server immediately exits
  • “Syntax error” in core files
Solution:PocketMine-MP requires specific PHP versions. Check requirements:
# Check PHP version
php -v

# Install correct PHP version
# See installation docs for version requirements
Each PocketMine-MP version requires a specific PHP version. Check the release notes or README.
Symptoms:
  • “Failed to bind to port” error
  • “Address already in use”
Solution:
# Find process using port 19132
sudo lsof -i :19132

# Kill the process
sudo kill -9 <PID>

# Or change port in server.properties
server-port=19133
Symptoms:
  • “Extension X is not loaded” error
  • Fatal PHP errors on startup
Solution:Install required PHP extensions:
# Linux (example for Ubuntu)
sudo apt-get install php-pthreads php-yaml php-sqlite3 php-zip

# Check installed extensions
php -m
PocketMine-MP requires: pthreads, yaml, sqlite3, zlib, curl, and others. Use the official installation script for automatic setup.
Symptoms:
  • “Permission denied” when accessing files
  • Cannot write to directories
Solution:
# Fix ownership
sudo chown -R $(whoami) /path/to/server

# Fix permissions
chmod -R 755 /path/to/server
chmod 644 server.properties pocketmine.yml
Symptoms:
  • “Memory limit exceeded” error
  • Server exits during startup
Solution:Increase memory limit in pocketmine.yml:
memory:
  main-hard-limit: 2048  # Increase to 2GB
Or increase PHP memory limit:
# Edit php.ini
memory_limit = 2048M

Connection Issues

Symptoms:
  • “Unable to connect to world” error
  • Connection timeout
  • Server not visible in LAN games
Troubleshooting steps:
1

Verify server is running

# Check if server is listening
netstat -an | grep 19132
2

Check firewall

# Linux
sudo ufw status
sudo ufw allow 19132/udp

# Windows - check Windows Defender Firewall
3

Verify port forwarding (if behind router)

  • Forward UDP port 19132 to server IP
  • Check router configuration
  • Test with port checker tool
4

Check IP configuration

server.properties
# Leave empty for automatic
server-ip=

# Or set to specific interface
server-ip=0.0.0.0
5

Verify client compatibility

Ensure client Minecraft version matches server version
Symptoms:
  • Players randomly disconnect
  • “Connection lost” messages
  • “Timed out” errors
Solutions:
  1. Check server performance:
# Monitor TPS
status

# Target: TPS ~20
# If TPS < 19, optimize server performance
  1. Adjust network settings:
pocketmine.yml
network:
  # Increase if on poor networks
  batch-threshold: 512
  
  # Decrease compression level
  compression-level: 4
  1. Check for packet loss:
  • Test network quality
  • Check player internet connection
  • Consider using better hosting
Symptoms:
  • “Failed to authenticate with Xbox Live”
  • “Could not verify account”
Solutions:
  1. Verify server configuration:
server.properties
xbox-auth=true
  1. Check Xbox Live service status:
  • Visit Xbox Live status page
  • Wait for service restoration
  1. Player must be signed into Xbox:
  • Player needs Xbox Live account
  • Must be signed in on device
  1. Check encryption:
pocketmine.yml
network:
  enable-encryption: true

Performance Issues

Symptoms:
  • TPS below 19
  • Delayed block updates
  • Slow player movement
Diagnosis:
# Enable timings
timings on

# Wait 5-10 minutes

# Generate report
timings paste
Common causes and solutions:

Heavy plugins

  • Identify laggy plugins in timings
  • Disable or replace problem plugins
  • Contact plugin developers

Too many entities

  • Reduce mob spawn rates
  • Clear entities: clear @e[type=!player]
  • Use entity limiting plugins

Large view distance

view-distance=6  # Reduce from 12

Expensive chunk operations

chunk-ticking:
  tick-radius: 2  # Reduce from 3
  blocks-per-subchunk-per-tick: 2
Symptoms:
  • Memory warnings in console
  • “Low memory” messages
  • Out of memory crashes
Solutions:
  1. Enable memory management:
pocketmine.yml
memory:
  main-limit: 768  # Enable soft limit
  main-hard-limit: 1024
  check-rate: 20
  continuous-trigger: true
  1. Reduce memory usage:
server.properties
view-distance=6  # Lower view distance
pocketmine.yml
chunk-sending:
  per-tick: 3  # Reduce chunk loading speed

memory:
  max-chunks:
    chunk-radius: 4  # Limit during low memory
  1. Check for memory leaks:
# Generate memory dump
dump memory

# Review plugins for leaks
# Remove problematic plugins
  1. Increase server RAM:
  • Upgrade hosting plan
  • Increase allocated memory
Symptoms:
  • CPU at 100%
  • System sluggishness
  • Slow server response
Solutions:
  1. Check timings report for CPU-intensive operations
  2. Optimize world generation:
settings:
  async-workers: 4  # Match CPU cores

chunk-generation:
  population-queue-size: 16  # Reduce
  1. Reduce compression:
network:
  compression-level: 4  # Lower level
  async-compression: true  # Offload to workers
  1. Pre-generate worlds:
  • Use world generation plugins
  • Generate chunks before players join

World Issues

Symptoms:
  • “World not found” error
  • Server starts but world missing
  • Players spawn in void
Solutions:
  1. Check world directory:
ls -la worlds/

# Ensure world folder exists
# Check folder name matches server.properties
  1. Verify configuration:
server.properties
level-name=world  # Must match folder name
  1. Check world format:
pocketmine.yml
level-settings:
  default-format: leveldb  # Or mcregion
  1. Restore from backup:
# Copy backup to worlds directory
cp -r backup/world worlds/
Symptoms:
  • Chunks not loading
  • “Failed to read chunk” errors
  • Visual glitches
  • Server crashes when loading specific areas
Solutions:
  1. Stop server immediately to prevent further corruption
  2. Backup current state:
cp -r worlds/world worlds/world.backup
  1. Try automatic repair:
# Start server, corruption may auto-fix
# Check console for errors
  1. Manual region deletion:
# Delete corrupted regions (LAST RESORT)
# This deletes chunks permanently
rm worlds/world/region/corrupted_file
  1. Restore from backup:
rm -rf worlds/world
cp -r backup/world worlds/
Always maintain regular backups to recover from corruption.
Symptoms:
  • Players fall through world
  • Chunks appear as void
  • “Chunk generation failed” errors
Solutions:
  1. Check generator settings:
server.properties
level-type=DEFAULT  # Or FLAT, VOID
generator-settings=  # Leave empty for default
  1. Verify async workers:
pocketmine.yml
settings:
  async-workers: auto  # Or 2+
  1. Check disk space:
df -h  # Ensure sufficient space
  1. Check permissions:
chmod -R 755 worlds/

Plugin Issues

Symptoms:
  • Plugin not in plugins list
  • “Failed to load plugin” error
  • API version mismatch
Solutions:
  1. Check API compatibility:
# Server API version
version

# Plugin must support this API version
  1. Verify file integrity:
  • Ensure .phar file is complete
  • Re-download plugin
  • Check file permissions
  1. Check dependencies:
  • Install required dependencies
  • Check plugin documentation
  1. Review console errors:
# Look for specific error messages
tail -f server.log
Symptoms:
  • Server crashes when plugin loads
  • Segmentation fault
  • Fatal PHP errors
Solutions:
  1. Remove problematic plugin:
mv plugins/ProblemPlugin.phar plugins/disabled/
  1. Update plugin:
  • Check for updates on Poggit
  • Download latest version
  1. Report bug:
  • Contact plugin developer
  • Provide crash report
  • Include server version and logs
  1. Use alternative plugin:
  • Find replacement on Poggit
  • Test alternatives
Symptoms:
  • Features not working
  • Unexpected behavior
  • Errors mentioning multiple plugins
Solutions:
  1. Test plugins individually:
# Disable all plugins
mv plugins/*.phar plugins/disabled/

# Enable one at a time
mv plugins/disabled/Plugin1.phar plugins/
  1. Check for conflicts:
  • Review plugin documentation
  • Look for known conflicts
  • Contact developers
  1. Adjust plugin priorities:
  • Some plugins support load order
  • Check plugin.yml settings

Crash Issues

Location: crashdumps/ directoryKey information:
  • Error message: What went wrong
  • Stack trace: Where it happened
  • Plugin list: Active plugins
  • Server version: PocketMine-MP version
Automatic reporting:
pocketmine.yml
auto-report:
  enabled: true  # Sends crash reports to PMMP team
  send-code: true
  send-settings: true
Steps to diagnose:
1

Review crash dumps

Check crashdumps/ for patterns
2

Disable plugins

Test with plugins disabled
3

Update server

Ensure running latest stable version
4

Check resources

Monitor RAM, CPU, disk space
5

Review timings

Identify performance bottlenecks
6

Report bug

If PocketMine-MP bug, report to GitHub Security (if security-related) or Issues
Solutions:
  1. Increase memory limit:
pocketmine.yml
memory:
  main-hard-limit: 2048  # Increase
  1. Enable memory management:
memory:
  main-limit: 1536  # Enable soft limit
  continuous-trigger: true
  1. Reduce memory usage:
  • Lower view distance
  • Remove heavy plugins
  • Reduce player count
  • Clear entities regularly
  1. Upgrade hosting:
  • Get more RAM
  • Use dedicated server

Getting Help

If you can’t resolve your issue:

Discord

Join the official PocketMine-MP Discord server for community support

Stack Overflow

Ask questions tagged with pocketmine on Stack Overflow

GitHub Issues

Report bugs on GitHub (not for support questions)

Documentation

Read the official PocketMine-MP documentation

Information to Provide

When asking for help, include:
1

Server version

version
# Output: This server is running PocketMine-MP version ...
2

PHP version

php -v
3

Operating system

  • Linux distribution and version
  • Windows version
  • macOS version
4

Error messages

Copy exact error messages from console
5

Crash dumps

Upload relevant crash dump files
6

Plugin list

plugins
7

Configuration

Relevant parts of server.properties or pocketmine.yml
8

Steps to reproduce

Exactly how to trigger the issue
Do not share sensitive information:
  • ops.txt contents
  • API keys or passwords
  • Player data
  • Full server IP addresses

Next Steps

Performance

Optimize server performance

Configuration

Review configuration options

Build docs developers (and LLMs) love