Generic filters
Exact matches only
Search in title
Filter by Custom Post Type
Search in project

Working with Plugins

The Atavism server uses a plugin system to manage the different roles of the server. By default, the system provides a selection of standard plugins such as Combat and Inventory along with providing support for developers to add their own plugins.

The AGIS plugins exist as Java files inside the agis code and can be found in the agis.plugins package. Each plugin file usually has an accompanying and similar named Client.java file inside the same package.

 

How Plugins Work

As the atavism server is starting up each process listed inside the world.sh script runs one or more python scripts (inside the config folder) that loads the Plugins. When a plugin is loaded the onActivate() function is called which should contain the setup of the message filters and hooks for messages the plugin should catch along with any other actions it needs to take (such as loading data from the database).

As messages get sent around the server or from the client the filter created in the onActivate() function will pick up the relevant messages and run the matching hook (see Working with Messages).

 

Creating new Plugins

The guide for creating a new Plugin can be found at Creating an Atavism Plugin – mostly completed.

WIP, a lot more to be added.