Getting your plugin listed in ACT
The main download page of the Advanced Combat Tracker website lists a number of parsing plugins and more general plugins. Each of these can be downloaded directly by ACT using the Startup Wizard or Get Plugins button. This page is a description of how to get a 3rd party plugin listed in these places for ACT users to find more easily. Using these methods also allows usage of ACT's APIs for version checking and automatic updates.
To prevent abuse and/or misconfiguration, there is no self-serve method of getting listed. You can send me an email(found in the About tab of ACT), send me a PM on the ACT Forums or maybe even find me on Discord(EQAditu#2691).
There are a few basic things I need to know to list the plugin properly...
- The display name of the plugin (to show)
- A short description of the plugin (to show)
- If the plugin is intended for a specific game audience
- Hosting method (if your plugin is very large or very popular, GitHub may be necessary)
- Hosted by the ACT website and updated using FTP (or)
- Hosted by your public GitHub repository and updated using Releases
- Method for users to report issues or find information
- ACT Forum post for the plugin (or)
- GitHub Repository/Issues page
- Your nickname to serve as author credit
If your plugin is large or contains more than one file, you will want to ZIP it for distribution. ACT will preserve folder paths when extracting, so you may wish to put numerous files in a subfolder inside of the ZIP. If there are no folders in the ZIP, ACT will not create them. If two different archives put the same file in the root folder of a ZIP, one will be overwritten.
If the ZIP file contains many DLL files, ACT will first use a DLL named after the ZIP name. Otherwise ACT will attempt to load and enable any applicable plugin it finds.
Available Plugin API Methods
Once hosted, several ACT API methods become available.
- Code Examples
- If the plugin is hosted on the ACT website
PluginGetRemoteDateUtc()gets the timestamp from the FTP uploaded file.
PluginGetRemoteVersion()gets a version string from a *.version file that must be placed next to and named after the plugin file. Such as
- If the plugin is hosted on GitHub
PluginGetRemoteDateUtc()gets the latest release(checked once per 10 mins) and uses the updated time of the asset. (the asset must maintain the same index each release)
PluginGetRemoteVersion()gets the latest release(checked once per 10 mins) and uses the release tag name as the version string.
Once you have configured your plugin with the ID that is given, you may wish to test things before the listing goes public on the ACT website. Once everything is ready, the ID will be made public and the plugin will appear on the Downloads page and within ACT where applicable. To update your plugin, simply replace the files on the FTP or make a new release on GitHub. The rest is automatic.