Global Extensions and Plugins

We currently have:

Extension
A package of pre-built components that extends a module. An extension can only be used with the module it was built for. An Extension can use components from other extensions in a game, but cannot use components defined in another Extension when editing, since you can only edit one Extension at a time

Universal Extension
An Extension that can be loaded against any module. The normal error message is suppressed. Useful for components that contain top-level components like dice-rollers that a user want’s to see in every module he loads.

My new work adds:

Global Extension
If a Universal Extension is placed in the ext folder in the VASSAL install directory, then it will automatically load against every module that loads.

Plugin
A Plugin contains code and component resources that are made available for use in other modules and extensions. Plugins are placed in the plugin directory in the VASSAL install directory and are automatically loaded whenever VASSAL is started, before Editing or Playing a module. Plugins can register Counter Traits and Components with Vassal that then become available in an Editing session. For example, If a Plugin contains a Counter trait named ‘Newtrait’ and a new Map component named ‘NewMapComp’, then when you edit any module or extension, you will see ‘NewTrait’ in the Counter trait list and ‘NewMapComp’ will appear as an option to add to any Map component. A Plugin is like an auto code importer.

On 1/22/08, Brent Easton messages@forums.vassalengine.org wrote:

Does a module which uses a plugin then require anyone playing the
module to have the plugin? Or does it get embedded in the module?


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

A Plugin is a separate install that anyone playing the module would require. It is placed into your <…install path…>/VASSAL/plugins directory. It does not get embedded into the module. Once installed, it then becomes available to be used in any module on your system.

Thus spake “Brent Easton”:

So this means that we should distribute with a plugins directory existing
already, yes?


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Yes, and also an ‘ext’ directory for Global Extensions.

Thus spake “Brent Easton”:

Done.


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

How will the Global extensions and plugins work with the new interface?

Or has this been dropped temporarily?

Good Question!

For starters, I think we decided to merge the two and get rid of GLobal Extensions. There will be only plugins.

The old-style support is still there, manually installing a plugin into <install_dir>/VASSAL/plugins but given the new interface, we need to rethink this and install plugins via the Module Library interface. We should be able to have the same features as the Extension manager - Activating/deactivating, install by selecting plugin in File Dialog.

Once we have one installed, they could be didplayed in the library inside a folder called Plugins.

It’s something I will get to…

Brent.


Brent Easton
Analyst/Programmer
University of Western Sydney
Email: b.easton@uws.edu.au


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)