All Projects → OvercastNetwork → Sportbukkit

OvercastNetwork / Sportbukkit

CraftBukkit and Bukkit modifications that improve stability and add new features

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Sportbukkit

Unifiedmetrics
Fully-featured metrics collection agent for Minecraft servers. Supports Prometheus and InfluxDB. Dashboard included out-of-box.
Stars: ✭ 29 (-70.41%)
Mutual labels:  minecraft, bukkit
Redprotect
RedProtect Easy and Light Weight Antigrief plugin.
Stars: ✭ 51 (-47.96%)
Mutual labels:  minecraft, bukkit
Essentials
The essential plugin suite for Minecraft servers.
Stars: ✭ 957 (+876.53%)
Mutual labels:  minecraft, bukkit
Confiscate
Discover duplication glitches, abusive staff giving items, x-ray or simply poor server economy.
Stars: ✭ 23 (-76.53%)
Mutual labels:  minecraft, bukkit
Chestcommands
An intuitive and powerful plugin to create graphical user interfaces in Minecraft.
Stars: ✭ 62 (-36.73%)
Mutual labels:  minecraft, bukkit
Drivebackupv2
Uploads Minecraft backups to Google Drive/OneDrive or by (S)FTP
Stars: ✭ 26 (-73.47%)
Mutual labels:  minecraft, bukkit
Shopchest
ShopChest - Spigot/Bukkit Plugin
Stars: ✭ 38 (-61.22%)
Mutual labels:  minecraft, bukkit
Tuinity
Stars: ✭ 531 (+441.84%)
Mutual labels:  minecraft, bukkit
Fastboard
Simple Bukkit scoreboard API with 1.7.10 to 1.16 support.
Stars: ✭ 62 (-36.73%)
Mutual labels:  minecraft, bukkit
Webconsole
Spigot plugin to manage your server remotely using a web interface
Stars: ✭ 62 (-36.73%)
Mutual labels:  minecraft, bukkit
Askyblock
A skyblock plug for Minecraft Bukkit. *No longer in development* See:
Stars: ✭ 86 (-12.24%)
Mutual labels:  minecraft, bukkit
Plugman
Plugin manager for Bukkit servers.
Stars: ✭ 80 (-18.37%)
Mutual labels:  minecraft, bukkit
Minecraftdev
Plugin for IntelliJ IDEA that gives special support for Minecraft modding projects.
Stars: ✭ 645 (+558.16%)
Mutual labels:  minecraft, bukkit
Blur
Minecraft Game Engine written in Java & Kotlin
Stars: ✭ 21 (-78.57%)
Mutual labels:  minecraft, bukkit
Minecraftdeveloperguide
📝Minecraft developer Chinese guide,我的世界开发者中文指南
Stars: ✭ 574 (+485.71%)
Mutual labels:  minecraft, bukkit
Libby
A runtime dependency management library for plugins running in Java-based Minecraft server platforms.
Stars: ✭ 36 (-63.27%)
Mutual labels:  minecraft, bukkit
Viaversion
Allows the connection of newer clients to older server versions for Minecraft servers.
Stars: ✭ 463 (+372.45%)
Mutual labels:  minecraft, bukkit
Mohist
Minecraft Forge Hybrid server implementing the Paper/Spigot/Bukkit API, formerly known as Thermos/Cauldron/MCPC+
Stars: ✭ 489 (+398.98%)
Mutual labels:  minecraft, bukkit
Luckperms
A permissions plugin for Minecraft servers.
Stars: ✭ 1,100 (+1022.45%)
Mutual labels:  minecraft, bukkit
Guilds
Adding RPG to your server has never been more fun and action-packed!
Stars: ✭ 66 (-32.65%)
Mutual labels:  minecraft, bukkit

SportBukkit

CraftBukkit modifications and Bukkit API additions that fix bugs, add new features, and improve the quality of life

NOTE: This repository is no longer maintained, but a popular fork is still active. If you are looking to also support Minecraft 1.8, a new project called SportPaper has that additional functionality.

File Structure

SportBukkit is a fork of CraftBukkit, starting from the submodules in the base folder. The differences between CraftBukkit and SportBukkit are represented by the sequential patches in the Bukkit and CraftBukkit folders. Conceptually, these differences are divided into fixes and features.

Fixes are relatively small and have the potential to change or go away with future upstream changes. Every patch except the final one in each list contains a fix.

Feature changes are improvements and extensions to the Bukkit API, intended to be permanent. These are contained entirely in a single patch at the end of each sequence, called simply "SportBukkit".

For readability purposes, a copy of the final patched SportBukkit source code is stored in the snapshot folder. This code is updated automatically by scripts, and should not be manually edited or compiled.

Requirements

To build SportBukkit, the following will need to be installed and available from your shell:

  • JDK 8 version 121 or later (older versions might work, but some are known not to)
  • Git
  • Maven
  • Ruby version 2.1 or later

To build on Windows you'll need to use the git bash console.

How To

See all available tasks: rake -T

Build everything: rake The SportBukkit binary will be located in build/CraftBukkit/target

Generate patched SportBukkit source code: rake apply Generated source will be in build/Bukkit and build/CraftBukkit

Compile SportBukkit from source: rake compile

Rebuild SportBukkit patches from source: rake generate

Remove all intermediate files: rake clean

Rebasing

This is roughly the process used to rebase SportBukkit to an updated upstream CraftBukkit.

  • Create a branch of this repo called rebase-(version) e.g. rebase-1.2.3.
  • Checkout the upstream branch of build/Bukkit and build/CraftBukkit and ensure they have clean work trees.
  • Delete the work folder.
  • Reset the submodules builddata, base/Bukkit, and base/CraftBukkit to the latest upstream master.
  • In version.rb, update NMS_VERSION and NMS_MD5 to the latest values (running rake deobf with the wrong MD5 will show you the right one).
  • Run rake deobf, rake decompile, and rake craftbukkit, in that order. These should all run without any conflicts.
  • At this stage, you have the latest CraftBukkit present and are ready to start the actual rebasing. This is a good time to create an initial commit on the rebase branch, with just the submodule and version.rb changes.
  • Run rake apply. This will attempt to apply the SportBukkit patches in the Bukkit and CraftBukkit folders to the new CraftBukkit. Assuming there have been upstream changes, many of these patches will fail and you will need to resolve the conflicts.
  • For each conflict, one of the repos build/Bukkit or build/CraftBukkit will be in a git am session, waiting on conflict resolution. Use the standard git merge process to resolve the conflict, and type git am --continue to continue applying patches.
  • Along the way, you can run rake generate to capture your progress in the patch files.
  • When you get to the end of the Bukkit patches, rebuild them and then run rake apply again to continue with the CraftBukkit patches.
  • The first CraftBukkit patch is strictly for importing NMS files verbatim. To recreate this patch, just copy the latest NMS version of each file in the patch from work/nms-src to build/CraftBukkit/src/main/java. This patch should always be updated, even if there are no merge conflicts.
  • The second CraftBukkit patch is strictly for fixing decompile errors. This patch should only make minimal changes to the files in the first patch to make them compile.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].