This project aims to implement the basics of the Paper API as a Mod for the Fabric Modloader.
- Provide the API as complete as possible
- Working Bukkit/Spigot/Paper plugins in
Singleplayer
andMultiplayer
- Working builds for versions that don't get official Spigot releases (Snapshots/Pre-releases/Combat-snapshots)
- Other mods should be able to use the Paper API and interact with plugins, and plugins should be able to interact with other mods
- Plugins can load (onLoad/onEnable/onDisable are working)
- Each Singleplayer world has it's own plugin folder inside the world folder
- First simple Events are working (For example AsyncPlayerPreLoginEvent, PlayerJoinEvent, PlayerQuitEvent)
- Commands are (somewhat) working (Currently a hacky solution)
- The first parts of the API are working (Entities, ItemStacks, Inventories, Commands, Scheduler, Scoreboards)
- First plugins loading and (somewhat) working:
- EssentialsX (Basic commands like /spawn, /home, /ci, /i, /money, /speed, /gm, /fly, /time, /heal, /warp)
- QuickBoard (Shows scoreboard, animations work, placerholder API doesn't seem to work)
- Vault (Starts without error)
- Bukkit for the original API and server
- Spigot for the currently maintained server software
- PaperMC for their high performance and extended Spigot fork
- Fabric for the Modloader and Mod API
- SpongePowered Mixins for the awesome and simple trait/mixin framework
This project uses reworked classes from CraftBukkit. Most changes are because of the different deobfuscation mappings used by Fabric compared to Spigot, but other changes may be made because of the different architecture. Mixins are used to hook into the native Minecraft code, so no Minecraft source code is pressent in this repo.