English | 简体中文
Port of Schematica for MITE / FishModLoader.
Current version: 0.3.0
- Load/save/paste/projection for
.schematic - In-game region selection with stick (
RightClick= Pos1,Shift+RightClick= Pos2) - Entity data save/paste/worldgen spawn from schematics
- Tile entity data preservation (e.g. chest inventory contents)
- Worldgen reference package:
com.github.lunatrius.worldgen - 6-level marker loot chest support for worldgen schematics
- Unified per-structure worldgen profile (loot + entity replacement in one place)
- Built-in MudMan 1/2/3 entities and corresponding spawn eggs (
mud_man_1/2/3_spawn_egg)
- JDK 17
- PowerShell (or any shell that can run
gradlew)
.\gradlew runClientOptional username:
.\gradlew runClient -Pusername=Dev.\gradlew buildOutput jars are under build/libs/.
- Runtime:
<game_dir>/schematics - Dev default:
run/schematics
All commands use slash form:
/schematica help/schematica list/schematica load <name>/schematica unload/schematica status/schematica origin here/schematica move <x> <y> <z>/schematica nudge <dx> <dy> <dz>/schematica rotate <90|180|270>/schematica mirror <x|z>/schematica paste [replace|solid|nonair]/schematica undo/schematica save <x1> <y1> <z1> <x2> <y2> <z2> <name>/schematica create <name>/schematica sel status/schematica sel clear/schematica menu
Legacy underscore command aliases are removed.
- Put a schematic (for example
test1.schematic) inrun/schematics/. - Enter a world and run
/schematica load test1. - Run
/schematica statusto check size and origin. - Run
/schematica origin here(or/schematica move ...). - Run
/schematica paste solid. - Run
/schematica undoif needed.
- Press
Min-game to open Schematica control GUI. - Or run
/schematica menu. - GUI hotkeys:
[/]file switchLloadPpaste replaceOpaste solidUundoHorigin here1/2/3rotateW/A/S/D/Q/EnudgeKunload
Reference package:
src/main/java/com/github/lunatrius/worldgen
- Put structure file in:
src/main/resources/assets/<your_modid>/structures/<name>.schematic - Create a generator class extending
SchematicStructureGenerator. - In constructor, pass resource path to
super(...). - Register your generator in
SchematicWorldgenRegistration.
For worldgen schematics, if a chest contains exactly one non-empty marker stack, it is treated as a loot chest marker and replaced with randomized loot.
Marker mapping:
- Level 1:
stick - Level 2:
flint - Level 3:
coal - Level 4:
iron ingot - Level 5:
gold ingot - Level 6:
diamond
Unified editable profile is in:
src/main/java/com/github/lunatrius/worldgen/WorldgenStructureProfiles.java
You can edit:
- Structure alias -> profile binding (per-structure independent config)
- Marker item -> level mapping
- Loot table / roll range for each level
- Entity replacement targets for levels 1/2/3
- Whether replaced skeletons should be forced to hold an iron sword
Current default profile is bound to aliases:
/assets/schematica/structures/10.schematicassets/schematica/structures/10.schematic10.schematic10
Enable debug output with JVM arg:
.\gradlew runClient -Dschematica.debug.entityReplacement=trueThis prints structure key, matched profile, detected level, replacement target and iron-sword flag.
Edit this constant:
src/main/java/com/github/lunatrius/worldgen/SchematicWorldgenRegistration.java
private static final Dimension TARGET_DIMENSION = Dimension.OVERWORLD;Available values:
Dimension.OVERWORLDDimension.NETHERDimension.ENDDimension.UNDERWORLD
You can also tune:
WEIGHT_10(registration weight)CHANCE_10(spawn chance divisor,1/chance)
paste/savemax volume:8,000,000blockspaste/undoY bound check:0..255
This project is based on Schematica / LunatriusCore and uses MIT terms. See LICENSE.