Notice: Major internal changes have been made to support NeoForge in future versions of Noxesium. Other mods that depend on Noxesium may have broken. Published jars will now also include either a -fabric or -neoforge tag. Currently, NeoForge builds are not yet available.
- Updated to 1.21.4
- Introduce new UI optimizations. These new optimizations are available in the Noxesium configuration screen under "Experimental Optimizations". These optimizations are currently off by default but will hopefully be enabled by default soon.
- These optimizations are entirely different from the old experimental optimizations setting. It has been completely recoded.
- It now works by dynamically adjusting the fps at which UI elements are rendered. Whenever changes are detected the UI gets rendered at 60 fps, dropping down to 20 fps when it remains static.
- Properly support most other mods. Text shaders are now also properly supported.
- Now optimizes all UI elements, including the hotbar and opened chest inventories.
- Please report any issues you encounter while using this new setting!
- Fixed issue that caused a client-side desync where the off-hand item disappears when breaking a main-hand weapon (#111)
- Fixed issue with player skulls being colored incorrectly
- Removed old optimizations to CustomModelData, no longer relevant on 1.21.4 due to the changes to the item model system. Servers should use modern features to achieve good performance
- Removed old change which made music continue playing when set to 0%. This change was too janky and will be replaced with a proper music system for servers in the future
- Updated Chinese translations by @GoodNormal (#113)
- Updated to 1.21.2 & 1.21.3.
- Map overlay can now be configured to show up in the opposite corners. (#102)
- The beam color of end crystals can now also be tweaked using the beam color setting.
- Added a new entity rule to set beam color to a linear fade between two colors, this allows recreating the vanilla end crystal beam properly.
- Dropped old patches that edit the culling hitbox of armor stand models. Instead display entities should be used as they allow editing the culling hitbox already in vanilla.
- Map UI now renders even when the F3 screen is up. This does mean it renders on top, but this is unavoidable as vanilla renders chat above F3 and we want the map to go above chat.
- Updated French translations (#108) by @TheFox580
- Updated Russian translations by @pe3ep (#109)
- Fixed issues with item stack rules not being serialized properly
- Because of this the protocol version has been bumped to 11.
- Outdated servers sending item stack rules with the old serialization will crash the client.
- Updated the built-in server-side implementation to include an API for using entity rules
- Update zh_tw.json (#96) by @yichifauzi
- Fixed a crash issue that can happen when switching multiplayer servers
- Fixed server rule system breaking when using Noxesium on Lunar
- Server-side implementation now has built-in protection against sending data to older Noxesium clients that are not able to handle them, causing crashes
- Various files were moved around which may break other mods that build onto Noxesium
- Updated to Sodium 0.6 beta, older versions of Sodium are no longer supported.
- Noxesium settings are now available through either the Noxesium entry in Mod Menu or by using F3+V while in-game. There are now various additional developer settings available. Tooltips indicate which type of users each setting is meant for. Noxesium's video settings tab is temporarily removed as there are no relevant settings, but will return when UI optimizations return.
- Added system to debug qib and client-side trident implementations properly.
- Reworked coyote time implementation on custom tridents
- Added server rules to tweak coyote time or temporarily disable rendering UI overlay maps
- Added a packet on riptide to propertly synchronize with server
- Fixed issues with previous versions' detection of qib collisions when switching servers through a proxy
- Finished implementation of the client-side qib system. This is a system which allows server developers to create in-world interactable objects that trigger various effects like speed boosters or jump pads. The protocol version has been increased and usage of the system is not recommended for any clients with older versions.
- Fixed an exception when using Noxesium with mod "Component Viewer" (#90) by @fixyldev
- Updated packet exceptions setting to also log any invalid tags
- Now includes a feature to allow editing Sodium's core shaders through resource packs. This feature is only meant to be used by server developers that understand the risks of editing core shaders! It is merely providing an optional feature for those that acknowledge its risks.
- Fixed a crash when using the graphics server rule.
- Fixed a crash from Sodium Core Shader loading when encountering missing uniforms
This update makes various changes to the map UI setting added in the last update. This is a setting which renders a map held in the off-hand as a UI element to improve visibility.
- Tweaked map UI setting to allow selecting between enabled, disabled and ask server. Previously you could not ignore a server's request to enable the feature.
- Added new setting to tweak size of map UI
- Added new setting to place map UI in the bottom corner instead of the top corner
- Fixed issue where fps UI rendered below map UI
New features:
- Added a new system for setting extra entity data on specific entities. This currently has three usages:
- Servers can now customise the color and transparency of guardian beams.
- Servers can now turn off bubble particles on guardian beams.
- Servers can assign custom behaviors (see below) to interaction entities to trigger effects.
- Noxesium now automatically fixes some rare chunk rendering issues in Hole in the Wall on MCC. These are manually fixable by disabling "always defer chunk updates" but the server can now enable this behavior when needed.
- Added accessibility setting to show maps in the top right/left corner instead of the player's hand. Can be force enabled by a server.
- Added ability to show a small UI element that shows the current game time. This is specifically meant for shader developers and not for general users.
- Added hidden configuration option to dump incoming/outgoing packets. Plan is to add a developer focussed config menu in the future for settings like this.
- Servers can now add a custom flag to an item to render its model following the
minecraft:block_state
information. This e.g. allows creating glazed terracotta items that show up as rotated in their item form. - Servers can now define one custom creative tab they can fill with custom blocks/items they have created through tripwire, note blocks, or something else. Combined with the previous feature this can be used to correctly render such models in the inventory.
- Added hidden setting to print packet exceptions to the logs.
- Server connection is now re-initialized after leaving the configuration phase which fixes issues with Noxesium server-side integration on most multi-server networks.
- Added a new system called qibs, this is a system for creating areas that trigger effects on entry such as jump pads in Ace Race. This system allows such areas to be defined on the client directly. This system is still in beta and will likely receive breaking changes in future releases.
General:
- Updated to 1.21!
- Added French translations (#66, #81) by @TheFox580
- Added Hungarian translations (#67, #78, #79) by @CraftisMineHun
- Added Traditional Chinese translations (#71, #83) by @yichifauzi
- Added Russian translations (#72, #80) by @pe3ep
- Added German translations (#77) by @derNiklaas
- Added Thai translations (#84) by @duechayapolgmit
- Fixed an error when using custom sounds (#85) by @AsoDesu
- Experimental performance improvements have been temporarily disabled. They are being reworked to focus on important improvements without causing major incompatibility issues with every other mod.
- Old performance changes to item rendering & beacon rendering have been dropped. They barely affected performance and caused incompatibility with other mods.
- Update to 1.20.5 and 1.20.6!
- This brings support for 3rd party UI elements when using the experimental toggle. Please report any issues you experience to Noxesium and not to any other mods!
- All plugin channel messages have moved to noxesium-v2 and dropped the versioning system. This is because fabric has dropped their networking system and expects you to use custom payloads which have stricter serialization requirements.
- Massively improve mixin stability and compatibility #44 by @Bawnorton
- Added Simplified Chinese translations #60 by @mcxiangdon
- The GitHub repository now contains a server-side implementation to interface with Noxesium written in Kotlin against Paper 1.19.4
- This implementation supports all Noxesium clients back to the original release of the packet protocol.
- There is now a built-in API to listen to Noxesium's custom packets without using mixins
- Replaced server rule for setting OnPlace and OnDestroy tags with a new one to set the ItemStack to use for the empty hand. This allows you to replicate the old behavior as well as use the new item components to set e.g. the mining speed of various blocks when using no item.
- Only available with 1.20.5 clients as the item stack syntax has significantly changed.
- Added show experimental UI toggle in the normal video settings screen when not using Sodium
- Added setting in Accessibility Settings to enable resetting toggle keys on death. This would always happen in vanilla but this setting is set to off by default in Noxesium. You can use this setting to restore vanilla behavior. Disabling this setting will make it so toggle sprint is not removed on death.
- Add hidden setting to add keybinds to make players glow based on the color of their team, these keybinds can be enabled by manually enabling "showGlowingSettings" in the config file file, there is no in-game button
- Fixed an issue where custom model data optimizations would break when numbers exceeded 16777216.
- Experimental UI improvements are now unavailable on Lunar Client as they already have similar optimizations
- Added translations for Nederlands & Vlaams
- Updated to 1.20.3 & 1.20.4
- Moved configuration settings to the Video Settings menu when using Sodium
- Disable item override optimizations when using Chime (fixes #37)
- Removed leftover code that caused crashes when using adventure-platform-fabric (fixes #38)
- Experimental performance patches are no longer available when using other mods that are known to be incompatible (fixes #39)
Changes
- New experimental performance improvements
- New custom sound API (#33) (by @AsoDesu)
- Added additional information to ClientboundMccGameStatePacket about current map and round
- Introduces ability for servers to disable boat collision (#32) (by @TrollsterCooleg)
- Fixed crash on server join when using Fabric API 0.91.0 or newer
Performance Improvements! (experimental)
This release features new performance improvements for UI rendering. These changes are highly experimental and not enabled by default.
Currently these changes can improve fps by 2-3x on MCC Island. Users that already have high framerates will experience a larger benefit from these optimizations.
If Cloth Config API is installed you can find a configuration panel in the mods list, here you can enable these experimental performance improvements. After you have enabled the configuration setting you can use F3+W to toggle the optimizations on/off for quick comparisons and testing. Feel free to report any bugs caused by these experimental changes to help move them to a more stable spot.
These changes will have compatibility issues with other mods or heavily customised servers due to the nature of the optimizations. Please report these issues! These changes won't become enabled by default until they are sufficiently stable and have been thoroughly tested.
- Update to 1.20.2 (#31) (by @AsoDesu)
- Fixed compatibility issue with Porting Lib. (#29)
- Updated text display changes to preserve behaviour that text displays do not render through walls. (#28)
- Reworked custom model performance patch to match vanilla behaviour exactly.
- This fixes issues encountered by those with resource packs with more complicated overrides. Noxesium now only applies its optimizations if the overrides are optimizable. That is, only custom model data overrides are used. It now also respects the order in which they are defined exactly like vanilla.