mirror of
https://gitlab.com/2009scape/tools/client-plugins.git
synced 2025-12-10 10:20:46 -07:00
Official 2009scape plugins for the RT4 client.
| AudioQOL | ||
| BasicInputQOL | ||
| BetterShiftDrop | ||
| Craftify | ||
| EscClose | ||
| GroundItems | ||
| IdentifyClueScrolls | ||
| IfView | ||
| InterfaceDebugPlugin | ||
| LeftClickAttack | ||
| LoginTimer | ||
| MiniMenuQOL | ||
| OverheadDebugPlugin | ||
| RememberMyLogin | ||
| SlayerTrackerPlugin | ||
| TabReply | ||
| ValUAdd | ||
| VarpLogPlugin | ||
| XPDropPlugin | ||
| README.md | ||
Welcome to 2009scape's official client plugin repository! This serves as a method to distribute all of our plugins that we created for use with 2009scape.
Guidelines
Plugin Rules
- No Plugin should enable any kind of feature that could be considered 'cheating.' This includes, but is not limited to:
- Telling the player where to stand when fighting bosses
- Telling the player where to go when doing clues
- Telling the player what to click when doing quests
- Exposing information to the player that is meant to be behind-the-scenes (e.g. timers for tick manipulation, etc)
- All plugins MUST have their sourcecode published under a permissive license (GPL, AGPL, MIT, etc) in order to be offered here.
- All plugins should avoid accessing any client APIs or variables outside of the scope of the API class provided for plugins. Failure to do this can get your plugin rejected.
plugin.properties Rules
- The Version of your plugin should be bumped every time you make changes and create a Merge Request with those changes.
- The Versioning scheme of plugins should use only one decimal place (e.g. 1.0 and NOT 1.0.0)
- The Author field should be populated with a comma-separated list of everyone who was involved with producing the plugin
- The Description field can contain a decent amount of information, but please try to keep it below 500 characters.
- Newlines can be achieved in the Description field by placing a
\at the end of each line. e.g.:DESCRIPTION=A demonstration\ of\ newlines
Quickstart
- Fork the client repository and clone your fork.
- Initialize a new plugin:
- For java, run the
plugin-playground:initializeNewJavaPlugingradle task - For kotlin, run the
plugin-playground:initializeNewKotlinPlugingradle task
- For java, run the
- Navitage to the
rt4-client/plugin-playground/src/main/{lang}folder - Your generated plugin template is here under the
MyPluginfolder. - Rename
MyPluginto whatever you want your plugin to be named. - Navigate to the
plugin.{java, kt}file in this folder, and change the package statement to match your folder name. - For a reference to what all can be done with plugins, check the
rt4-client/client/src/main/java/plugin/Plugin.javaandrt4-client/client/src/main/java/plugin/api/API.javafiles. - To test your plugin, run the
plugin-playground:buildPluginstask to compile your plugins and automatically place them in the correct location (rt4-client/client/plugins) - Now run the client with the
client:runtask, which will automatically connect to our public test server. You can now test out your plugin.
Merge Requests
Once you have a plugin you're happy with, the source code MUST be MR'd to the client repository. Once that's done, it will be reviewed and potentially merged. Once merged, we will publish a build of the plugin here.