Open Terrain Generator (OTG)

Open Terrain Generator (OTG)

10M Downloads

Feature: 1.16.x: 6 - Dimensions

PG85 opened this issue ยท 6 comments

commented

Implement dimensions (create/delete, settings, portals) for 1.16.x. Ignore GUI, use console commands/configs for v1.

Implement console commands:

  • /otg time
  • /otg weather
  • /otg tp (for dims)
commented

Added portals for 0.0.17, also changed DimensionConfig to allow configuring of non-otg overworlds used with OTG nether/end/dims.

Example for Forge MP server, using server.properties:

level-type:otg 
generator-settings: MPDims

*generator-settings targets a dimensionconfig, or if there isn't one of the same name, a preset.

DimensionConfigs/MPDims.yaml

#TODO: Provide instructions for modpack devs.
---
Version: 1
OverWorld:
  NonOTGWorldType: "biomesoplenty"
  NonOTGGeneratorSettings:
  PresetFolderName:
  Seed: 10
Nether:
  PresetFolderName: "AlienJungle"
  Seed: 11
End:
  PresetFolderName: "NewBB"
  Seed: 12  
Dimensions:
- PresetFolderName: "Wildlands"
  Seed: 14

Creates a bop overworld, with OTG nether/end and 1 custom dimension. Portal blocks/colors for custom dimensions are configured via worldconfig.

commented

Added dimensions gui v1 for Forge SP for 0.0.16. Users can select presets for overworld/nether/end, and add custom otg dims with otg presets. For the overworld, there is a cusomisation screen that allows users to select vanilla/non-otg world types (flat world, terraforged, BOP, etc). Max 10 custom dims, each preset can only be used once.

No portals features yet, users have to use commands, functions and/or datapacks to travel between dims.

commented

Added basic dimension settings for 0.0.15 for Forge. Can add custom dimensions and replace nether/end, just need to reimplement DimensionConfig and improve GUI so users can select a preset for each dim and add new dims.

commented

For 0.0.15, added the following:

Dimensions / dimension settings (Forge only)

  • Added WorldConfig dimension settings; HasSkylight, HasCeiling, UltraWarm, Natural, CreateDragonFight, PiglinSafe, BedWorks, RespawnAnchorWorks, HasRaids, InfiniBurn, EffectsLocation, CoordinateScale, AmbientLight.
  • Added basic dimensions support via DimensonConfigs/.yaml. Users can replace overworld/nether/end and add custom OTG dimensions. Bare-bones atm, no UI yet, have not yet tested adding the same preset for multiple dimensions or using a non-otg overworld. Otherwise should work fine.

Example DimensionConfg: config/OpenTerrainGenerator/DimensionConfigs/Default.yaml
Filename (Default.yaml) targets a preset, creating an overworld with this preset via SP world creation UI or MP server.properties enables this DimensionConfig (filename is matched to preset folder name).

---
Version: 1
PresetFolderName: "Default"
OverWorld:
  PresetFolderName: "Default"
  Seed: 10
Nether:
  PresetFolderName: "AlienJungle"
  Seed: 11
End:
  PresetFolderName: "NewBB"
  Seed: 12  
Dimensions:
- PresetFolderName: "Wildlands"
  Seed: 14

Version: Ignored atm
PresetFolderName: Ignored atm
OverWorld: Ignored atm, preset/seed from world creation UI / server.properties are used for overworld.
Nether: Replaces the_nether with the specified OTG preset and seed.
End: Replaces the_end with the specified OTG preset and seed.
Dimensions: List of custom dimensions using the specified OTG preset and seed.

All nodes should be optional, though atm you should always get at least an OTG overworld.

commented

TODO:

  • Dimensions GUI (world creation, select preset for overworld/nether/end, add/delete custom dims).
  • OTG portals and portal settings? (normally done via functions for datapack dimensions)
  • 1.12.2 OTG dimension settings like block protect, dimensionabove/below, add/remove items, gravity etc?
  • Non-otg overworld (not tested yet, vanilla overworld should be easy to do at least, modded not sure).
  • Using the same preset for multiple dimensions
  • Spigot dimensions? We've never supported this but should check if it's possible.