Overview

LilWorlds provides comprehensive world management capabilities that go beyond basic creation and deletion. This guide covers advanced features, best practices, and optimization techniques.

World Lifecycle Management

World States

Understanding world states is crucial for effective management:

Loaded

Active in Memory

Players can join, chunks are loaded, events are processed

Unloaded

Stored on Disk

Files exist but world is not in memory, saves resources

Configured

In Configuration

World settings stored in worlds.yml, can be loaded

Orphaned

Files Only

World folder exists but not in configuration

State Transitions

Advanced World Creation

Creation Options

LilWorlds supports extensive customization during world creation:

# Basic creation
/world create myworld

# With environment
/world create nether_world NETHER

# With custom generator
/world create void_world NORMAL -g VoidGenerator

# With seed
/world create seeded_world NORMAL -s 12345

# Combined options
/world create custom_world NORMAL -g MyGenerator -s 67890 --structures false

Batch World Creation

For servers requiring multiple worlds:

1

Prepare Configuration

Create a batch configuration file with world definitions

2

Use Scripting

# Example batch creation script
/world create survival NORMAL
/world create survival_nether NETHER
/world create survival_the_end THE_END
/world create creative NORMAL -g FlatGrass
/world create minigames NORMAL -g VoidGenerator
3

Configure Groups

Set up inventory groups and permissions

Async World Creation

LilWorlds creates worlds asynchronously to prevent server lag:

# config.yml
performance:
  async-world-creation: true
  max-concurrent-world-operations: 3

Performance Tip: Async creation prevents server freezing during world generation, especially for large worlds.

World Loading and Unloading

Smart Loading

LilWorlds provides intelligent world loading:

# Load specific world
/world load myworld

# Load all configured worlds
/world load

# Load with specific settings
/world load myworld --force

Automatic Loading

Configure automatic loading behavior:

# config.yml
settings:
  auto-load-worlds: true
  
  # Load worlds on demand when players try to join
  load-on-demand: true
  
  # Unload empty worlds after delay
  auto-unload-empty: true
  auto-unload-delay: 300  # 5 minutes

Memory Management

Optimize memory usage with strategic unloading:

# Unload specific world
/world unload myworld

# Unload all empty worlds
/world unload --empty

# Unload with player evacuation
/world unload myworld --evacuate

World Information and Monitoring

Detailed World Information

Get comprehensive world data:

/world info myworld

World Statistics

Monitor world performance and usage:

# View world statistics
/world stats myworld

# Server-wide statistics
/worlds stats

Real-time Monitoring

LilWorlds provides real-time monitoring capabilities:

# config.yml
monitoring:
  enable-statistics: true
  track-player-time: true
  track-chunk-loading: true
  
  # Performance alerts
  memory-warning-threshold: 80  # Percentage
  chunk-warning-threshold: 1000

World Cloning and Backups

Advanced Cloning

Create sophisticated world copies:

# Basic clone
/world clone source target

# Clone with different environment
/world clone overworld nether_copy NETHER

# Clone with modifications
/world clone creative creative_backup --unload-source

Backup Strategies

World Importing

Import Existing Worlds

Bring external worlds into LilWorlds management:

# Basic import
/world import existing_world

# Import with specific settings
/world import existing_world NORMAL -g CustomGenerator

# Import and configure
/world import existing_world --configure

Bulk Import

Import multiple worlds at once:

# Import all worlds in server folder
/world import --scan

# Import specific pattern
/world import --pattern "world_*"

Import Validation

LilWorlds validates worlds during import:

Validation Checks:

  • Level.dat file exists
  • World folder structure is valid
  • No naming conflicts
  • Compatible with current Minecraft version

World Deletion and Cleanup

Safe Deletion Process

LilWorlds implements a comprehensive deletion process:

1

Confirmation Required

First command shows warning and requires confirmation

2

Player Evacuation

All players moved to spawn world safely

3

World Unloading

World properly unloaded from memory

4

File Deletion

World files permanently removed from disk

5

Configuration Cleanup

All references purged from configuration files

# Delete with confirmation
/world remove myworld

# Force delete (admin only)
/world remove myworld --force

# Delete and backup first
/world remove myworld --backup

Cleanup Operations

Maintain a clean world environment:

# Remove orphaned world files
/worlds cleanup --orphaned

# Remove empty world folders
/worlds cleanup --empty

# Clean configuration entries
/worlds cleanup --config

Performance Optimization

Memory Management

Optimize world memory usage:

# config.yml
performance:
  # Unload empty worlds automatically
  auto-unload-empty: true
  auto-unload-delay: 300
  
  # Limit concurrent operations
  max-concurrent-world-operations: 2
  
  # Chunk loading optimization
  chunk-loading-optimization: true
  preload-spawn-chunks: false

Resource Monitoring

Monitor resource usage:

# Check memory usage
/worlds memory

# View chunk statistics
/worlds chunks

# Performance report
/worlds performance

Optimization Recommendations

World Groups and Organization

Logical Grouping

Organize worlds by purpose:

# config.yml
world-groups:
  survival:
    worlds: [survival, survival_nether, survival_the_end]
    shared-inventory: true
    shared-enderchest: true
    
  creative:
    worlds: [creative, build_world]
    shared-inventory: true
    gamemode: CREATIVE
    
  minigames:
    worlds: [pvp_arena, parkour, spleef]
    shared-inventory: false
    reset-on-join: true

Group Management

# Manage world groups
/worlds group create survival
/worlds group add survival world_nether
/worlds group remove survival old_world
/worlds group list

Advanced Features

World Linking

Create connections between worlds:

# worlds.yml
world_portals:
  survival_to_nether:
    from: survival
    to: survival_nether
    type: NETHER_PORTAL
    
  hub_to_creative:
    from: hub
    to: creative
    type: COMMAND_BLOCK
    command: "/world tp creative"

Conditional Loading

Load worlds based on conditions:

# config.yml
conditional-loading:
  time-based:
    event_world:
      start-time: "18:00"
      end-time: "22:00"
      
  player-based:
    vip_world:
      min-players: 5
      permission: "lilworlds.vip"

World Templates

Create reusable world templates:

# templates/survival_template.yml
name: "Survival Template"
environment: NORMAL
generator: null
settings:
  difficulty: NORMAL
  pvp: true
  spawn-animals: true
  spawn-monsters: true
gamerules:
  keepInventory: false
  doDaylightCycle: true

Troubleshooting

Common Issues

Diagnostic Commands

# Diagnose world issues
/worlds diagnose myworld

# Check system health
/worlds health

# Performance analysis
/worlds analyze --performance

Best Practices

Naming Conventions

Use consistent naming for better organization:

# Good naming examples
survival_overworld
survival_nether
survival_the_end
creative_main
creative_staff
minigame_pvp
minigame_parkour
event_2024_summer
backup_survival_20240612

Resource Management

Resource Management Tips:

  • Regularly monitor memory usage
  • Unload worlds during low-traffic periods
  • Use efficient generators for large worlds
  • Implement automated cleanup routines
  • Plan world distribution across server resources

Security Considerations

# Secure world management
security:
  restrict-world-access: true
  log-world-operations: true
  require-confirmation-for-deletion: true
  backup-before-major-operations: true

Next Steps

World Deletion

Learn about safe world deletion with configuration purging

Custom Generators

Create custom world generators for unique experiences

Security Features

Understand rate limiting and security measures

Performance Guide

Optimize LilWorlds for maximum performance