[SPIGOT-6659] "Unregistered dimension" in custom dimensions and world generation Created: 19/Jul/21 Updated: 20/Jul/21 Resolved: 20/Jul/21 |
|
| Status: | Resolved |
| Project: | Spigot |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major |
| Reporter: | Héctor Rodríguez | Assignee: | Unassigned |
| Resolution: | Invalid | Votes: | 1 |
| Labels: | DataPacks, Dimensions, Generation, JSON | ||
| Attachments: |
|
||||||||
| Issue Links: |
|
||||||||
| Version: | CraftBukkit version 3188-Spigot-d03d7f1-c851639 (MC: 1.17.1) (Implementing API version 1.17.1-R0.1-SNAPSHOT) | ||||||||
| Guidelines Read: | Yes | ||||||||
| Description |
|
When loading datapacks that modify the world generation of existing dimensions (Overworld, The Nether and The End) and custom dimensions, in version 1.17.1, an expection of the type "Unregistered dimension" rises up:
This doesn't happend in vanilla 1.17.1, it generates the proper dimension directory for custom dimensions and correctly overwrites the "vanilla dimensions" generation if specified in the .json files of the datapacks:
I uploaded an example of a datapack that modifies the existing dimensions, with custom features, terrain generation and structures: NormalDimensions-Example.zip and a datapack that generates a new dimension (named skylands): CustomDimension-Example.zip as examples for verifing the Exception. |
| Comments |
| Comment by Héctor Rodríguez [ 20/Jul/21 ] |
|
Ok, my mistake. I changed the datapacks to use the folder you mention:
And changed the json to use them: "type": "minecraft:skylands" And the server properly loads it: [01:54:19] [Server thread/INFO]: Preparing start region for dimension minecraft:skylands [01:54:19] [Worker-Main-11/INFO]: Preparing spawn area: 61% [01:54:20] [Worker-Main-8/INFO]: Preparing spawn area: 75% [01:54:20] [Worker-Main-10/INFO]: Preparing spawn area: 93% [01:54:21] [Worker-Main-10/INFO]: Preparing spawn area: 100% [01:54:21] [Worker-Main-8/INFO]: Preparing spawn area: 100% [01:54:22] [Worker-Main-11/INFO]: Preparing spawn area: 100% [01:54:22] [Server thread/INFO]: Time elapsed: 2614 ms [01:54:22] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it [01:54:22] [Server thread/INFO]: Done (18.057s)! For help, type "help" container@pterodactyl~ Server marked as running... It's rare that vanilla one accepts inline configuration aside from the directories format. Thank you md_5 |
| Comment by Héctor Rodríguez [ 20/Jul/21 ] |
|
Let me change the nether.json to match the other ones and answer here |
| Comment by md_5 [ 20/Jul/21 ] |
|
The datapack you uploaded has skylands.json:
{
"type": {
"name": "minecraft:skylands",
"ultrawarm": false,
"natural": true,
"piglin_safe": true,
"respawn_anchor_works": false,
"bed_works": true,
"has_raids": true,
"has_skylight": true,
"has_ceiling": false,
"coordinate_scale": 1,
"ambient_light": 0,
"logical_height": 256,
"effects": "minecraft:overworld",
"infiniburn": "minecraft:infiniburn_overworld",
"min_y": 0,
"height": 256
},
And the normal one has the_nether.json with the same problem. |
| Comment by Héctor Rodríguez [ 20/Jul/21 ] |
|
I checked my datapack that overwrites the existing dimensions, and the thing that you say in the linked ticket (that "dimension_type" should be in a directory, not inline the dimension configuration) in the case of my datapack I didn't changed that:
It uses the vanilla "dimension_type", so it stays as "type": "minecraft:overworld", not the one you mencioned in the linked ticket. |
| Comment by Héctor Rodríguez [ 20/Jul/21 ] |
|
Ok, I'll change the folder distribution to match what you are asking for and update here |
| Comment by md_5 [ 20/Jul/21 ] |
|
Yes they run properly but only due to luck. They are incorrectly structured and do not match the MC wiki or Vanilla datapacks. |
| Comment by Héctor Rodríguez [ 20/Jul/21 ] |
|
Hi! I tested the datapacks in vanilla 1.17.1 to verify it was correct and runs properly. In the case of the datapack NormalDimensions-Example.zip since it modifies de generation of the existing dimensions, its necessary to put the datapack before the server creates the proper world, so it takes the datapacks .json files to correctly generate the dimensions as shown here: [00:22:16] [main/INFO]: Reloading ResourceManager: Default, NormalDimensions-Example.zip [00:22:17] [Worker-Main-11/INFO]: Loaded 7 recipes [00:22:17] [Worker-Main-11/INFO]: Loaded 1137 advancements [00:22:19] [Server thread/INFO]: Starting minecraft server version 1.17.1 [00:22:19] [Server thread/INFO]: Loading properties [00:22:19] [Server thread/INFO]: Default game type: SURVIVAL [00:22:19] [Server thread/INFO]: Generating keypair [00:22:19] [Server thread/INFO]: Starting Minecraft server on 0.0.0.0:25580 [00:22:19] [Server thread/INFO]: Using epoll channel type [00:22:19] [Server thread/INFO]: Preparing level "world" [00:22:19] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld [00:22:20] [Worker-Main-8/INFO]: Preparing spawn area: 0% [00:22:20] [Worker-Main-8/INFO]: Preparing spawn area: 0% [00:22:20] [Worker-Main-11/INFO]: Preparing spawn area: 0% [00:22:22] [Worker-Main-13/INFO]: Preparing spawn area: 0% [00:22:22] [Worker-Main-11/INFO]: Preparing spawn area: 0% [00:22:22] [Worker-Main-14/INFO]: Preparing spawn area: 0% [00:22:22] [Worker-Main-13/INFO]: Preparing spawn area: 0% [00:22:23] [Worker-Main-14/INFO]: Preparing spawn area: 0% [00:22:23] [Worker-Main-10/INFO]: Preparing spawn area: 0% [00:22:24] [Worker-Main-11/INFO]: Preparing spawn area: 0% [00:22:24] [Worker-Main-9/INFO]: Preparing spawn area: 0% [00:22:25] [Worker-Main-14/INFO]: Preparing spawn area: 1% [00:22:25] [Worker-Main-8/INFO]: Preparing spawn area: 3% [00:22:26] [Worker-Main-12/INFO]: Preparing spawn area: 5% [00:22:26] [Worker-Main-14/INFO]: Preparing spawn area: 7% [00:22:27] [Worker-Main-14/INFO]: Preparing spawn area: 9% [00:22:27] [Worker-Main-12/INFO]: Preparing spawn area: 11% [00:22:28] [Worker-Main-9/INFO]: Preparing spawn area: 14% [00:22:28] [Worker-Main-13/INFO]: Preparing spawn area: 16% [00:22:29] [Worker-Main-14/INFO]: Preparing spawn area: 19% [00:22:29] [Worker-Main-8/INFO]: Preparing spawn area: 20% [00:22:30] [Worker-Main-9/INFO]: Preparing spawn area: 24% [00:22:30] [Worker-Main-9/INFO]: Preparing spawn area: 24% [00:22:31] [Worker-Main-13/INFO]: Preparing spawn area: 29% [00:22:31] [Worker-Main-12/INFO]: Preparing spawn area: 32% [00:22:32] [Worker-Main-9/INFO]: Preparing spawn area: 33% [00:22:32] [Worker-Main-10/INFO]: Preparing spawn area: 36% [00:22:33] [Worker-Main-13/INFO]: Preparing spawn area: 39% [00:22:33] [Worker-Main-11/INFO]: Preparing spawn area: 42% [00:22:34] [Worker-Main-11/INFO]: Preparing spawn area: 44% [00:22:34] [Worker-Main-12/INFO]: Preparing spawn area: 44% [00:22:35] [Worker-Main-9/INFO]: Preparing spawn area: 49% [00:22:35] [Worker-Main-10/INFO]: Preparing spawn area: 53% [00:22:36] [Worker-Main-13/INFO]: Preparing spawn area: 54% [00:22:36] [Worker-Main-12/INFO]: Preparing spawn area: 55% [00:22:37] [Worker-Main-11/INFO]: Preparing spawn area: 55% [00:22:37] [Worker-Main-11/INFO]: Preparing spawn area: 60% [00:22:38] [Worker-Main-8/INFO]: Preparing spawn area: 65% [00:22:38] [Worker-Main-12/INFO]: Preparing spawn area: 68% [00:22:39] [Worker-Main-9/INFO]: Preparing spawn area: 72% [00:22:39] [Worker-Main-11/INFO]: Preparing spawn area: 75% [00:22:40] [Worker-Main-12/INFO]: Preparing spawn area: 78% [00:22:40] [Worker-Main-14/INFO]: Preparing spawn area: 83% [00:22:41] [Worker-Main-14/INFO]: Preparing spawn area: 86% [00:22:41] [Worker-Main-8/INFO]: Preparing spawn area: 89% [00:22:42] [Worker-Main-9/INFO]: Preparing spawn area: 96% [00:22:42] [Server thread/INFO]: Time elapsed: 22836 ms [00:22:42] [Server thread/INFO]: Done (22.905s)! For help, type "help" container@pterodactyl~ Server marked as running... And here you can see that the world loads and contains all the modified generation:
Now, in the datapack CustomDimension-Example.zip** you have to load the datapack only, /reload the datapacks and restart the server (since it's a new dimension it doesn't requiere to create the normal world from the .json files of the datapack), and after restarting the server and datapack work properly and as spected: [00:38:55] [main/INFO]: Reloading ResourceManager: Default, CustomDimension-Example.zip [00:38:56] [Worker-Main-8/INFO]: Loaded 7 recipes [00:38:56] [Worker-Main-8/INFO]: Loaded 1137 advancements [00:38:57] [Server thread/INFO]: Starting minecraft server version 1.17.1 [00:38:57] [Server thread/INFO]: Loading properties [00:38:57] [Server thread/INFO]: Default game type: SURVIVAL [00:38:57] [Server thread/INFO]: Generating keypair [00:38:57] [Server thread/INFO]: Starting Minecraft server on 0.0.0.0:25580 [00:38:57] [Server thread/INFO]: Using epoll channel type [00:38:58] [Server thread/INFO]: Preparing level "world" [00:39:01] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld [00:39:01] [Worker-Main-12/INFO]: Preparing spawn area: 0% [00:39:02] [Worker-Main-13/INFO]: Preparing spawn area: 0% [00:39:02] [Worker-Main-14/INFO]: Preparing spawn area: 0% [00:39:03] [Worker-Main-8/INFO]: Preparing spawn area: 3% [00:39:03] [Worker-Main-8/INFO]: Preparing spawn area: 7% [00:39:04] [Worker-Main-9/INFO]: Preparing spawn area: 11% [00:39:04] [Worker-Main-13/INFO]: Preparing spawn area: 14% [00:39:05] [Worker-Main-14/INFO]: Preparing spawn area: 22% [00:39:05] [Worker-Main-12/INFO]: Preparing spawn area: 27% [00:39:06] [Worker-Main-13/INFO]: Preparing spawn area: 30% [00:39:06] [Worker-Main-12/INFO]: Preparing spawn area: 30% [00:39:07] [Worker-Main-9/INFO]: Preparing spawn area: 40% [00:39:07] [Worker-Main-8/INFO]: Preparing spawn area: 40% [00:39:08] [Worker-Main-14/INFO]: Preparing spawn area: 52% [00:39:08] [Worker-Main-13/INFO]: Preparing spawn area: 63% [00:39:09] [Worker-Main-9/INFO]: Preparing spawn area: 66% [00:39:09] [Worker-Main-9/INFO]: Preparing spawn area: 74% [00:39:10] [Worker-Main-11/INFO]: Preparing spawn area: 83% [00:39:10] [Worker-Main-12/INFO]: Preparing spawn area: 83% [00:39:11] [Worker-Main-9/INFO]: Preparing spawn area: 94% [00:39:11] [Server thread/INFO]: Time elapsed: 9739 ms [00:39:11] [Server thread/INFO]: Done (13.330s)! For help, type "help" container@pterodactyl~ Server marked as running... And here you can see that the server loads the dimension properly in game: That's the evidence that Vanilla 1.17.1 loads properly both datapacks with no problems, but trying to do it on Spigot and you'll get the shown Exception. Hope my answer helps~
|
| Comment by md_5 [ 20/Jul/21 ] |
|
Your datapack is invalid. See |
| Comment by Black Hole [ 19/Jul/21 ] |
|
Possible a duplicate of |