Wintermute Engine

From Wikipedia the free encyclopedia

Wintermute Engine
Original author(s)Jan "Mnemonic" Nedoma
Developer(s)Dead:Code Software
Initial releaseJanuary 12, 2003; 21 years ago (2003-01-12)
Stable release
1.9.1 / January 1, 2010; 14 years ago (2010-01-01)
Preview release
1.10.1 beta / July 19, 2012; 11 years ago (2012-07-19)
Repository
Written inC++
Operating systemWindows
PlatformPersonal computer
Available inEnglish, Greek, Spanish
TypeGame engine
LicenseMIT
Websitedead-code.org Edit this on Wikidata

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

History[edit]

Wintermute Engine (WME) was designed and programmed by Czech programmer Jan Nedoma, who goes by the nickname Mnemonic on the WME forums. The name "Wintermute" is a reference to William Gibson's novel Neuromancer. The first public beta version was released on January 12, 2003. The engine was developed with several updates released every year, though irregularly due to the small development team.

Since 2013 the Winter Mute Lite Engine is hosted on Bitbucket and released under a MIT License.[1] Development continues on the repository, latest additions adding Android support.

Features[edit]

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 become 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 does not support 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 built-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".
  • GUIs - 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.

There is also an active community that, while small, is growing in size and is willing to help newcomers with coding or recommendations. Community-created free book of tutorials went online in summer 2008.[2]

Game design process[edit]

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[edit]

Starting with version 1.7, Wintermute Engine is distributed as donationware, meaning that it is completely free to use for both commercial and non-commercial purposes, but if the users find it useful, they are encouraged to make a donation to support its further development. Starting with version 1.8.9, source code of the engine and some of the supporting tools has been released under the LGPL license. It currently is available under an MIT License.

The source code of the portable Wintermute Lite 2D engine has been released under an MIT License and is hosted on a Bitbucket repository.[1] While the Wintermute Lite engine is free of charge also for commercial use, licensing of the included BASS sound library is required.[3] It is also Donationware, as the author asks for donations for continued development.[4] Later the author released also Wintermute 1.x and Wintermute 2 to bitbucket under MIT.[5] ScummVM integrated the WME lite engine into their framework as part of GSoC 2012 and 2013 student works.[6]

Previous releases were free to use for non-commercial purposes, but required a separate paid commercial license. 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.[7][8][9]

Games developed with Wintermute[edit]

Year Title Developer Genre License
2005 The White Chamber Studio Trophis Production Company sci-fi horror freeware
2007 Carol Reed Mysteries (4th - 16th) MDNA Games adventure commercial
2007 Limbo of the Lost Majestic Studios adventure commercial
2008 1½ Ritter: Auf der Suche nach der hinreißenden Herzelinde Daedalic Entertainment adventure commercial
2008 Art of Murder: FBI Confidential Pinnacle mystery commercial
2008 Ghost in the Sheet CBE Software horror commercial
2008 Scumbag Joe Synthetix Interactive adventure demo freeware
2008 The Lost Crown: A Ghost-Hunting Adventure Darkling Room horror commercial
2008 Rhiannon: Curse of the Four Branches Arberth Studios adventure commercial
2009 Dark Fall: Lost Souls Darkling Room horror commercial
2009 Rosemary Singapore-MIT GAMBIT Game Lab mystery freeware
2010 Hamlet or the Last Game without MMORPG Features, Shaders and Product Placement Denis Galanin adventure, puzzle commercial
2011 Alpha Polaris Turmoil Games horror commercial
2012 J.U.L.I.A. CBE Software adventure commercial
2012 James Peris No license nor Control Pavo Entertainment adventure commercial
2012 Поле Чудес (Field of Wonders) HeroCraft puzzle commercial
2013 Face Noir Mad Orange adventure commercial
2013 reverse boom studio horror commercial
2013 Oknytt Nemoria Entertainment adventure commercial
2014 Shadows on the Vatican 10th Art Studio adventure commercial
2014 J.U.L.I.A. Among the Stars CBE Software adventure commercial

References[edit]

  1. ^ a b license.txt on bitbucket.org
  2. ^ Online book on WME by Jan "metamorphium" Kavan
  3. ^ BASS licensing on un4seen.com
  4. ^ donate on dead-code.org
  5. ^ MnemonicWME on bitbucket.org
  6. ^ Wintermute on scummvm.org
  7. ^ List of games using Wintermute incomplete list on MobyGames
  8. ^ Marsh, David (February 26, 2008). "Nine Paths To Indie Game Greatness". Gamasutra. Retrieved 2009-12-21.
  9. ^ Broekhuis, Erwin. "A word with Steve Ince". Adventure Developers. Retrieved 2009-12-21.

External links[edit]