
Pokebuilder for Cobblemon
This project is a custom plugin for cobblemon that let the players use a special pokebuilder using the Impactor plugin currency.
Оцените первым
396
4
Список изменений
[1.3.3] — 2026-04-16
Fixed
PCSelectGuicrashed every time the player tried to open it withNullPointerException: Cannot invoke "String.isEmpty()" because "$$0" is nullfrom insideText.literal(null). Cobblemon'sPCBox.getName()returnsnullfor boxes the player has never explicitly renamed (which is every box on a fresh PC). I was passing that directly toItemBuilder.lore()which forwards toText.literal(). The 1.3.2 diagnostic logging caught it and identified the call site (PCSelectGui.renderBoxline 110). Fixed by defaulting to "Box N" when the name is null/blank, and by hardeningItemBuilder.name/loreto no-op or coerce on null inputs so this whole class of bug can't crash a GUI again. Caught in 1.3.2 thanks to cora's follow-up testing.
[1.3.2] — 2026-04-16
Fixed
- Clicking the "Switch to PC" toggle did nothing visible. Root cause
was a registry race:
BaseGui.open()registered the new GUI inGuiManagerbefore callingplayer.openHandledScreen(), butopenHandledScreentriggers the OLD handler'sonClosedcallback which callsBaseGui.onClose→GuiManager.unregister(playerId). Because the registry is keyed by player UUID (not by GUI identity), the unregister yanked the freshly-registered new GUI's entry. Fixed by opening the screen first and registering the new GUI after — the old GUI's onClose then unregisters cleanly without colliding with the new entry. - PC browser layout had slot collisions. The 30 box slots packed
into a 5×6 grid overlapped the bottom-bar buttons (
BOX_INFO_SLOT47,PARTY_TOGGLE_SLOT49,NEXT_SLOT51) so the last 2 box Pokémon were unreachable and clicking those buttons sometimes triggered a Pokémon-edit instead. New layout puts box slots in a 5×6 grid anchored at row 0 col 1 (slots 1–6, 10–15, 19–24, 28–33, 37–42), reserving row 5 entirely for the bottom bar. Cols 0 / 7 / 8 remain decorative glass walls.
Added
- Diagnostic logging on every PC-open path.
PCSelectGui.open,CobblemonBridge.getPC, and thePartySelectGuiPC-toggle handler now log every failure with the exception type, player name, and stack trace. If the toggle still fails to open the PC for anyone, the next attempt will leave a clear trail inlogs/latest.log— including a chat message to the player naming the failure class. BaseGui.open()now wrapsbuild()andonOpen()in try/catch. A misbehaving feature that throws during render no longer leaves the player with a half-attached screen; the failure is logged with the GUI class name and the player keeps their previous screen.
Файлы
pokebuilder-1.3.3.jar(776.50 KiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
1.3.3
Загрузчики
Fabric
Версии игры
1.21.1
Загрузок
14
Дата публикации
16.04.2026
