c4a68471e4
* Updated Upstream and Sidestream(s) (Paper/Tuinity/Purpur) Upstream/An Sidestream has released updates that appears to apply and compile correctly This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing. Paper Changes: d80e43647 [CI-SKIP] Removal from the MIT list (#5345) Tuinity Changes: c303521 Change license from MIT to LGPLv3 Purpur Changes: 3044036 Re-enable timings by default 4f85cbe Include all Airplane patches 7b5feba [ci-skip] Tuinity license change 210ff8f [ci-skip] revert last commit. wasnt what i thought it was :3 47e8965 [ci-skip] Add maven repositories for Adventure API 3930ac4 It's muffin time! e535225 Updated Upstream (Paper & Tuinity) * whoops * this actually fixes it (I was being stupid) * [CI-SKIP] fix akarin link in Licensing/LICENSE.md * Updated Upstream and Sidestream(s) (Paper/Airplane/Akarin/Empirecraft) Upstream/An Sidestream has released updates that appears to apply and compile correctly This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing. Paper Changes: 39c487b37 Add per-command perms for paper command cdbf2578c Add Item Rarity API (#5352) Airplane Changes: 5df9825 Remove iterators from inventory contains 18d2be1 Merge pull request #14 from violetwtf/patch-1 f716d4c Merge pull request #13 from violetwtf/master 128cbe5 Reduce entity chunk ticking checks from 3 to 1 03ac093 Skip copying unloading tile entities 97dd027 Smaller pool size for tracking 9e9f57b Only set up Flare if token is available 580f380 Updated Upstream (Tuinity) 97df206 Update README to reflect support changes cf161dd Change blog URL to more helpful one Akarin Changes: 6be3d57 Update Jenkinsfile 3aa2e99 Merge pull request #198 from HookWoods/ver/1.16.5 c548038 try to fix velocity repo 5b03eb1 Update patches to 1.16.5 Empirecraft Changes: 81545aaf Updated Paper Airplane Changes: 82253fd Early return optimization for target finding 9572643 Cache entityhuman display name * Updated Upstream and Sidestream(s) (Tuinity/Purpur/Airplane) Upstream/An Sidestream has released updates that appears to apply and compile correctly This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing. Tuinity Changes: aea6b83 Merge dev/playerchunkloading 722c7ca Use hash table for maintaing changed block set 98ae59d Custom table implementation for blockstate state lookups 8b8704f Oprimise map impl for tracked players ea71d6b Optimise snow & ice in chunk ticking 9871d4c Remove chunk lookup & lambda allocation from counting mobs 5a4a35f Add patreon 7d93d96 Refactor data management for region manager Purpur Changes: 37591fe Add config to use no-tick vd for tracker (#195) Airplane Changes: cc00c69 Updated Upstream (Tuinity) |
||
---|---|---|
.. | ||
patches | ||
README.md |
EmpireCraft
What
EmpireCraft is a fork of Spigot used by the Empire Minecraft Server.
It contains many gameplay changes to suit our server, but more importantly, contains new performance improvements pending testing to be contributed to Spigot / Paper / Sponge.
We also have many APIs that we privately use but choose not to publicly PR upstream.
Why we don't release all APIs
APIs are tough to design. In public projects such as Bukkit, Spigot, Paper, etc., once an API is commited, it's almost forever. You can't go breaking it without solid justification. This is the politics game.
With that in mind, much thought has to be given to our APIs in current and future use cases and applications to ensure it can be extended without breaking.
This is a lot of politics that we don't have time in our lives to deal with.
Therefore, we write APIs to OUR base needs, which is often not 'complete' or 'up to style guidelines' of upstream repositories. We do not have the time to write code that we personally do not need for these APIs.
We also want to retain the ability to make breaking changes to these APIs if it results in a better way to do things or performance improvements.
By contributing it upstream, we would give up that power.
So that is why we have many extremely useful APIs that are not PR'd upstream.
License, Support, & Usage of Patches
All patches written by Aikar, Starlis LLC, and/or Contractors of Starlis LLC that are included within EmpireCraft are licensed MIT, and are free to be used in your own fork.
We offer ABSOLUTELY NO SUPPORT for these patches. If you wish to use them, you must take the effort to extract them from our repo, apply them to your own, and repair any code changes to get it to compile (note: we use a .callEvent()
utility method on the Event class for nearly all custom events to reduce diff.)
If we make any breaking changes, and you still wish to use these patches, it's your job to fix the changes!
So in summary, we love to share! Use anything we wrote in this repo how ever you please, but support it yourself :)
OS Support & Scripts
We only directly support the latest LTS Ubuntu for shell scripts. It may work elsewhere... but no promises.
Many scripts will try to push to our repos, please change that if you fork :)
scripts/importmcdev
Imports specific files from mc-dev that CB/Spigot doesn't use, but we need.
scripts/generatesources
Generates an mc-dev folder that can be added to IDE for the other mc-dev files located in minecraft-server.jar.
scripts/rebuildpatches
Rebuilds patch state from the EmpireCraft-* repo's current state. Automatically handles patch deletion and renaming for you, unlike Spigot's version of these scripts.
scripts/applypatches
Takes current patches, i.e., Bukkit & CraftBukkit, and applies them on the latest Spigot upstream.