The Cobblemon Myths and Legends Addon for Cobblemon Mod introduces a dynamic new feature where key items directly influence spawning conditions. These items, when held by a player, fulfill specific conditions, causing certain Pokémon to spawn exclusively around that player (every condition specific to the Pokémon must be fulfilled in order for it to spawn). This mechanic also applies to multiple players independently, each holding the necessary items.
Key items can be found in selected loot chests by default, with their rarity and specific loot tables configurable in the settings. This allows for a tailored gameplay experience, where players can adjust how and where these items appear in the game world.
Important Notice
Reminder: For versions higher than 1.3, to use the mechanics added by the mod, you MUST use the Myths and Legends datapack or create one yourself. Download the official Myths and Legends datapack from:
A public repository is also available for anyone who wants to tinker with the datapack and "compile" their own version: GitHub Repository.
Wiki
- A wiki page containing all information on the currently implemented spawns from the datapack: Wiki
Creating Custom Spawns
Interested in crafting your own unique Pokémon spawn conditions? Follow this detailed guide to learn how you can add custom spawns to your game: Creating Custom Spawns Tutorial. This guide provides step-by-step instructions, making it easy for you to bring your creative ideas to life in the Cobblemon world.
Additional Conditions
The mod introduces the following additional conditions:
Key Item Conditions
key_item
: Checks for a specific key item in the player's inventory.- Example usage:
"key_item": "tidal_bell"
.
- Example usage:
Custom Item Conditions
-
custom_key_item
: Checks for a specific amount of a custom key item in the player's inventory and consumes it if allowed.- Example usage:
"custom_key_item": { "id": "minecraft:emerald", "count": 10, "consume": true }
- Example usage:
-
custom_secondary_item
: Checks for a specific amount of a custom secondary item in the player's inventory and consumes it if allowed.-
Example usage:
"custom_secondary_item": { "id": "minecraft:emerald", "count": 10, "consume": true }
-
The
consume
flag works regardless of the config settings, ensuring the item is consumed upon condition check iftrue
.
-
Item Conditions
-
thunder_stone_requirement
: Checks for the required amount ofthunder_stone
in the player's inventory. Example usage:"thunder_stone_requirement": "3"
. -
water_stone_requirement
: Checks for the required amount ofwater_stone
in the player's inventory. Example usage:"water_stone_requirement": "2"
. -
ice_stone_requirement
: Checks for the required amount ofice_stone
in the player's inventory. Example usage:"ice_stone_requirement": "4"
. -
fire_stone_requirement
: Checks for the required amount offire_stone
in the player's inventory. Example usage:"fire_stone_requirement": "5"
. -
dragon_scale_requirement
: Checks for the required amount ofdragon_scale
in the player's inventory. Example usage:"dragon_scale_requirement": "2"
. -
electirizer_requirement
: Checks for the required amount ofelectirizer
in the player's inventory. Example usage:"electirizer_requirement": "1"
. -
magmarizer_requirement
: Checks for the required amount ofmagmarizer
in the player's inventory. Example usage:"magmarizer_requirement": "1"
. -
metal_coat_requirement
: Checks for the required amount ofmetal_coat
in the player's inventory. Example usage:"metal_coat_requirement": "3"
. -
protector_requirement
: Checks for the required amount ofprotector
in the player's inventory. Example usage:"protector_requirement": "2"
. -
leaf_stone_requirement
: Checks for the required amount ofleaf_stone
in the player's inventory. Example usage:"leaf_stone_requirement": "4"
. -
moon_stone_requirement
: Checks for the required amount ofmoon_stone
in the player's inventory. Example usage:"moon_stone_requirement": "3"
. -
sun_stone_requirement
: Checks for the required amount ofsun_stone
in the player's inventory. Example usage:"sun_stone_requirement": "2"
. -
shiny_stone_requirement
: Checks for the required amount ofshiny_stone
in the player's inventory. Example usage:"shiny_stone_requirement": "2"
. -
dusk_stone_requirement
: Checks for the required amount ofdusk_stone
in the player's inventory. Example usage:"dusk_stone_requirement": "1"
. -
dawn_stone_requirement
: Checks for the required amount ofdawn_stone
in the player's inventory. Example usage:"dawn_stone_requirement": "1"
. -
never_melt_ice_requirement
: Checks for the required amount ofnever_melt_ice
in the player's inventory. Example usage:"never_melt_ice_requirement": "3"
.
Pokémon Team Conditions
-
arceus_in_team_requirement
: Checks if Arceus is present in the player's team. Example usage:"arceus_in_team_requirement": "true"
. -
articuno_in_team_requirement
: Checks if Articuno is present in the player's team. Example usage:"articuno_in_team_requirement": "true"
. -
darkrai_in_team_requirement
: Checks if Darkrai is present in the player's team. Example usage:"darkrai_in_team_requirement": "true"
. -
deoxys_in_team_requirement
: Checks if Deoxys is present in the player's team. Example usage:"deoxys_in_team_requirement": "true"
. -
dialga_in_team_requirement
: Checks if Dialga is present in the player's team. Example usage:"dialga_in_team_requirement": "true"
. -
entei_in_team_requirement
: Checks if Entei is present in the player's team. Example usage:"entei_in_team_requirement": "true"
. -
giratina_in_team_requirement
: Checks if Giratina is present in the player's team. Example usage:"giratina_in_team_requirement": "true"
. -
groudon_in_team_requirement
: Checks if Groudon is present in the player's team. Example usage:"groudon_in_team_requirement": "true"
. -
hooh_in_team_requirement
: Checks if Ho-Oh is present in the player's team. Example usage:"hooh_in_team_requirement": "true"
. -
kyogre_in_team_requirement
: Checks if Kyogre is present in the player's team. Example usage:"kyogre_in_team_requirement": "true"
. -
kyurem_in_team_requirement
: Checks if Kyurem is present in the player's team. Example usage:"kyurem_in_team_requirement": "true"
. -
latias_in_team_requirement
: Checks if Latias is present in the player's team. Example usage:"latias_in_team_requirement": "true"
. -
latios_in_team_requirement
: Checks if Latios is present in the player's team. Example usage:"latios_in_team_requirement": "true"
. -
lugia_in_team_requirement
: Checks if Lugia is present in the player's team. Example usage:"lugia_in_team_requirement": "true"
. -
mew_in_team_requirement
: Checks if Mew is present in the player's team. Example usage:"mew_in_team_requirement": "true"
. -
moltres_in_team_requirement
: Checks if Moltres is present in the player's team. Example usage:"moltres_in_team_requirement": "true"
. -
palkia_in_team_requirement
: Checks if Palkia is present in the player's team. Example usage:"palkia_in_team_requirement": "true"
. -
raikou_in_team_requirement
: Checks if Raikou is present in the player's team. Example usage:"raikou_in_team_requirement": "true"
. -
rayquaza_in_team_requirement
: Checks if Rayquaza is present in the player's team. Example usage:"rayquaza_in_team_requirement": "true"
. -
suicune_in_team_requirement
: Checks if Suicune is present in the player's team. Example usage: `"suic
une_in_team_requirement": "true"`.
-
zamazenta_in_team_requirement
: Checks if Zamazenta is present in the player's team. Example usage:"zamazenta_in_team_requirement": "true"
. -
zapdos_in_team_requirement
: Checks if Zapdos is present in the player's team. Example usage:"zapdos_in_team_requirement": "true"
.
Custom Pokémon Species in Team Conditions
custom_pokemon_in_team
: Checks for a specific number of a certain Pokémon species in the player's team.- Example usage:
"custom_pokemon_in_team": { "species": "pikachu", "count": 2 }
- Example usage:
Example Spawn File with Key Item Condition
{
"enabled": true,
"neededInstalledMods": [],
"neededUninstalledMods": [],
"spawns": [
{
"id": "articuno-1",
"pokemon": "articuno",
"presets": [
"natural"
],
"type": "pokemon",
"context": "grounded",
"bucket": "ultra-rare",
"level": "50-60",
"weight": 0.1,
"condition": {
"canSeeSky": true,
"biomes": [ "minecraft:snowy_plains" ],
"key_item": "tidal_bell",
"ice_stone_requirement": "3"
}
}
]
}
List of Items in the Mod
- adamant_orb
- aurora_ticket
- azure_flute
- blue_orb
- bonus_disk
- clear_bell
- cocoon_of_destruction
- dark_stone
- dna_splicer
- dr_fujis_diary
- eon_flute
- eon_ticket
- gs_ball
- griseous_orb
- jade_orb
- liberty_pass
- light_stone
- lustrous_orb
- magma_stone
- member_card
- moon_flute
- mystery_box
- old_sea_map
- oaks_letter
- rainbow_wing
- red_chain
- red_orb
- reveal_glass
- rusted_shield
- rusted_sword
- sapling_of_life
- scarlet_book
- silver_wing
- sun_flute
- teal_mask
- tidal_bell
- violet_book
- zygarde_cell
- zygarde_core
- zygarde_cube
Default Configuration File
The config.toml
file, located under config/MythsAndLegends
, contains the following default settings:
-
inventory_check_interval
(checkInventoryInterval
in older versions) = 3600- Interval in Minecraft ticks for checking player inventories. Possible values: any integer. Default: 3600 (2 minutes and 30 seconds).
-
consume_items_on_successful_spawn
(consumeConditionalItemOnSuccessfulSpawn
in older versions) = false- Determines if items are consumed on successful spawns. Possible values: true, false. Default: false.
-
ignore_key_items
(IfKeyItemAndItemRequirementIsSetConsumeOnlyItems
in older versions) = true- If true, and both a key item and item condition are set, only items are consumed. Possible values: true, false. Default: true.
-
inventory_check_item_list
(New in this version, no old version equivalent)- List of items to be checked in the inventory at each interval.
- Default items in the list:
"minecraft:diamond"
"minecraft:emerald"
"minecraft:nether_star"
"cobblemon:dragon_scale"
"cobblemon:electirizer"
"cobblemon:magmarizer"
"cobblemon:metal_coat"
"cobblemon:protector"
"cobblemon:leaf_stone"
"cobblemon:moon_stone"
"cobblemon:sun_stone"
"cobblemon:shiny_stone"
"cobblemon:dusk_stone"
"cobblemon:dawn_stone"
"cobblemon:ice_stone"
"cobblemon:thunder_stone"
"cobblemon:fire_stone"
"cobblemon:water_stone"
"cobblemon:never_melt_ice"
- This configuration allows for specifying a list of items that the game will check for in player inventories at each specified interval.
-
isBroadcastEnabled
= false- Determines if broadcasting features are enabled. This includes all types of notifications specified in 'broadcast_settings'. Enables or disables the entire broadcasting system. Possible values: true, false. Default: false
-
broadcast_settings
:BroadcastToAll
- Description: When true, messages are broadcasted to all players.
- Possible Values: true, false
- Default: true
DisplayName
- Description: If enabled, displays the name of the Pokémon in the broadcast message.
- Possible Values: true, false
- Default: true
Legendarys
- Description: If enabled, broadcasts a message when a legendary Pokémon spawns.
- Possible Values: true, false
- Default: true
Mythicals
- Description: If enabled, broadcasts a message when a mythical Pokémon spawns.
- Possible Values: true, false
- Default: true
UltraBeasts
- Description: If enabled, broadcasts a message when an Ultra Beast spawns.
- Possible Values: true, false
- Default: false
Location
- Description: If true, includes the location in broadcast messages.
- Possible Values: true, false
- Default: true
Shiny
- Description: Enables broadcasts about Shiny Status of the Pokémon.
- Possible Values: true, false
- Default: false
Level
- Description: When enabled, the level of Pokémon is included in the broadcast.
- Possible Values: true, false
- Default: true
-
inventory_check_shulker_boxes
= true- Determines if the contents of shulker boxes should be scanned for items by the inventory check. Possible values: true, false. Default: true.
-
inventory_check_bundles
= true- Determines if the contents of bundles should be scanned for items by the inventory check. Possible values: true, false. Default: true.
-
enable_force_spawning
= false- Determines if right-clicking key items forcefully spawns Pokémon that require the clicked key item as a spawning condition.
- Possible values:
true
,false
- Default:
false
-
force_spawning_spawn_pool
= "ultra-rare"- Determines in which Spawn Pool the force spawning module should check. Possible values: common, uncommon, rare, and ultra-rare. Default: ultra-rare
- Possible values:
"common"
,"uncommon"
,"rare"
,"ultra-rare"
- Default:
"ultra-rare"
-
force_spawn_item_cooldown
= 20- Sets the cooldown period in seconds after a key item is used for force spawning before it can be used again.
- Possible values: any integer >= 1
- Default: 20
-
force_spawn_check_width
= 100- Defines the width around the player within which the game checks for possible Pokémon spawns when force spawning.
- :warning: Increasing this value may cause lag but is more likely to find a spawn. Please adjust carefully.
- Possible values: any integer >= 1
- Default: 100
-
force_spawn_check_height
= 50- Specifies the height around the player for checking potential Pokémon spawns when force spawning, similar to
force_spawn_check_width
. - Possible values: any integer >= 1
- Default: 50
- Specifies the height around the player for checking potential Pokémon spawns when force spawning, similar to
-
Note: Inventory checks happen once for the player who is using the item.
Commands Documentation
The addon introduces a range of commands for administrative control and enhanced player interaction, each available in English and German:
Note: If LuckPerms isn't installed, all commands require OP level 2.
General Permissions
- Permission Required:
mythsandlegends.access
- Function: Grants access to the "mythsandlegends" command group.
1. /mythsandlegends listitems [player_name]
- Permission Required:
mythsandlegends.listitems
- Function: Lists key items in a specified player's inventory, including quantities of various types of items.
- Usage:
/mythsandlegends listitems <player_name>
- Output:
- English: "Items in the inventory of [player_name]: [items list]"
- German: "Items im Inventar von [player_name]: [items list]"
- Error:
- English: "Player not found."
- German: "Spieler nicht gefunden."
2. /mythsandlegends checkinventory [player_name]
- Permission Required:
mythsandlegends.checkinventory
- Function: Performs a manual inventory check for a specified player.
- Usage:
/mythsandlegends checkinventory <player_name>
- Output:
- English: "Inventory of player [player_name
] has been checked."
- German: "Inventar des Spielers [player_name] wurde überprüft."
- Error:
- English: "Player not found."
- German: "Spieler nicht gefunden."
3. /mythsandlegends listpokemon [player_name]
- Permission Required:
mythsandlegends.listpokemon
- Function: Lists all Pokémon in a specified player's party.
- Usage:
/mythsandlegends listpokemon <player_name>
- Output:
- English: "[player_name]'s Pokémon: [Pokémon list]"
- German: "Pokémon von [player_name]: [Pokémon list]"
- Error:
- English: "Player not found."
- German: "Spieler nicht gefunden."
Cobblemon Myths and Legends Addon Language File Modification Guide
This guide is aimed at resource pack creators or users who want to customize the language files for the Cobblemon Myths and Legends Addon
. By editing these files, you can change in-game text messages for either the German (de_de.json
) or English (en_us.json
) languages.
Locating and Editing Language Files
Language files are located in the resource pack directory under resources/assets/cobblemon-mythsandlegends-addon/lang
. Depending on your target language, you may edit either the de_de.json
(for German) or the en_us.json
(for English).
Example Structure for Language Files
{
"command.mythsandlegends.player_not_found": "Player not found.",
"command.mythsandlegends.items_in_inventory": "Items in the inventory of %s: %s"
}
Command Messages
-
command.mythsandlegends.player_not_found
Default Message
: "Player not found."Modification
: Change this message to customize the text for when a player is not found.
-
command.mythsandlegends.items_in_inventory
Default Message
: "Items in the inventory of %s: %s"Modification
: Edit to alter how inventory items are listed. Keep%s
placeholders for player name and items list.
-
command.mythsandlegends.inventory_checked
Default Message
: "Inventory of player %s has been checked."Modification
: Modify this message to change the notification for inventory checks, maintaining%s
for the player's name.
-
command.mythsandlegends.no_pokemon
Default Message
: "%s has no Pokémon in their party."Modification
: Change to customize the message for when a player has no Pokémon, keeping%s
for the player's name.
-
command.mythsandlegends.pokemon_list
Default Message
: "%s's Pokémon: %s"Modification
: Edit this message to adjust the display of a player's Pokémon list, ensuring to keep the%s
placeholders.
Chat Broadcast Messages
-
chat.broadcast.spawn
Default Message
: "A wild %s has spawned!"Modification
: Modify to change the spawn announcement, keeping%s
for the Pokémon's name.
-
chat.broadcast.location
Default Message
: "Location: X=%d, Y=%d, Z=%d"Modification
: Alter this message to customize location information display, maintaining%d
placeholders for coordinates.
-
chat.broadcast.legendary
Default Message
: "It's a Legendary Pokémon!"Modification
: Change this text to modify the Legendary Pokémon announcement.
-
chat.broadcast.mythical
Default Message
: "A Mythical Pokémon appears!"Modification
: Edit to customize the Mythical Pokémon appearance notification.
-
chat.broadcast.ultrabeast
Default Message
: "Warning: An Ultra Beast has been detected!"Modification
: Modify to change the Ultra Beast alert message.
-
chat.broadcast.shiny
Default Message
: "Shiny Pokémon alert!"Modification
: Change to personalize the Shiny Pokémon announcement.
-
chat.broadcast.level
Default Message
: "Level: %s"Modification
: Edit this message to alter how Pokémon levels are displayed, keeping%s
for the level.
After making your changes, save the .lang
file. Ensure it is encoded in UTF-8 to support special characters. Your modifications will now appear in-game, providing a personalized experience for players.
Frequently Asked Questions (FAQ) for Cobblemon and Myths and Legends Addon
Q: What is the Cobblemon Myths and Legends Addon? A: The Cobblemon Myths and Legends Addon adds key items and new spawning conditions for Cobblemon, including pre-made spawns for each key item.
Q: How can I spawn legendaries in Cobblemon?
A: To spawn legendaries in Cobblemon, players must ensure that their inventory contains specific key items and that they are standing in the correct biome for the legendary Pokémon to spawn. The mod automatically scans player inventories every 2 minutes and 30 seconds by default to determine eligibility for legendary spawns. This interval can be configured in the Cobblemon_MythsAndLegends_Addon_Config.toml
file, located under config/MythsAndLegends
, by adjusting the inventory_check_interval
parameter (known as checkInventoryInterval
in older versions) to your desired frequency. The default setting is 3600 Minecraft ticks, equivalent to 2 minutes and 30 seconds. For immediate inventory checks, players can use the /mythsandlegends checkinventory
command. Afterwards, the /checkspawn ultra-rare
command (or the appropriate command for a different spawn bucket, if modified) should be used to initiate the spawn check, ensuring the player is within the correct biome for the legendary Pokémon to appear.
Q: Do all configured Pokémon spawn in the game? A: Yes, every configured Pokémon does spawn, provided that all spawning conditions are met.
Q: What should I do if a spawned Pokémon doesn't have a texture? A: It's noted that the mod doesn't add any models or textures. You might need to check for compatibility with other mods or resource packs that add these elements.
Q: Can I modify spawn conditions for Cobblemon? A: Yes, with the standalone version of the Myths and Legends addon, you can create your own spawn settings. However, this might not work with the "normal" version, and specific items used in spawn conditions must be implemented in the version you're using.
Q: How can I make legendaries spawn more frequently? A: For more frequent legendary spawns, you can edit the spawn conditions, such as placing them in the common spawn bucket with a high weight, using the standalone version.
Q: Is there a way to report issues or suggestions for the addon? A: Yes, @Le0n(on Discord) encourages sharing any issues, ideas, or feedback to improve and evolve the addon. You can share your thoughts and suggestions directly in the conversation or through designated channels here:
Q: Can I use data/resource packs with this mod? A: Yes, data and resource packs like MysticMons can work alongside this mod, potentially adding models for the legendaries/mythical Pokémon.
Q: Where can I find the official guide and spawn pool information? A: The official guide and details on spawn pools are available at the Cobblemon wiki and the modrinth page.
Q: Are there updates planned for the Myths and Legends addon? A: Yes, updates are planned, including new features and compatibility improvements. Specific details will be shared by Le0n when available.