📦 Bookshelf - 2.2.0#

🪐 The Dimensional Update!

This release introduces new modules for random distribution and terrain generation, improves existing modules, boosts performance, and fixes minor bugs. All > functions now work seamlessly across all dimensions.

Bookshelf is now based on Minecraft 1.21.3.

  • #265 - Load tags do not load modules in isolation anymore. This can now be done using the exclusive_load tag.

  • 🐛 #270 - Enabled modules to operate seamlessly across all dimensions.

🧱 bs.block#

  • #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.

  • #251 - Fill functions now accept from and to as [x, y, z] lists or string coordinates (e.g., ~ ~5 25).

🏗️ bs.generate#

  • 🎉 #6 - Added module for terrain generation. Supports 2D algorithms for texture and heightmap-based generation.

❤️ bs.health#

  • 🐛 #243 - Fixed unload function.

🎯 bs.hitbox#

  • #203 - Added #bs.hitbox:is_entity_in_block to check if an entity is in a block.

  • #203 - Added #bs.hitbox:is_entity_in_blocks to check if an entity is in any block.

  • #252 - Optimized module for improved performance.

  • #276 - Add new hitboxes (new babies and salmon variants).

  • 🐛 #265 - Corrected hitbox for player in spectator mode.

🖱️ bs.interaction#

  • 🎉 #193 - Added module to track player actions on interaction entities: left/right click, and hover events.

📄 bs.log#

  • #171 - Added logging functions #bs.log:history and #bs.log:clear_history for viewing and clearing log history.

  • #247 - Improved the default bs.log format for clarity.

🏃 bs.move#

  • #265 - Enabled the module to work reliably at high coordinates with improved and more robust collision detection.

  • 🐛 #243 - Fixed unload function.

  • 🐛 #255 - Fixed local velocity collisions.

  • 🐛 #262 - Resolved collision issues with paintings.

🎲 bs.random#

  • 🎉 #1 / #220 - Added module, which includes random distributions, noise generation, and random selection of an element from a list.

🔦 bs.raycast#

  • #245 - Added piercing and callback options to #bs.raycast:run.

  • 🐛 #262 - Resolved collision issues with paintings.

⏲️ bs.schedule#

  • #265 - Optimized module for improved performance.

  • 🐛 #254 - Resolved execution loop interruptions caused by callbacks.

  • 🐛 #264 - Resolved compatibility issues with the schedule module outside the overworld.

🏅 bs.xp#

  • 🐛 #256 - Fixed progress bar boundary issues at 0% and 100%.