Skip to content

RolePlay-Cauldron/Spellbook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spellbook

Libraries for common code between our Minecraft Plugins with Support for all major kinds of Minecraft Servers


This project requires Java 21+ as well as Paper, Velocity or BungeeCord.

Modules

All Modules are fully documented using Javadoc!

Spellbook-Core: Basic Utilities

  • Advanced Logger
  • Easy-to-use Scheduler
  • Multi-Key Loading Caches (one Entity associated by 2+ Keys)

Spellbook-Database: Database Utilities

  • Database Updater (Automatic Schema Migrations)

Remember to bring your own Database Driver!

Spellbook-Effect: Display gorgeous Particle Effects (Paper only)

  • Create 2D and 3D Effects of different Shapes or Forms
  • Effects use a mutable PointBuffer render pipeline. Custom shapes append points to the buffer, transforms mutate points in place, modifiers edit the buffer, and emitters receive local/world coordinate values directly.

This module only supports Paper as it interacts with the World and Players


Using this in your project

We release this project to GitHub Packages but also provide a Mirror for this repository.

Option 1: Adding the GitHub Packages Repository

Important

Note that GitHub always requires you to authenticate against the GitHub Packages Repository, even though this is a public repository. This is a limitation by GitHub, not by us.

  1. Configure your Maven ~/.m2/settings.xml with credentials. Create your Token (classic) here, you only require the read:packages scope
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <servers>
      <server>
        <id>github</id>
        <username>YOUR_GH_USERNAME</username>
        <password>YOUR_GITHUB_TOKEN</password>
      </server>
  </servers>
</settings>
  1. Add the repository to your plugins pom.xml
<repositories>
  <repository>
    <id>github</id>
    <name>GitHub Packages</name>
    <url>https://maven.pkg.github.com/RolePlay-Cauldron/Spellbook</url>
  </repository>
</repositories>

Option 2: Adding a Mirror Repository

  1. Add the repository to your plugins pom.xml
<repositories>
  <repository>
    <id>mvn.velyn.me-github</id>
    <url>https://mvn.velyn.me/github</url>
  </repository>
</repositories>

Important

This Mirror is hosted by one of our maintainers and is subject to change or downtime. This mirror is maintained by a maintainer and is not guaranteed. It may change or go offline without notice. Prefer GitHub Packages whenever possible, especially for reliable builds in CI/CD Environments!

Add the Dependencies

Only choose the dependencies that you want

<dependencies>
  <dependency>
    <groupId>com.github.roleplay-cauldron</groupId>
    <artifactId>spellbook-core</artifactId>
    <version>X.X.X</version>
  </dependency>
  <dependency>
    <groupId>com.github.roleplay-cauldron</groupId>
    <artifactId>spellbook-database</artifactId>
    <version>X.X.X</version>
  </dependency>
  <dependency>
    <groupId>com.github.roleplay-cauldron</groupId>
    <artifactId>spellbook-effect</artifactId>
    <version>X.X.X</version>
  </dependency>
</dependencies>

Since this Library is not a standalone Plugin, you need to ship it together with your plugins jar File. You will probably want to use the Maven Shade Plugin for that.

About

Libraries for common code between our Minecraft Paper Plugins

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages