Skip to content

Releases: MeAlam1/BlueLib

BlueLib 2.0.0

26 May 12:59
Compare
Choose a tag to compare

This version brings Breaking Changes.

Updating might make your mod incompatible with previous versions of the Library.

2.0.0

Added

Variant Loader

  • Added a fallback variant parameter to getParameterDataFromVariant, allowing shared data to be centralized in a single JSON instead of duplicating it per variant.
  • Reworked the entire Loading system to have the Events on the Library side and allow Developers to just inject the path and entities.
    • Instead of handling everything themself.
    • All Developers can now remove their ReloadHandler since it became redundant and has been replaced with a way cleaner and more optimized system.
    • For more details, visit the Wiki.
  • onReload has been modified to onDatapackSync.

Logging

  • Added a new /log command accessible to users with a permission level of 3 or higher (/op).
    • This command opens an in-game menu displaying console logs, allowing developers to monitor output directly without needing terminal access.
    • Supports log levels with color-coded formatting for easier readability.
  • isLoggingEnabled has been moved to a server sided config.
  • All Logging is now translatable through Minecrafts Component System!
  • Added a ton more ways to Log stuff to match the slf4j system.

Network Handler

  • Introduced a streamlined network registration system.
    • Simplifies the use of custom packets by automatically handling registration internally via BlueLib.
    • Packet definitions and handlers are now separated into two distinct classes for better structure and maintainability.
    • For more details, visit the Wiki.

Packets

Variant Data Synchronization

  • AllDataPacket – Sends a Map<String, JsonObject> containing all variant data from the server to the client.
  • ParameterDataPacket – Sends specific parameter data for a given variant as a JsonElement.
  • VariantsPacket – Sends a Set<String> representing all available variant identifiers for an entity.
    ⚠️ ***These packets are not registered by default; they must be registered on the S2C side, with the handler provided as a lambda defining the logic to execute when the packet is received.***⚠️

Changed

  • onReload has been modified to onDatapackSync.

Bug Fixes

  • Cleaned up all of the Logging we had in place.

Deleted

  • Removed IVariantEntityBase since it has become redundant!

BlueLib 1.9.0

04 May 13:26
Compare
Choose a tag to compare

This version brings Breaking Changes.

Reworked the Structure of the mod, some files changed location and need to be re-imported.

1.9.0

Added

Events

  • ModLoadedEvent

    • Triggered during game startup when BlueLib is loaded.
    • Called once for each mod found in the mods folder (excluding BlueLib itself).
    • Provides detailed metadata for the respective mod.
  • AllModsLoadedEvent

    • Triggered during startup after scanning all external mods (excluding BlueLib).
    • Provides a list of all loaded mod metadata.
    • Returns null if no other mods are loaded besides BlueLib.
  • VariantLoadedEvent
    Called when a variant is loaded.

    • Pre (NeoForge) / ALLOW_VARIANT_TO_LOAD (Fabric)
      Fired before loading the variant.
      Can be cancelled to prevent loading.
    • Post (NeoForge) / POST (Fabric)
      Fired after the variant has loaded.
      Cannot be cancelled.
  • AllVariantsLoadedEvent
    Called when all variants are loaded.

    • Pre (NeoForge) / ALLOW_ALL_VARIANTS_TO_LOAD (Fabric)
      Fired before loading all variants.
      Can be cancelled to prevent loading.
    • Post (NeoForge) / POST (Fabric)
      Fired after all variants have loaded.
      Cannot be cancelled.
  • Added a Config Builder

    • Due to NeoForge having their own Config System
    • We decided to connect NeoForges build in Config System into our new Fabric Config System so even the Multi Loader only needs to make 1 Config System.
    • We even made Server Only Config for Fabric
  • Added a Config for various systems, including Markdown.

Changed

  • Reworked the entire Markdown Enabling/Disabling by migrating it to a Server Sided Config.
  • Reworked the Markdown Prefix/Suffixes by migrating it to a Server Sided Config.
  • Refactored a lot of the packages as preperations to 2.0

Deleted

  • Removed the previously added EntityStateManager since it did not interact with Minecrafts system.

BlueLib 1.8.0

15 Apr 17:51
Compare
Choose a tag to compare

1.8.0 1.21.3-1.21

Updated

  • Updated Fabric to:
    • 0.115.4+1.21.1
  • Updated Neoforge to:
    • 21.1.148

Bug Fixes

  • Fixed an issue where the first Color in the Color Markdown sequence didnt get parsed.

1.8.0 1.21.4-1.21.5

Added

  • Support for 1.21.5

Updated

  • Updated Fabric to:
    • 0.120.0+1.21.5
  • Updated Neoforge to:
    • 21.5.40-beta

Bug Fixes

  • Fixed an issue where the first Color in the Color Markdown sequence didnt get parsed.

Deleted

  • Since the Removal of the GameTest Annotation, the Game Tests have been removed
    • For Now

neoforge-bluelib-1.21.4-1.7.1.jar

21 Feb 13:32
0a49018
Compare
Choose a tag to compare

In 21.4.84 Neoforge Changed the AddReloadListenersEvent to AddAddServerReloadListenersEvent,
This Minor Update Fixes Bluelib to match that change.

