Hello! Third party patches are essential to keep Hercules great. We want to keep it as easy as possible to contribute changes that get things working in your environment. There are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things.
Due to the nature of the project and the wide range of different applications it has, we provide a plugin interface to keep the core clean of unnecessary features.
Generally, bugfixes and improvements to existing code, as well as the implementation of official Ragnarok Online features and content, should be part of the Hercules core while custom functionalities should be moved to plugins to avoid burdening the core with code that is potentially useful to only a small subset of users.
If you are unsure of whether your contribution should be implemented as a module or part of Hercules Core, you may visit #Hercules on Rizon IRC, create an issue on GitHub, or drop us an email at dev@herc.ws
When you open an issue, you should include as much description as possible of the issue you are observing or feature you're suggesting.
If you're reporting an issue, you should describe your setup, and provide the
output of ./map-server --version
.
If you report a crash, make sure that you include a backtrace of the crash generated with either gdb or Visual Studio (depending on your build environment). For the backtrace to be useful, you need to compile Hercules in debug mode.
git checkout -b
my_contribution master
. Please avoid working directly on the
master
branch.git diff --check
before committing.For changes of a trivial nature to comments and documentation, it is not always necessary to create a new issue in GitHub.
You can help us diagnose and fix existing bugs by asking and providing answers for the following:
You can close fixed bugs by testing old bugs to see if they are still happening.