
Cobblemon KubeJS
Cobblemon KubeJS exposes Cobblemon data and events to KubeJS scripts.
Screenshots

About this Mod
Cobblemon KubeJS Bridge
Bring Cobblemon data, events, storage queries, administrative utilities, and
client-side Pokedex displays into KubeJS.
Cobblemon KubeJS Bridge lets modpack developers build custom progression,
quests, rewards, commands, interfaces, battle systems, and server mechanics
using JavaScript.
Features
Cobblemon events
Listen to server-side events such as:
- Pokedex progress changes
- Pokemon scans and captures
- Pokemon sent, recalled, fainted, gained, healed, or released
- Experience gain and level-up
- Evolution completion
- Battle victory and defeat
- Battle escape and forfeit
CobblemonEvents.pokemonCaptured(event => {
event.player.tell(
`You caught ${event.species} at level ${event.level}!`
)
})
Pokedex API
Query a player's Pokedex progress:
- Check whether a species was seen or caught
- Count total seen or caught species
- Count progress by elemental type
- Read individual species progress
var caughtFire = CobblemonJS.pokedex.countCaughtByType(
player,
'fire'
)
Species API
- Validate species IDs
- List implemented species
- Read species types
- Validate elemental types
- Find all species of a type
Both short and namespaced IDs are supported:
CobblemonJS.species.exists('charizard')
CobblemonJS.species.exists('cobblemon:charizard')
Party and PC API
Read safe Pokemon snapshots from a player's party and PC:
- Search Pokemon by UUID
- Count Pokemon by species or type
- Keep party, PC, box, and slot information
- Read level, HP, nature, ability, moves, IVs, EVs, status, held item, and more
var party = CobblemonJS.pokemon.getParty(player)
var pokemon = CobblemonJS.pokemon.getByUuid(player, pokemonUuid)
Administrative utilities
Trusted server scripts can:
- Give a Pokemon to a player
- Heal a player's party
- Spawn a Pokemon near a player
- Spawn a Pokemon at explicit coordinates without assigning an owner
CobblemonJS.admin.givePokemon(
player,
'charizard level=50 shiny=true'
)
CobblemonJS.admin.spawnPokemon(
player.serverLevel,
'rayquaza level=70',
100,
80,
-50
)
Client-side Pokedex synchronization
The server synchronizes a read-only Pokedex cache to the owning client. Client
scripts can use it for live tooltips and other interfaces without requesting
data from the server every frame.
CobblemonClientJS.pokedex.countSeen()
CobblemonClientJS.pokedex.countCaught()
CobblemonClientJS.pokedex.countCaughtByType('fire')
The included examples contain a tested dynamic spyglass tooltip.
Requirements
- Cobblemon
- KubeJS
- Rhino, as required by KubeJS
- Java 21
Install the bridge on both the client and server when using the synchronized
client Pokedex API.
Loader support
NeoForge is currently supported.
Fabric support is not available yet. The Fabric module is only a compile-time
stub and does not expose events, APIs, or client synchronization.
Documentation and examples
The project includes:
- Complete API documentation
- Every function's parameters and return values
- Full event field reference
- Pokemon and move data model reference
- Server and client script examples
- Troubleshooting instructions
Links
Notes
- Pokemon snapshots returned to scripts are read-only.
- Administrative methods mutate gameplay state and should only be exposed
through trusted scripts with appropriate permission checks. - Pokedex counts represent unique implemented species, not duplicate captures.
- Unknown species, types, malformed UUIDs, and invalid spawn properties produce
descriptive script errors. - Replacing the mod jar or networking code requires a full restart.
Available Versions
How to Install Cobblemon KubeJS on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set neoforge Loader
In the panel under "Egg", select the neoforge loader and matching Minecraft version (1.21.1).
Install Mod
Open the mod browser in the dashboard and search for "Cobblemon KubeJS". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.21.1
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Cobblemon KubeJS server crashes on startup – what to do?
Most common cause: wrong neoforge version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.21.1). You can switch loaders with one click in the panel.
Is Cobblemon KubeJS compatible with neoforge?
Cobblemon KubeJS officially supports neoforge for Minecraft 1.21.1. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Cobblemon KubeJS – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Cobblemon KubeJS consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Cobblemon KubeJS with just one click on your server.