Skip to content

๐Ÿ“š Bookshelf is a modular library datapack designed to simplify complex systems in Minecraft maps. Ideal for mapmakers looking for easy-to-implement tools.

License

Notifications You must be signed in to change notification settings

Gunivers/Bookshelf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Bookshelf

Download ย ย  Documentation ย ย  Discord


๐Ÿ•ต๏ธโ€โ™‚๏ธ What is Bookshelf?

Bookshelf (formerly known as Gunivers Libs) is a user-friendly modular library datapack, crafted to assist mapmakers in effortlessly implementing intricate systems within their maps.

Bookshelf is split into several modules. You can download a zip from the Github packages page with each module zipped with its dependencies to pick the module(s) you need.

๐Ÿ› ๏ธ Key features

๐Ÿ“„ Bookshelf Dev: an optional datapack for development time that includes utilities such as logs and variable dump.

๐Ÿงฎ Mathematical functions: sin, cos, exp, log, sqrt...

๐Ÿ–ฅ๏ธ Bitwise functions: and, or, xor, not, msb...

๐Ÿท๏ธ ID system: easily identify entities.

๐Ÿ”— Link entities: link positions and rotations between entities and create coherent structures!

๐Ÿƒ Move and vectors: give customized trajectories to entities, which can bounce on blocks and more...

โค๏ธ Health management: easily modify player health!

๐Ÿงฑ Block management: get and manipulate blocks (supports BlockStates and NBT)!


And much more...

๐Ÿ”ฅ Motivation

As developers, we recognize the importance of using libraries to save time and avoid reinventing the wheel. Unfortunately, we've noticed that mapmakers within the Minecraft community are often unfamiliar with this concept.

That's why we started this project, to introduce a variety of reusable tools and try to convince mapmakers to embrace the use of libraries.

While we strive to keep these modules as much optimized and accurate as possible, our main goal is to offer a wide range of features and provide tools that are both easy to use and install. Therefore, we will always prioritize accessibility above everything else.

๐Ÿค Contribution

๐Ÿ‘‰ Please refer to the contribution docs for more information

Anyone can contribute to this repository. Please do so by posting issues when you've found something that is unexpected or sending a pull request for improvements. If you have any doubts related to the project or want to discuss something, then join our Discord server.