Wintermute/Plugins

From ScummVM :: Wiki
Jump to navigation Jump to search

This page lists known plugins for most Wintermute games.

Original WME 1.x allows game scripts to automatically import code from DLL libraries named "wme_*.dll".

Standard plugins

Current plugins are originally developed by Jan Nedoma.

wme_report.dll

Standard reporting library, shipped with WME 1.x.

Not a plugin, does not export anything with GetSupportedClasses().

No need to reimplement this for ScummVM.

wme_sample_pixel.dll

Standard "sample_pixel" plugin, shipped with WME 1.x.

Source: https://github.com/retrowork/Wintermute-Engine/tree/master/src/plugin/wme_sample_pixel

GetSupportedClasses() exports one class: SamplePixel.

TODO: reimplement this for ScummVM.

wme_snow.dll

Standard "snow" plugin, shipped with WME 1.x.

Source: https://github.com/retrowork/Wintermute-Engine/tree/master/src/plugin/wme_snow

GetSupportedClasses() exports one class: Snow.

TODO: reimplement this for ScummVM.

wme_steam.dll

This is a plugin for Wintermute Engine which allows WME games to access Steamworks API. Currently it provides functions for manipulating achievements and game stats.

Source: https://bitbucket.org/MnemonicWME/wme_steam_plugin/wiki/Home

GetSupportedClasses() exports one class: SteamAPI.

TODO: reimplement this for ScummVM.

2D games

Alimardan's Mischief

Contains 3 "wme_*.dll" files, but does not actually use plugins:

  1. wme_report.dll - standard report library, not a plugin
  2. wme_sample_pixel.dll - standard plugin, exporting "SamplePixel" class that is never used.
  3. wme_snow.dll - standard plugin, exporting "Snow" class that is never used.

Alimardan Meets Merlin

Contains 2 "wme_*.dll" files, but does not actually use plugins:

  1. wme_sample_pixel.dll - standard plugin, exporting "SamplePixel" class that is never used.
  2. wme_snow.dll - standard plugin, exporting "Snow" class that is never used.

Beyond the Threshold

Shipped with wme_snow.dll, which is never used.

wme_displacement.dll

A plugin for WME 1.x by Wintermute Engine Forum user metamorphium.

Sources are lost in 2008, according to this thread: http://forum.dead-code.org/index.php?topic=1197.0

GetSupportedClasses() exports one class: Displacement.

Constructor parameters are not documented.

Required method: Animate().

Usage:

var e1 = Scene.GetNode("Ent2");
var e1s = e1.GetSpriteObject();
var e1f = e1s.GetFrame(0);
var e1sf = e1f.GetSubframe(0);
var e2 = Scene.GetNode("Ent1");
var e2s = e2.GetSpriteObject();
var e2f = e2s.GetFrame(0);
var e2sf = e2f.GetSubframe(0);
var displobject = new Displacement(e1sf, e2sf, 3, 4, 7);
while(1) {
	displobject.Animate();
	Sleep(80);
}

TODO: reimplement this for ScummVM.

Corrosion: Cold Winter Waiting

wme_steam.dll

Standard plugin.

Usage:

while(!(SteamAchieve.StatsAvailable)) {
	Sleep(20);
}
if(Achievement0) {
	SteamAchieve.SetAchievement("corrosion_achievement_0");
}
Sleep(1000);
if(Achievement1) {
	SteamAchieve.SetAchievement("corrosion_achievement_1");
}
Sleep(1000);
if(Achievement2) {
	SteamAchieve.SetAchievement("corrosion_achievement_2");
}
...
if(Achievement17) {
	SteamAchieve.SetAchievement("corrosion_achievement_17");
}

Dr. Doyle - Mystery Of The Cloche Hat

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.

The Death of Erin Myers

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.

Oknytt

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.

Reversion: The Escape and Reversion: The Meeting

wme_3fstatistics.dll

TODO

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.

2.5D games

Alpha Polaris

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.

Pizza Morgana: Episode 1 - Monsters and Manipulations in the Magical Forest

Shipped with wme_report.dll, which is the standard report library, not a plugin.

wme_commandlinehelper.dll

Commandline helper plugin by Corbomite Games

GetSupportedClasses() exports one class: CommandLineHelper.

Required property: Parameters.

Usage:

	global HelperObject = new CommandLineHelper();
	global CommandLineParams = HelperObject.Parameters;
	global TestLength = 0;
	CommandLineParams = new String(CommandLineParams);
...
	var paramArray = CommandLineParams.Split(" ");
	DEBUG(("params" + CommandLineParams));
	var arrayLength = paramArray.Length;
	DEBUG(("paramArray[1]: " + paramArray[(arrayLength - 1)]));
	switch(paramArray[(arrayLength - 1)]) {
		case "FULL":
			TestLength = 1;
			Game.RegWriteNumber("Registered", 1); 
...

TODO: reimplement this for ResidualVM.

The Lost Crown - A Ghost-Hunting Adventure

wme_steam.dll

Standard plugin. List of actually used symbols is unknown.