Difference between revisions of "Wintermute/Plugins"

From ScummVM :: Wiki
Jump to navigation Jump to search
Line 89: Line 89:
== [[Corrosion: Cold Winter Waiting]] ==
== [[Corrosion: Cold Winter Waiting]] ==
=== wme_steam.dll ===
=== wme_steam.dll ===
Standard plugin. List of actually used symbols is unknown.
Standard plugin.
 
Usage:
<nowiki>
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");
}
</nowiki>


== [[Dr. Doyle - Mystery Of The Cloche Hat]] ==
== [[Dr. Doyle - Mystery Of The Cloche Hat]] ==

Revision as of 23:28, 18 February 2020

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.