Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
1# Project-Poseidon-Uberbukkit
2
3
4## What's UberBukkit?
5A CraftBukkit CB1060 fork for Beta 1.7.3 fixing bugs and adding basic features.<br>
6Discord (Project Poseidon): https://discord.gg/FwKg676
7
8## Features (UberBukkit)
9- **Multi version support:** UberBukkit supports b1.0 - b1.7.3 versions.<br>
10***Experimental*** alpha support is also available.
11- **Cracked + Online mode:** You can whitelist cracked players when your server has `online-mode` on.
12- **Exclusive exploit & dupe fixes**
13
14## ‼️ You can grab a pre-configured `uberbukkit.yml` file for your desired version from [here](/defaults/).
15
16## Features (Poseidon)
17- **UUID Support:** Settings to enable UUID-based inventories alongside methods for plugins to transition to UUID-based systems similar to modern Minecraft server implementations.
18- **Poseidon Watchdog Implementation:** An automatic utility for detecting server hangs, ending the server process, and providing diagnostics to fix the underlying issues.
19- **Packet Events:** Adds packet send and receive events for advanced plugin development without needing Spout or to use Reflections that are incompatible with modern Java versions.
20- **Inventory Block Duplication Fixes:** Includes fixes for chest, furnace, inventory block duplication, and Minecart duplication issues.
21- **Cross-World Duplication Fix:** Fixes a cross-world duplication glitch.
22- **Duplication Glitch Fix:** Fix a bug with the Bukkit chunk cache which allowed users to duplicate and get unobtainable items.
23- **Server Crash Fix:** Addresses multiple server crash issues.
24- **Connection Pauses:** A powerful feature allowing developers to retrieve information asynchronously before a player connects.
25- **Event Handlers:** Modern event handlers backported to facilitating easier coding, plugin backporting, and early release plugin support.
26- **Vanish API Backport:** Backports the modern vanish API for easy vanish plugin creation and fixes issues with hacking players seeing vanished players.
27- **Logging Enhancements:** Adds an option for daily log file creation and logs player commands to the console, with exceptions for Authme, XAuth, and similar plugins.
28- **TPS API and Command:** Adds a TPS command and API for plugins to access historical TPS data.
29- **Server Shutdown Improvements:** Enhances server shutdown procedures to ensure world/player data and plugin data are properly saved.
30- **Release2Beta Support:** Added support for Release2Beta, including IP Forwarding.
31- **Tree Growth Blockage Settings:** Allows server owners to block tree growth from replacing certain blocks to prevent griefing.
32- **TCP NoDelay Option:** Improves netcode performance for compatible clients.
33- **Ragequit/Ragejoin Fixes:** Prevents ragequit and ragejoin connection/chat spam.
34- **Plugin Hiding:** Allows plugins to be hidden from the server list via an attribute in `plugin.yml`.
35- **Improve Console Debug:** Make multiple common errors less verbose in the console.
36- **Event Handling Improvements:** Ensures primed TNT fires the correct event and backports the explosion event from modern Bukkit.
37- **Spawn Location Options:** Provides options to disable spawn location randomization and teleportation to the highest safe block on join.
38- **Configurable Mob Spawner Area Limit:** Allows server owners to set a mob-cap for mob spawners to prevent mob farms from causing extreme lag.
39
40## Want to use UberBukkit on your server?
41Please read the following article before changing over to UberBukkit (From Project-Poseidon): https://github.com/RhysB/Project-Poseidon/wiki/Implementing-Project-Poseidon-In-Production
42
43## Download
44### Releases
45You can download the latest GitHub release [here](https://github.com/Moresteck/Project-Poseidon-Uberbukkit/releases/latest).
46
47### Snapshots
48You can download the latest build through [GitHub actions](https://github.com/Moresteck/Project-Poseidon-Uberbukkit/actions/workflows/build-and-test.yaml) (You need to be logged in on GitHub) <br>
49or get it from [betacraft.uk](https://betacraft.uk/utilities) along with **pre-made configuration files**.
50
51Please note, download the artifact (JAR) without `original` in the name, eg. `uberbukkit-2.0.2.jar`.
52
53## Licensing
54CraftBukkit and Bukkit are licensed under GNU General Public License v3.0<br>
55Any future commits to this repository will remain under the same GNU General Public License v3.0<br>
56Libraries in the compiled .jar files distrusted may contain their own licenses.<br>
57This project contains decompiled code that is copyrighted by Mojang AB typically under the `net.minecraft.server` package.<br>
58
59## How To Setup - IntelliJ IDEA
601. Clone this project using Git or a desktop client.
612. Open IntelliJ and create a new project in the same directory as the Project Poseidon folder.
62
63## Compiling
64Compiling is done via maven. To compile a JAR, cd into the Project Poseidon directory and run the following command:
65
66```
67mvn clean package
68```
69
70You should now have a runnable JAR inside the /target folder!
71
72## Regarding the DMCA of CraftBukkit in 2014
73The contributor Wolverness who first contributed on CraftBukkit in February 2012 issued a DMCA against CraftBukkit and other major forks of CraftBukkit.
74This project is based on the following commits:
75
76* CraftBukkit: [54bcd1c1f36691a714234e5ca2f30a20b3ad2816](https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/commits/54bcd1c1f36691a714234e5ca2f30a20b3ad2816) (SpigotMC)
77* Bukkit: [3524fde5ffc387ef9e39f6ee7dae83ff4dbf8229](https://github.com/Bukkit/Bukkit/commit/3524fde5ffc387ef9e39f6ee7dae83ff4dbf8229) (GitHub)
78
79The Bukkit and CraftBukkit commits that Project Poseidon is based on are before Wolverness started contributing.
80
81If you were a contributor before these commits please feel free to contact me or open an issue asking for this repository to be taken down.
82
83## MC-DEV
84We include files from the mc-dev GitHub repository. This code is automatically generated using minecraft_server.jar and sourced from the Bukkit repositories.
85* MC-DEV: [1a792ed860ebe2c6d4c40c52f3bc7b9e0789ca23](https://github.com/Bukkit/mc-dev/commit/1a792ed860ebe2c6d4c40c52f3bc7b9e0789ca23)
86
87If Mojang Studios or someone on their behalf wants to have this repository removed due to including copyrighted Minecraft sources like bukkit/mc-dev, please contact me or make an issue.
88
89## How to setup ModLoaderMP support (NOT WORKING)
90Please read the following: https://github.com/RhysB/Project-Poseidon/wiki/Adding-ModLoaderMP