Tags
Creators
Details
1.0.0
Compatibility
Changes
CobbleProfiler
CobbleProfiler is a Fabric mod that profiles the performance impact of https://cobblemon.com Pokemon entities on a Minecraft 1.21.1 server. It has zero
compile-time dependency on Cobblemon — it uses a Mixin on LivingEntity.tick() with a runtime class name check and reflection to extract species data.
What it tracks
- Entity tick time — Measures how long each Pokemon entity takes to tick (in ms), with per-entity breakdown, averages, and max values
- Spawn calculations — Profiles the overhead of Cobblemon's spawn system by timing ServerPlayerEntity.tick() (where Cobblemon injects its PlayerSpawner logic)
- Network packets — Counts S2C packets (position, velocity, animation, attributes, tracker updates) per Pokemon entity per second
- RAM usage — Heuristic-based memory estimation per entity (~7KB base + adjustments for custom names, passengers, moves)
How you interact with it
- F7 — Toggles a HUD overlay in the top-right corner with real-time metrics and a tick time sparkline graph
- F8 — Opens a full-screen GUI with 4 tabs: Overview (summary cards + graph), Entities (top 20 sorted by tick time), Spawning (spawn calc history), Network (packets/sec breakdown + bandwidth estimate)
- /cobbleprofiler — Chat commands: status, report (with OK/WARNING/NOTICE verdict), web on|off, reset
- Web panel (port 8095) — HTTP server with a dashboard and JSON API at /api/metrics and /api/history, using the JDK built-in HttpServer (no external dependencies)
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:Y5LNIJYQ:HkpTLKyN"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Y5LNIJYQ:HkpTLKyN"
}

