IrisToolbelt class is your main entry point for working with Iris programmatically. It provides methods for world creation, world detection, pregeneration, and data access.
Package: com.volmit.iris.core.tools.IrisToolbelt
World Detection
isIrisWorld()
Check if a world is using the Iris generator.world- The world to check
true if the world uses Iris, false otherwise
Example:
isIrisStudioWorld()
Check if a world is an Iris studio world.world- The world to check
true if the world is an Iris studio world
isStudio()
Alternate method to check if a world is a studio world.Generator Access
access()
Get the Iris chunk generator for a world.world- The world to access
PlatformChunkGenerator instance, or null if not an Iris world
Example:
Dimension Management
getDimension()
Load a dimension by name or GitHub repository.dimension- The dimension identifier (supports multiple formats):- Local pack folder name:
"overworld" - GitHub repo:
"GithubUsername/repository" - GitHub repo with branch:
"GithubUsername/repository/branch"
- Local pack folder name:
IrisDimension, or null if not found
Example:
World Creation
createWorld()
Create a new Iris world using the builder pattern.IrisCreator builder instance
Example:
removeWorld()
Remove a world from the bukkit.yml configuration.world- The world to remove
true if successful
Throws: IOException if the operation fails
Pregeneration
pregenerate() - With Task and Method
Start a pregeneration task with a specific method.task- The pregeneration task definitionmethod- The pregeneration method to useengine- The Iris engine instancecached- Whether to use caching (defaults to settings)
PregeneratorJob
pregenerate() - With Generator
Start pregeneration using a chunk generator (automatically selects method).task- The pregeneration taskgen- The Iris chunk generator
PregeneratorJob using hybrid mode
pregenerate() - With World
Start pregeneration for a world.task- The pregeneration taskworld- The world to pregenerate
PregeneratorJob
Player Management
evacuate()
Move all players out of a world.world- The world to evacuatemessage- Optional custom message to send to players
true if players were evacuated successfully
Example:
Mantle Data System
The Mantle system allows storing custom data at specific world coordinates.getMantleData()
Retrieve stored data at a coordinate.world- The worldx,y,z- The coordinatesof- The data type class
null if not found
Example:
deleteMantleData()
Remove stored data at a coordinate.retainMantleDataForSlice()
Mark a data type to be retained in memory.isRetainingMantleDataForSlice()
Check if a data type is configured for retention.Complete Example
Here’s a comprehensive example using multiple API methods:See Also
API Overview
Learn about the overall API structure
Integration Guide
Set up Iris in your project