Skip to content

v2.2.0 - MC 1.21.3-1.21.1

Compare
Choose a tag to compare
@theogiraudet theogiraudet released this 26 Nov 18:51
· 6 commits to master since this release

📦 Bookshelf - 2.2.0

🪐 The dimensional update!

This release features new modules for random distribution and terrain generation, refinements to existing modules, performance enhancements, and minor bug resolutions. Additionally, this update aims to ensure all functions work seamlessly across all dimensions.

Bookshelf is now based on Minecraft 1.21.3.

🎉 Added modules

  • #1 / #220 Added the bs.random module, which includes:
    • Random distributions: uniform, binomial, geometric, and Poisson.
    • Noise generation functions: white, simplex, and fractal.
    • Random selection of an element from a list.
  • #6 Added the bs.generate module for terrain generation. Currently supports 2D shape algorithms, enabling texture and heightmap-based terrain generation.
  • #193 Added the bs.interaction module, which proposes interactions to listen to different players' events: left click, right click, hover (enter, leave and continuous).

✨ Added features

  • #222 Added #bs.block:fill_random for filling regions with randomly selected blocks.
  • #258 Added #bs.block:emit_block_particle to emit block particles in specific locations.
  • #245 Added piercing and callback options to #bs.raycast:run.
  • #203 Added #bs.hitbox:is_entity_in_block and #bs.hitbox:is_entity_in_blocks to verify if an entity is within a block.
  • #233 Introduced new link management functions:
    • #bs.link:remove_link to remove specific links.
    • #bs.link:as_children, #bs.link:as_parent, #bs.link:at_children, and #bs.link:at_parent to handle parent-child link relationships.
  • #171 Added logging functions #bs.log:history and #bs.log:clear_history for viewing and clearing log history.

🔁 Tweaks

  • #251 Enhanced bs.block fill functions to accept from and to inputs as either [x, y, z] lists or as stringified coordinates (e.g., ~ ~5 25).
  • #247 Improved the default bs.log format for clarity.
  • #252 Optimized bs.hitbox module for improved performance.
  • #265 Optimized bs.schedule module for improved performance.
  • #265 Enabled bs.move module to function effectively at higher coordinate ranges. Collision detection has also been improved and should be more robust.
  • #265 Load tags do not load modules in isolation anymore. This can now be done using the exclusive_load tag.
  • #276 Add new hitboxes (new babies and salmon variants).

🐛 Fixes

  • #254 Resolved execution loop interruptions caused by #bs.schedule:schedule callbacks.
  • #243 Fixed unload functions for bs.health and bs.move.
  • #264 Resolved compatibility issues with the schedule module outside the overworld.
  • #255 Fixed bs.move local velocity collisions.
  • #262 Resolved collision issues with paintings for bs.raycast and bs.move.
  • #256 Fixed XP progress boundary issues at 0% and 100%.
  • #265 Corrected hitbox for player in spectator mode.
  • #270 Enabled all modules to function across any dimension.