Note: Plugin development support is only intended for experienced programmers who want to expand WME functionality. Others can safely ignore this chapter.
Although you can call functions from DLL libraries directly from WME scripts, as described in this chapter, Wintermute Engine is also able to use advanced plugin modules. These plugins are external DLL libraries that use a standardized interface to communicate with the engine. Advanced plugins can access some of the engine internals, they can receive events from the engine and the can serialize/deserialize their state when the player saves/restores game.
Plugins can be written using Microsoft Visual C++ .NET or Microsoft Visual C++ 6.0. It may be possible to use other compilers/programming languages capable of creating native DLL libraries (such as Delphi or Borland C++), but it's untested and not officially supported.
If you are releasing a plugin for public use, please consider releasing the source codes as well. That way plugins could be recompiled/further developed even if the original developer abandons them.