BlueLib 1.7.0

09 Jan 22:05
e90e932
Compare
Choose a tag to compare

1.7.0

Added

  • Gradients onto the color markdown
    • ex. -#000000,#FFFFFF,#00FF00-(text) will print text in a gradiant from Black to White to Green.
    • By: MeAlam
  • Added 3 Interfaces, IFlyingEntity ISwimmingEntity ITamableEntity which help streamline development by having preset Methods an Logic to help developers code their entities!
    • By: Kyradjis

Changed

  • Refactored Variant Loader to use a general JSON parser, enabling support for custom user-defined JSONs.
    • By: MeAlam

Updated

  • Updated neoforged.moddev to:
    • 2.0.73
  • Updated Fabric to:
    • 0.114.2+1.21.4
  • Updated Fabric Loader to:
    • 0.16.10
  • Updated Neoforge to:
    • 21.4.50-beta
  • Updated Parchment to:
    • 2024.12.22

Bug Fixes

  • Fixed /reload not reloading the Variants Correctly
    • By: MeAlam
    • Cause: The event registering /reload was never made. oops
  • Fixed DataGen not working on Fabric
    • By: MeAlam
    • Cause: DataGen on Fabric tried to execute Client code thru the server which broke it.

BlueLib 1.6.0

20 Dec 13:05
Compare
Choose a tag to compare

1.6.0

Added

  • The Ability to Enable and Disable the Copy Text Click Event.
  • Color Markdown using the -color-(text) syntax
    • ex. -#0000FF-(This Text will be Blue)

Changed

  • Refactored all Markdown styling to take a Component as parameter in stead of string to ensure compatibility with other Chat Styling mods.
  • Removed MiscUtils > Moved all logic to IsValidUtils

Updated

  • Updated neoforged.moddev to:
    • 2.0.61-beta
  • Updated Fabric to:
    • 0.112.2+1.21.4
  • Updated Neoforge to:
    • 21.4.33-beta
  • Updated Parchment to:
    • 1.21.4-2024.12.07

Bug Fixes

  • Fixed not being able to modify Hyperlink Prefix/Suffix.
  • Fixed globalMarkdownEnabled not actually doing anything.

Deleted

  • Removed MiscUtils > Moved all logic to IsValidUtils

BlueLib 1.5.0

08 Dec 19:44
Compare
Choose a tag to compare

1.5.0

Added

  • Added Obfuscated text
    • using the ||Spoiler|| Syntax
  • When you Click on a chat message, it will copy the message to your clipboard,
    • When the part of the message you clicked on already has an clickEvent, like HyperLink. it will NOT copy and prioritize the Hyperlink.
    • It will copy the text before the styling got applied!

Changed

  • Cleaned up some comments of:
    • ReloadEventLoader

Updated

  • Updated neoforged.moddev to:
    • 2.0.58-beta
  • Updated Fabric to
    • 0.111.0+1.21.4
  • Updated Neoforge to:
    • 21.4.10-beta

Bug Fixes

  • Fixed the Variant Loader not Initializing on Fabric.

BlueLib 1.4.0

03 Dec 22:22
Compare
Choose a tag to compare

1.4.0

Minecraft 1.21.4 Support

Added

  • Added MiscUtils
    • Added isValidURL(pUrl)
  • Added Hyperlinks to chat using text
    • the [ prefix and ] suffix are customizable

Changed

  • Refactored the markdown package outside of the Utils package.
  • Refactored the Chat Event outside of the Example Package.
  • Changed the Logging level regarding the Markdown from Warning to Info, to not log each time there is no styling.

Updated

  • Updated neoform to:
    • 1.21.4-20241203.161809
  • Updated neoforged.moddev to:
    • 2.0.50-beta
  • Updated Fabric Loom to:
    • 1.9-SNAPSHOT
  • Updated Fabric to
    • 0.110.5+1.21.4
  • Updated Neoforge to:
    • 21.4.1-beta
  • Updated Gradle to:
    • 8.11.1

Deleted

  • The Example Package where we tested the Variant Loader using entities has been deleted and replaced with just Loader Tests.

Bluelib 1.3.0

22 Nov 19:00
Compare
Choose a tag to compare

1.3.0

Added

  • Added Logging to the Markdown

Bug Fixes

Fixed the Custom Parameters

Deleted

  • Removed the need to initialize the Custom parameters.

BlueLib 1.2.0

21 Nov 13:43
Compare
Choose a tag to compare

Added

  • Users can now modify the Prefix/Suffix of the Markdown.
  • Users can now check if a specific Markdown is enabled.
  • Adding \ in front of the markdown will cancel it out.
    • ex. \**bold** will send **bold** in stead of bold.

Changed

  • If your message between the Prefix and the Suffix is empty, it will not delete the Prefix/Suffix.
    • Before if you typed ** without anything else, it would delete the ** because the code assumed that it was applying Italic Styling.
  • Fixed the Console logging that it can't find the Variants while it could.

Bug Fixes

  • Fixed Custom Parameters not being recognised
  • Fixed the Markdown not being applied correctly on Fabric

Deleted