Overview
This guide walks you through creating your first Iris world, from installation to exploring custom terrain. By the end, you’ll have a fully functional Iris-generated world running on your server.Make sure you’ve completed the Installation steps before proceeding.
Create Your First World
Choose a Dimension Pack
Iris worlds are created from dimension packs. The “overworld” pack provides vanilla-like generation with enhancements.View available dimensions:
Popular dimension packs:
overworld- Enhanced vanilla-like generationflat- Flat world generation- Custom packs from IrisDimensions
Create the World
Use the Example:
/iris create command to generate a new world:Command Parameters
Command Parameters
From
Reserved Names: Cannot use “iris” or “benchmark” as world names.
CommandIris.java:73-126:| Parameter | Description | Default | Required |
|---|---|---|---|
world-name | Name of the world to create | - | Yes |
dimension | Dimension type (e.g., overworld) | default | No |
seed | World generation seed | 1337 | No |
main-world | Set as server’s main world | false | No |
Understanding World Generation
The IrisToolbelt API
Under the hood, Iris uses theIrisToolbelt API for world creation:
World Structure
When created, Iris worlds have this structure:Pregenerating Chunks (Recommended)
Pregenerate chunks for better performance:Start Pregeneration
Use the This pregenerates chunks in a radius around spawn.
Example:
/iris pregen command:Pregeneration Parameters
Pregeneration Parameters
| Parameter | Description | Unit |
|---|---|---|
radius | Radius from center | Regions (1 region = 32×32 chunks) |
center | Center coordinates | Region coordinates |
method | Generation method | cached, hybrid, or turbo |
Monitor Progress
Watch pregeneration progress:Output shows:
- Chunks generated
- Chunks remaining
- Generation speed (chunks/sec)
- Estimated time remaining
From
IrisSettings.java:149-155, default pregeneration settings:- Uses cache by default:
true - Max concurrency:
256chunks - Virtual threads:
false(Java 21+ feature)
Exploring Your World
Check World Information
Using the What Command
Identify biomes and features while exploring:- Current biome
- Region information
- Cave/structure data
- Terrain height
Studio Mode (Advanced)
For dimension pack development, use Studio mode:Edit & Hot-Reload
Studio mode features:
- Real-time dimension editing
- Instant chunk regeneration
- VS Code integration (if enabled)
- Weather/time disabled for testing
Studio settings from
IrisSettings.java:259-264:- Auto-open VS Code:
openVSCode: true - Disable time/weather:
disableTimeAndWeather: true - Auto-start default studio:
autoStartDefaultStudio: false
Managing Worlds
Loading Existing Worlds
Import an existing Iris world:bukkit.yml and loads it.
Unloading Worlds
Removing Worlds
CommandIris.java:244-305, this command:
- Evacuates all players to another world
- Unloads the world
- Removes from bukkit.yml
- Optionally deletes world folder
Common Issues
World creation fails - folder already exists
World creation fails - folder already exists
Error:
That folder already exists!Solution: Choose a different world name or delete the existing folder:Chunks not generating
Chunks not generating
Symptoms: Stuck at “Loading terrain…”Solutions:
- Check server console for errors
- Verify dimension pack installed:
ls plugins/Iris/packs/ - Increase server timeout in
spigot.yml: - Allocate more RAM to server
Cannot teleport to world
Cannot teleport to world
Error:
The specified player does not exist or world not foundSolutions:- Verify world loaded:
/iris worlds - Check exact world name (case-sensitive)
- Ensure you have permission:
iris.command.teleport
Next Steps
Now that you have a working Iris world:Optimize Performance
Tune settings.json for your server
Download More Packs
Explore dimension packs at IrisDimensions
Create Custom Dimensions
Learn dimension pack development
Use the API
Integrate Iris into your plugins