Jump to content

Wintermute Engine

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Mnemonic76 (talk | contribs) at 07:53, 22 July 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Wintermute Engine (commonly abbreviated as WME) is a set of software tools and a runtime interpreter (game engine) primarily designed for creating and running graphical adventure games.

History

Wintermute Engine (WME) was designed and programmed by Czech programmer Jan Nedoma, who goes by the nickname Mnemonic on the WME forums. The first public beta version was released on January 12th 2003.

The current version (released May 20th 2006) is v1.61.

The engine is in active development and several updates are released every year, though irregularly due to the small development team.

Features

The game engine provides most of the features necessary for creating classic 2D graphical adventure games. Although originally built as a 2D graphics engine, with a built-in script interpreter for implementing game logic, the Wintermute Engine provides support for the combination of real-time 3D characters and 2D backgrounds, a combination sometimes known as "2.5D", that has became the de-facto standard for modern adventure games (for example Syberia, Still Life), and survival horror games.

  • Resolution and Color Depth - Unlike many similar systems the engine supports virtually any resolution: from 320x200 retro-style to high-res 1024x768 modern looking ones or higher. Both 16bit and 32bit color depths are supported. Colour depth can be also configured by the player at run time - the engine handles the conversion automatically.
  • Rendering subsystem - WME can use hardware 3D acceleration (from any modern graphics card) to provide fast 2D graphics in high resolutions. It also includes graphical effects such as transparency, alpha blending and antialiasing (on old computers, WME is able to run in a "compatibility mode", which doesn't require a 3D accelerator, but disables the advanced graphics effects).
  • File Formats - In addition to supporting common file formats WME also supports alpha channels for PNG and TGA. However it doesn'tsupport the MP3 format (due to licensing issues) but uses the Ogg Vorbis format instead, arguably providing better compression and sound quality. Furthermore the engine is able to play videos in Ogg Theora and AVI format, including automatic subtitles display (in the SUB format).
  • Scripting - WME provides a flexible object-oriented scripting language that supports a set of methods and attributes to allow you an easy access to the internal engine workings. You can also create your own custom objects and override and customize build-in methods. It uses a C-like syntax, similar to C++, C#, Java or PHP.
  • Parallax scrolling - Multi-layered parallax scrolling for the scenes is natively supported by the engine and scene tool. Unlike most other comparable software no additional scripting is required to implement it.
  • Packages - A game can be compiled into one or more packages which contain all the game resources in a compressed form. This enables, for example, a developer to distribute a separate speech pack, or to release individual game episodes as packages. Packages can have various priorities, to release a patch for a game for example.
  • 3D characters - WME can render 3D characters in real time. While originally supporting only the MilkShape 3D format, it now supports the more universal DirectX format ".X".
  • GUI's - It is possible, using standard controls, to build a complex user interface for a game, such as load/save windows, settings windows, an inventory window, etc. All the controls are fully "skinnable".
  • Localization - A game can be translated into other languages, and isn't limited to text. Localization packages containing localized string table, fonts, graphics, or sounds are possible.
  • Accessibility Support - WME provides several options to improve accessibility for vision-impaired players:
    • Written text can be sent to a text-to-speech synthesizer
    • Active areas on screen can be highlighted using keyboard shortcuts, making them easier to find for people with visual disabilities.
    • The player can pause the game at any time to be able to read text or examine the scene.

The is also an active community that, while small, is growing in size and is willing to help newcomers with coding or recomendations.

Game design process

Wintermute Engine follows the object-oriented design philosophy. The game developers use the engine tools for building various game objects (actors, scenes, windows etc.) and assembling them together. Every game object is defined by its appearance (graphics, animations, captions, fonts) and by a script, which defines the underlying logic of a given game object and its responses to game events. All those game definitions are then interpreted by the engine runtime interpreter, which is otherwise completely independent on any actual game implementation.


License

Wintermute Engine is completely free to use for non-commercial purposes, which makes it popular with amateur adventure game developers.

For commercial use the developers must obtain a separate paid commercial license, which is discussed on a case-by-case basis with the engine developer. Licence terms vary depending on the distribution model the game will employ (downloaded, boxed, etc). The typical license fee ranges from 0-300 Euros, without royalties. The engine author has said that the licence terms don't vary, but his unusual method of disclosing them (via a specific email query only) is more to keep track of who is licencing and interested in the engine. The flexible nature, and relative inexpense, of the licence for even large commercial projects has made the Wintermute Engine a popular tool among independent commercial game developers.

Similar Software Packages

Adventures games are popular in the independant game developement scene, and many toolkits have emerged to create them. Most, but not all, are IDE based scripting engines. Some are just a script language or do not feature one at all (and so are arguably less powerful). Wintermute's features and scripting compare favourably with these other development kits, and could be concidered one of the leaders in quality (though not community size).

Other sytems include:

The DarkBASIC or DarkBASIC Professional engines can also be used for adventure games, and a few modern commercial adventure games have been built using the Virtools middleware system.

External links