
Cobbleboost
CobbleBoost is a client-side Fabric mod for Minecraft 1.21.1 that optimizes performance when playing with Cobblemon 1.7.
- Загрузки
- 2K
- Подписчики
- 3
- Обновлён
- 31 марта 2026 г.
- Лицензия
- MIT
Опубликован 4 марта 2026 г.
CobbleBoost
CobbleBoost is a client-side Fabric mod for Minecraft 1.21.1 that optimizes performance when playing with Cobblemon 1.7. It targets the main sources of lag
caused by Cobblemon's Pokemon entities through six features:
- Pokemon Render Distance — Culls (skips rendering) Pokemon beyond a configurable distance, reducing GPU load in areas with many spawned Pokemon.
- LOD System (Level of Detail) — Renders distant Pokemon with simplified models, so you get visual presence without the full rendering cost.
- Animation Throttling — Reduces the update frequency of Pokemon animations for entities that are far away or not in direct view, saving CPU cycles.
- Particle Limiter — Caps or reduces particles from Cobblemon's particle storm effects, which can be heavy in dense areas.
- Model Pre-caching — Preloads Pokemon models during resource loading so they don't cause stutter when a Pokemon first appears in-game.
- Config GUI — Provides a settings screen (via Cloth Config + Mod Menu) and a /cobbleboost command to tweak all the above features in-game.
All optimizations are client-side only and use Fabric Mixins to hook into Cobblemon's rendering and animation code.
Центр версий
6 версийЧенджлог
1.1.2Релиз1.21.1 · 31 марта 2026 г.
When a Pokemon is beyond the throttle distance (default 24 blocks), the old code allowed an animation frame through every 4 ticks (~5fps). This meant idle
animations (breathing, tail wagging, etc.) kept advancing but at a very low framerate, creating visible jerky/stuttery movement instead of smooth or frozen
animation.
The fix removes the periodic refresh entirely. Now distant Pokemon are fully frozen in their last cached pose. The mixin already handles the edge case where a Pokemon spawns beyond the throttle distance with no cache — it lets one frame through to populate it, then freezes. When you walk back within range, animations resume normally.
1.1.1Релиз1.21.1 · 28 марта 2026 г.
Fix bug:
● The reflection was looking for relevantPartsByName directly on PosableEntityModel's superclass, but in Cobblemon 1.7.x that field was moved to a separate
PosableModel object, accessed via a posableModel field on the entity model. So the old single-step lookup always failed with NoSuchFieldException.
The fix does a two-step reflection: first it gets the posableModel field from the entity model instance, then it reads relevantPartsByName from that composed
object. It also walks the full class hierarchy instead of only checking one superclass level, and keeps a fallback for older Cobblemon versions where the field
lived directly on the model.
1.1.0Релиз1.21.1 · 20 марта 2026 г.
CobbleBoost v1.1.0 — Changelog
Added: Packet Throttler (Feature #7)
Client-side packet rate limiter that prevents the "Sending too many packets" server kick.
How it works:
- Intercepts outgoing packets via ConnectionMixin → Connection.send(Packet)
- Counts serverbound game-phase packets sent per tick
- When the per-tick budget is exceeded, excess packets are queued and flushed in subsequent ticks
- Movement packets are coalesced — only the latest position update is kept, sent first every tick
- Never throttled: keep-alive, pong, login, configuration, and common packets (different package, excluded by design)
- Queue capped at 200 to prevent memory buildup; oldest packets dropped if overflow
1.0.1Релиз1.21.1 · 17 марта 2026 г.
The Fix Explained
Problem: The ParticleStormMixin was injecting into method = "tick" with remap = false. At runtime, Cobblemon's ParticleStorm class extends Minecraft's Particle
and overrides its tick() method. In a Fabric environment, all Minecraft method names are replaced with intermediary names (e.g., tick → method_3070). So the
bytecode literally has no method called "tick" — the mixin couldn't find its target and crashed.
Fix: Changed the method target from "tick" to "method_3070" (the intermediary name for Particle.tick()). Since we're using the intermediary name directly,
remap = false stays — no remapping needed.
Why remap = true didn't work either: Our stub ParticleStorm.java is a bare class that doesn't extend Particle, so the Mixin annotation processor at compile
time couldn't resolve the inheritance chain to find the mapping for tick. Using the intermediary name directly bypasses this entirely.
1.0.0Релиз1.21.1 · 13 марта 2026 г.
fix bug
1.0.0Релиз1.21.1 · 4 марта 2026 г.
CobbleBoost
CobbleBoost is a client-side Fabric mod for Minecraft 1.21.1 that optimizes performance when playing with Cobblemon 1.7. It targets the main sources of lag
caused by Cobblemon's Pokemon entities through six features:
- Pokemon Render Distance — Culls (skips rendering) Pokemon beyond a configurable distance, reducing GPU load in areas with many spawned Pokemon.
- LOD System (Level of Detail) — Renders distant Pokemon with simplified models, so you get visual presence without the full rendering cost.
- Animation Throttling — Reduces the update frequency of Pokemon animations for entities that are far away or not in direct view, saving CPU cycles.
- Particle Limiter — Caps or reduces particles from Cobblemon's particle storm effects, which can be heavy in dense areas.
- Model Pre-caching — Preloads Pokemon models during resource loading so they don't cause stutter when a Pokemon first appears in-game.
- Config GUI — Provides a settings screen (via Cloth Config + Mod Menu) and a /cobbleboost command to tweak all the above features in-game.
All optimizations are client-side only and use Fabric Mixins to hook into Cobblemon's rendering and animation code.
Комментарии
Загружаем…