A collection of plugins with a common library for creative-based freedom servers, emphasizing full customization through optional and interchangeable modules.
Go to file
2023-04-13 21:21:48 -05:00
.idea Init 2023-04-13 20:24:40 -05:00
Commons Init 2023-04-13 20:24:40 -05:00
gradle/wrapper Init 2023-04-13 20:24:40 -05:00
.gitignore Init 2023-04-13 20:24:40 -05:00
build.gradle Init 2023-04-13 20:24:40 -05:00
gradlew Init 2023-04-13 20:24:40 -05:00
gradlew.bat Init 2023-04-13 20:24:40 -05:00
README.md Create README.md 2023-04-13 21:21:48 -05:00
settings.gradle Init 2023-04-13 20:24:40 -05:00

FreedomNetworkSuite

This is a proof of concept for a new suite of non-plugin driven modules supported by a common library. This is designed to encompass the ideologies of a Freedom server, while maintaining full customization through modules. The modules are non-plugin driven, meaning that in no way are any modules an extension of the Bukkit plugin interface. This is because the commons library is designed to be a JavaPlugin extension which utilizes each loaded module as a resource. Any modules are by default an extension of the commons library.

Modules are defined by a module.yml in the resources folder, which contains the path to the main class file, and a list of dependencies if it requires any other modules to run.

This proof-of-concept also uses the following libraries:

  • Aikar's Annotation Command Framework for command handling
  • ProjectReactor for subscribing to SQL database streams
  • Google GSON for Json interpretation
  • Jetbrains Annotations for additional compiler annotations
  • Lombok for boilerplate generation
  • Apache Commons for various utilities
  • SLF4J for logging
  • Paper for the server implementation
  • Kyori Adventure for chat formatting
  • Reflections API for reflections