Hey,
Last update introduced a breaking change in the way blocks are handled in Oraxen (a single block mechanic in mechanics.yml). Unfortunately there was a bug in the config migration which could cause blocks to not render properly using older configurations.
This update fixes it, thanks to Jan for his reactivity![]()
Have fun.
Thomas
Hi everyone,
This update brings multi-character glyphs, multi-hitbox/seat/light furniture, several new commands and a long list of fixes across pack generation, furniture, glyphs and backpacks. Docs updated at https://docs.oraxen.com/
Features:
Fixes:
- Multi-character glyphs end-to-end, with hover/copy on glyph tags and automatic chars: → char: migration
- Multiple furniture hitboxes via the new hitboxes list, each rotated and tracked as its own Interaction entity
- Multiple furniture seats with rotation-aware placement and nearest-seat selection
- Multiple furniture lights via the new lights list
- Configurable backpack visibility while swimming and gliding
- Case-insensitive config sections and Material values across all parsers
- prevent_renaming option on misc items to block anvil renames while allowing repair and enchant
- Pack.generation.disable_mcmeta_generation setting to fully own pack.mcmeta yourself
- CustomArmor.auto_select_type toggle
- Imported pack.mcmeta overlay entries are now merged into Oraxen's pack
- New /oraxen remove-branding and /oraxen remove-defaults commands with confirmation
- Typed reload feedback: Successfully reloaded <type>.
A big thanks to Jan for his impressive amount of careful effort. If you hit any issue, please let me know.
- Fixed the LinkageError crash on /oraxen inventory and title rendering, by switching to JSON-based PacketEvents wrappers
- Fixed backpack detachment when another player mounts the owner
- Fixed custom block hardness desync that left blocks invisible after breaking
- Fixed staged furniture plant growth and bonemeal handling
- Fixed ItemBuilder.build() leaking a shared mutable ItemStack for unstackable items
- Fixed soulbound duplication with keepInventory-style death plugins
- Fixed glyph shadow colors from MiniMessage tags and appearance.shadow_color
- Fixed /oraxen recipes show all pagination arrows showing a stack count
- Fixed datapack output path on Paper 26.1+
- Default text-effects encoding switched from deprecated alpha_lsb to effect_font
- Language-file migration for the new <reloaded> placeholder
- Anvil prevent_renaming no longer blocks repair/enchant on named items
- Whitespace-tolerant furniture parsers, confirmation prompts on destructive commands, dedup of pack.mcmeta overlay merges, gated backpack mount-packet storm, and tightened OS.java macOS parsing
Best,
Thomas
Hi everyone,
This update adds a first-run introduction guide, ExecutableItems support, and improves pack generation and overall stability.
Features:
Fixes:
- First-run introduction guide (console + OP, multi-language) from Jan
- ExecutableItems support for noteblock blocks (via SCore) from a new contributor: qvazzar
Thanks again Jan for the huge work here.
- Multi-version pack generation & shader overlays (1.21.4+), Jan
- Text shader handling for legacy/modern clients
- MiniMessage wrapping issues
- Glyph parsing & JSON handling (perf + stability)
- Furniture barrier cleanup optimization
- Introduction guide state & persistence
- Various shader / fallback / code quality fixes
Enjoy,
Thomas
Hi everyone,
This update brings Minecraft 26.1.x support, new furniture text displays, and several reliability improvements across resource pack generation and dispatch. The docs have been updated at https://docs.oraxen.com/
Features:
Fixes:
- Minecraft 26.1.x support (Jan)
- Packet-based furniture text displays with PlaceholderAPI refresh and display options
- Multi-version shader overlays for modern client compatibility (Jan)
- Optional resource pack obfuscation
- Updated Hopper to 1.4.2
Big thanks to Jan for the compatibility work and pack fixes. If you notice any bug, please let me know.
- Fixed multiple resource pack generation and dispatch issues, including shader overlays, ViaVersion handling, pack metadata, invalid URLs, timeout fallback, and 26.x client routing.
- Fixed several furniture text lifecycle issues around reloads, rotation, duplicate spawns, disconnects, and packet metadata.
- Fixed sapling config/water checks, backpack cosmetics on 26.1.x, consumable parsing, custom item data copying, Gradle 9 compatibility, and pack obfuscation edge cases.
Enjoy,
Thomas
Hi everyone,
This is one of the biggest updates in a while. It merges 12 PRs, adds several new features, and fixes 17 bugs across pack dispatch, item handling, and custom blocks. The docs have been updated at https://docs.oraxen.com/
Features:
Fixes:
- Stackable StringBlocks: right-click to stack blocks through multiple visual levels
- Async furniture handling to reduce main thread overhead
- Pre-join resource pack dispatch for Paper 1.21.7+ with automatic on-join fallback (Jan)
- Armor stand furniture support restored alongside display entities (Jan)
- Custom elytra mechanic with example config (Jan)
- Async resource pack generation (px86)
- Modern DataComponent-based attribute modifiers for 1.20.5+
Big thanks to Jan and px86 for their contributions, they did a great job! If you notice any bug, please let me know.
- Fixed legacy attribute modifiers being silently lost on Paper 1.21.2+
- Fixed default config silently rewriting itself on non-Paper servers
- Fixed StringBlock interactions bypassing protection plugins like WorldGuard
- Fixed sign glyph formatting breaking on placeholders like
(Jan)
- Fixed duplicate text when using MiniMessage effect tags (Jan)
- Fixed item parsing crash on pre-1.20.5 servers
- Fixed memory leak in pack receiver for players disconnecting during configuration
- Fixed HUD permission checks and spectator mode handling (Jan)
- Fixed inventory filtering crash on missing OraxenMeta (Jan)
- Fixed overlay asset directory merging in resource packs (Jan)
- Removed leaked version detection code (Jan)
- Various other fixes to dispatch logic and test alignment
Enjoy, Thomas
Hi everyone,
This update brings a few new features and improvements to block breaking and storage handling.
Features:
- Shader import option to strip core shaders from external packs
- New attribute-based block breaking system (replaces mining fatigue)
Changes:
- Cleaner and more maintainable handling of breaking and storage logic
Fixes:
- Fixed storage dupe issue
- Improved null handling in furniture drops and loot
Once again, big thanks to Jan for the contributions and improvements.
I hope you enjoy it,
Thomas
Hi everyone,
This update improves reliability around custom blocks, furniture handling, and some internal mechanics systems. It also refactors the code to make it more maintainable.
Big thanks to Jan and px86 for their contributions.
Changes:
- Simplified custom block and furniture removal flows, with cleaner handling for drops, storage cleanup, and light updates
- Mechanics reload now properly re-registers listeners from the updated mechanics.yml state and preserves custom factories
- Skinnable items now use item_model on 1.21.4+ (vs custom model data before)
- Updated ProtectionLib to v1.8.1 (to support NoBuildPlus)
Fixes
- Fixed orphan furniture cleanup when item configs are removed
- Fixed several memory leak and performance issues
- Moved verbose ShapedBlock and HUD logs behind debug mode
- Fixedlog messages on compiled builds
- Fixed white text shadow rendering
- Fixed spear and trident item model generation
As always, please report if you notice anything unusual after updating.
Hope you enjoy this version!
Best,
Thomas
Hi everyone,
This update is focused on resourcepack/version handling (introduced in previous build) and storage reliability:
- Multi-version resourcepack support (a few small fixes)
- Better support for generic item components (Components, including repairable)
- New storage API access for entities/blocks (without opening GUI)
It also fixes:
- A furniture storage dupe with multiple viewers (Thanks to Jan)
- Incorrect pack format/protocol mappings for newer 1.21.x clients
- Reload behavior for pack prompt/mandatory settings
- Shulker storage reads prioritization from entity PDC
Please report if you find anything odd after updating, I hope you like it!
Best,
Thomas
Hey everyone,
This update of Oraxen includes a big refactor of the Resourcepack generation. This will make it much easier in the future to support multiple versions. Specifically this will allow servers running ViaVersion/ProtocolSupport to generate multiple versions of the resourcepack and send the correct one per user. I tested it extensively but given the size of the refactor it is possible that it contains bugs. If you prioritize stability, I encourage you to skip this update or wait a few days to give me the time to fix potential bugs that will be reported by the early adopters.
This also contains a NPE fix from Jan for the /oraxen admin furniture place command.
Enjoy the weekend,
Thomas
Hi everyone,
This update adds support for GUI-only models & includes many small bugfixes and improves bungee compatiblity with resourcepacks. I want to give special thanks to Jan who really did a great job on this one. Congrats to @likhithaindukuri for her first contribution.
Fun fact: a few members reached out for help after using Claude Code to configure Oraxen. I think it is a good idea, let's see how it goes. As an experiment feel free to share https://docs.oraxen.com/ with your ai, I modified the documentation so it adapts to them (it should be easier to browse and save you some tokens).
Best,
Thomas