Custom Blocks, Items, Furniture, ResourcePack & more
- Folia Support
- PackSquash integration
 * Download from their GitHub
 * More info can be found on docs
- WorldGuard `nexo-furniture-interact` flag to override other flags, defaults to "undefined"
- Optimize ResourcePack generation times, caching & filesizes
- Add LobFile PackServer
 * Requires API-Key from your LobFile account
- Add S3 PackServer type
- Drop Spigot Server Support
- ItemModel not working with Pack-Obfuscation
- Bunch of minor ItemsAdder- & NexoConverter issues
- IA Converter breaking NexoItems on 1.20.4 servers
- CustomArmor issues when not using automatic layer-texture system
- Issues with datapacks enabling & custom armor using TRIMS
- ModelEngine-furniture not breaking when hitting ModelEngine hitbox
- Resourcepack sending when both on_join & pre_join are disabled
- PackValidation not excluding ItemModel files for <1.21.3-servers
- Various PackObfuscation issues
- TrimPattern being reset when updating NexoItem
- Add brewing recipe-builder command
- Disable formatting of displaynames in anvils
- Furniture step-sound in non-solid hitbox
- Placing blocks inside furniture-barriers sometimes
- Warn if texture would lower the mipmap-level on the client
- Custom-Block mining-speed not calculating Attributes from other sources
- Issues saving recipes
- Renamed items losing customname when enchanted in anvil
- Parent-Model Display-properties not inherited when overriding texture
- Entities with WIND_CHARGED exploding custom blocks on death
- ItemsAdder v4 -> Nexo Converter
 * Ensure you follow the guide here: https://docs.nexomc.com/migrate/itemsadder-nexo
 * There might still be some issues & bugs, please report these if you find them
- Improve performance & handling of item-lookups & API
- Add Furniture Shulker-type hitbox
 * Collision-hitbox, like barrier, but with options for length & scale like interaction
 * https://docs.nexomc.com/mechanics/furniture-mechanic#hitboxes
- BrewingStand recipes
- Make ItemFlags hide Tooltips for 1.20.5+ servers
- `group` property for recipes
 * Groups all shared group-id recipes in RecipeBook
- Add `Glyphs.shift_font` setting to specify the font used for shifts
- Custom Blocks not placeable against iron trapdoor whilst sneaking
- CustomBlock dropping at wrong location
- Async entity checks
- Breeze WindCharges breaking custom blocks
- Using TRIMS CustomArmor breaking recipes
- Improve Furniture Barrier-Hitbox performance, flickering and passthrough
- Stone place-sound played twice
- Minor fix to LimitedPlacing-replacability
- Issue with desynced furniture-hitbox
- Entities spawned on furniture taking falldamage
- Placing furniture against trapdoors
- Pasting with WorldEdit removing furniture barrier-hitboxes in given chunks
- Pack Mcmeta not merging properly between packs
- Various issues with ModelEngine Compatibility
- Furniture-offset not correct on slabs when furniture-config has translation defined
- Various issues with Drops
- CustomBlock-sounds not playing correctly when using block.stone/wood.X
- ModelEngine-pack not working for 1.21.4+ servers when Pakc.obfuscation is SIMPLE or FULL
- Generation of player-head models on 1.21.4
- NexoChorusBlockPlaceEvent not being called
- Cancelling regular noteblock events with `reimplement_noteblock_features` enabled
- Placing blocks on prohibited locations while using offhand & sneak
- FurnitureMechanic#isInteractable not handling sneaking + rotation correctly
 * Made furniture not placeable against eachother in certain scenarios
- VersionPatcher not finding certain models on 1.21.4 servers
- ItemUpdater not updating TrimPattern for CustomArmor
[Features]
- Add CHORUSBLOCK-type CustomBlock for transparent blocks & leaves
- Restructure Light-Mechanic LINK
- Add Lights#toggled_item_model, reference new JSON-Model in assets/namespace/models/item/x.json (namespace:x)
- Add `Pack.import.from_url` to import a ResourcePack into Nexo from a URL
- New way to define Custom Armor Layer Textures LINK
 * The old automatic system will still work and is the default if no such section is defined
[Fixes]
- Bunch more issues for 1.21.4 compatibility
- Issue with CustomBlocks marked as "falling" for third-party plugins
- Issues with Furniture & WorldEdit Copy/Pasting & Selecting
- Bad obfuscation of vanilla-override resourcepack-models
- Formatting glyph-tags in Entity Nametags
- Shifts not using custom-font
- Improve waterlogging of furniture
- Best-tool AXE defaulting to PICKAXE
- Issue reading ModelEngine ResourcePack on latest devbuilds
- Metrics not registering (Cause of huge dip on BStats)
- Kicking players not working when on Furniture
[API]
- Add ChorusBlockMechanic
- Add Events for ChorusBlockMechanic
- Add ChorusBlock methods to NexoBlocks-Class
[Features]
- Add `Mechanics.furniture.waterloggable` - Place furniture underwater and have barrier hitboxes waterlogged
- Add `Mechanics.furniture.lights_model` - Different NexoItem displayed when lights are 'on'
- Add `Mechanics.custom_block.immovable` - Prevent CustomBlock moved by pistons
- Handle Glyphs in chat on a packet-level for improved chat-handling
[Fixes]
- Optimize Furniture-handling for improved performance on large servers
- Furniture not showing when a chunk is reloaded
- Furniture-PickBlock feature not working in Creative Mode
- Furniture being "equippable" when using ARMOR materials
- Offset FurnitureSeat when furniture is placed on slabs,carpet etc
- Stacking furniture on Slabs, carpet & snow not correcting offset
- Step/fall sound not working for furniture
- `/nexo take`-command not working
- Bad rotation when sitting on a FurnitureSeat inside a Furniture-barrierhitbox
- TRIMS-CustomArmor not enabling datapack always & bad namespacing
- Sort-order for `Pack.import.external_pack_order`
- NexoInventory not supporting non-default fonts
- DyeCommand not working without NexoLibs
- CustomBlock Hit-sounds not working
- Filter out ItemModels from RequiredPack on 1.21.4 servers
- TTF-fonts overriding Nexo-shifts
- FoodComponent-replacement not working for 1.21.1
- Bow-pulling animations & model-tinting for 1.21.4 servers
- Various other 1.21.4 ResourcePack issues
- Snowfall overriding furniture-hitbox
- Logstrip mechanic not working
- WindCharges exploding Custom Blocks
- Issues with drop-amount and fortune-tools
- Issues placing lilypad & frogspawn on furniture barrier.hitbox
- NexoItems with imported Crucible/MMOItem items not assigning CustomModelData correctly
[Misc]
- Make Nexo generate models from itemid with lowercase
- Make NexoLibs optional to avoid Libby-handling of dependencies
 * More stable, requires rare manual updates
- Add some misc-settings
 * `Pack.generation.minimize_json` - compacts model-files
 * `Pack.import.model_engine.exclude_shaders` - excludes core-shaders as they might break the pack
[API]
- Cancelling NexoBlockBreakEvents not cancelling associated BlockBreakEvent
- Add `NexoFurniture#findTargetFurniture`
- Fix NexoFurnitureInteractEvent triggering twice
- Minor Drop-API changes
[Features]
[Fixes]

[Features]
[Fixes]
[Fixes]
[Fixes]
[API]
[Fixes]
[New]
ConfigTools.remove_invalid_furniture to remove invalid furniture on entity-load[Fixes]
[API]