257d6cd04f
Cross world teleportation works by taking a copy of an entity and moving it to a new world. After this happens the original entity is marked as dead so as to be removed from the original world, however it still undergoes one further tick in the main world, but with some information from the new world. It is not so easy to break out of this tick cycle if needed, so instead we move the portalling process towards the end of an existing tick. This ensures that the entity will not be spuriously ticked. |
||
---|---|---|
nms-patches | ||
src | ||
.gitignore | ||
applyPatches.sh | ||
deprecation-mappings.csrg | ||
LGPL.txt | ||
LICENCE.txt | ||
makePatches.sh | ||
pom.xml | ||
README.md |
CraftBukkit
An implementation of the Bukkit plugin API for Minecraft servers, currently maintained by SpigotMC.
Bug Reporting
The development team is very open to both bug and feature requests / suggestions. You can submit these on the JIRA Issue Tracker.
Compilation
CraftBukkit is a Java program which uses Maven 3 for compilation. To compile fresh from Git, simply perform the following steps:
- Install Git using your preferred installation methods.
- Download and run BuildTools
Some IDEs such as NetBeans can perform these steps for you. Any Maven capable Java IDE can be used to develop with CraftBukkit, however the current team's personal preference is to use NetBeans.
Contributing
Contributions of all sorts are welcome. To manage community contributions, we use the pull request functionality of Stash. In to gain access to Stash and create a pull request, you will first need to perform the following steps:
- Create an account on JIRA.
- Fill in the SpigotMC CLA and wait up to 24 hours for your Stash account to be activated. Please ensure that your username and email addresses match.
- Log into Stash using your JIRA credentials.
Once you have performed these steps you can create a fork, push your code changes, and then submit it for review.
If you submit a PR involving both Bukkit and CraftBukkit, it's appreciated if each PR links the other. Additionally, every reference to an obfuscated field/method in NMS should be marked with // PAIL: Rename
and optionally a suggested name, to make mapping creation easier. E.g.:
entity.k.get(i).f(); // PAIL pathfinders, navigateToHome
Also, make sure to include // Craftbukkit
comments to indicate modified NMS sources.