Table of Contents

Combining Spawns in Minecraft Datapacks

To avoid conflicts and ensure your spawns are not overwritten, you can combine the spawn configuration files from different datapacks. Here's a step-by-step guide on how to do this using example data.

Step 1: Identify the Spawn Configuration Files

First, locate the spawn configuration files in the different datapacks.

Example Datapack 1:

  1. File location: `ExampleDatapack1\data\cobblemon\spawn_pool_world\rayquaza.json`
  2. Content:

{

      "enabled": "true",
      "neededInstalledMods": [],
      "neededUninstalledMods": [],
      "spawns": [
          {
              "id": "rayquaza-1",
              "pokemon": "rayquaza",
              "presets": [
                  "natural",
                  "wild"
              ],
              "type": "pokemon",
              "context": "grounded",
              "bucket": "ultra-rare",
              "level": "70",
              "weight": 0.01,
              "condition": {
                  "biomes": [
                      "minecraft:stony_peaks"
                  ]
              }
          }
      ]
  }

Example Datapack 2:

  1. File location: `ExampleDatapack2\data\cobblemon\spawn_pool_world\rayquaza.json`
  2. Content:

{

    "enabled": true,
    "neededInstalledMods": [],
    "neededUninstalledMods": [],
    "spawns": [
      {
        "id": "example2-rayquaza-1",
        "pokemon": "rayquaza",
        "presets": [
          "natural"
        ],
        "type": "pokemon",
        "context": "grounded",
        "bucket": "ultra-rare",
        "level": "50-70",
        "weight": 0.1,
        "condition": {
          "biomes": [
            "example:skylands_autumn",
            "example:skylands_spring",
            "example:skylands_summer",
            "example:skylands_winter",
            "#example:is_jungle",
            "#minecraft:is_jungle"
          ],
          "key_item": "jade_orb"
        }
      },
      {
        "id": "example2-rayquaza-2",
        "pokemon": "rayquaza",
        "presets": [
          "natural"
        ],
        "type": "pokemon",
        "context": "grounded",
        "bucket": "ultra-rare",
        "level": "50-70",
        "weight": 0.1,
        "condition": {
          "biomes": [
            "#example:is_sky",
            "#example:is_highlands",
            "minecraft:end_highlands",
            "#minecraft:is_end",
            "#example:is_end",
            "#example:is_jungle",
            "#minecraft:is_jungle"
          ],
          "key_item": "jade_orb"
        }
      }
    ]
  }

Step 2: Combine the Spawn Configurations

Combine the configurations into a single file to avoid spawns being overwritten. Here is the combined configuration:

{

"enabled": true,
"neededInstalledMods": [],
"neededUninstalledMods": [],
"spawns": [
  {
    "id": "example2-rayquaza-1",
    "pokemon": "rayquaza",
    "presets": [
      "natural"
    ],
    "type": "pokemon",
    "context": "grounded",
    "bucket": "ultra-rare",
    "level": "50-70",
    "weight": 0.1,
    "condition": {
      "biomes": [
        "example:skylands_autumn",
        "example:skylands_spring",
        "example:skylands_summer",
        "example:skylands_winter",
        "#example:is_jungle",
        "#minecraft:is_jungle"
      ],
      "key_item": "jade_orb"
    }
  },
  {
    "id": "example2-rayquaza-2",
    "pokemon": "rayquaza",
    "presets": [
      "natural"
    ],
    "type": "pokemon",
    "context": "grounded",
    "bucket": "ultra-rare",
    "level": "50-70",
    "weight": 0.1,
    "condition": {
      "biomes": [
        "#example:is_sky",
        "#example:is_highlands",
        "minecraft:end_highlands",
        "#minecraft:is_end",
        "#example:is_end",
        "#example:is_jungle",
        "#minecraft:is_jungle"
      ],
      "key_item": "jade_orb"
    }
  },
  {
    "id": "rayquaza-3",
    "pokemon": "rayquaza",
    "presets": [
      "natural",
      "wild"
    ],
    "type": "pokemon",
    "context": "grounded",
    "bucket": "ultra-rare",
    "level": "70",
    "weight": 0.01,
    "condition": {
      "biomes": [
        "minecraft:stony_peaks"
      ]
    }
  }
]

}

Step 3: Replace the Original File

Delete the original spawn configuration file from Example Datapack 1, as its contents are now included in the combined file.

Place the combined configuration file into the desired directory:

ExampleDatapack2\data\cobblemon\spawn_pool_world\rayquaza.json

Your combined spawn configuration is now complete, ensuring no spawns are overwritten.