Wintermute Engine

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

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

History

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 Neuromancer book. 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

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

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

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

YearTitleDeveloperGenreLicense
2005The White ChamberStudio Trophis Production Companysci-fi horrorfreeware
2007Carol Reed MysteriesMDNA Gamesadventurecommercial
20081½ Ritter: Auf der Suche nach der hinreißenden HerzelindeDaedalic Entertainmentadventurecommercial
2008Art of Murder: FBI ConfidentialPinnaclemysterycommercial
2008Ghost in the SheetCBE Softwarehorrorcommercial
2008Limbo of the LostMajestic Studiosadventurecommercial
2008The Lost Crown: A Ghost-Hunting AdventureDarkling Roomhorrorcommercial
2008Rhiannon: Curse of the Four BranchesArberth Studiosadventurecommercial
2009Dark Fall: Lost SoulsDarkling Roomhorrorcommercial
2009RosemarySingapore-MIT GAMBIT Game Labmysteryfreeware
2010Hamlet or the Last Game without MMORPG Features, Shaders and Product PlacementDenis Galaninadventure, puzzlecommercial
2011Alpha PolarisTurmoil Gameshorrorcommercial
2012J.U.L.I.A.CBE Softwareadventurecommercial
2012James Peris No license nor ControlPavo Entertainmentadventurecommercial
2012Поле Чудес (Field of Wonders)HeroCraftpuzzlecommercial
2013Face NoirMad Orangeadventurecommercial
2013reverseboom studiohorrorcommercial
2013OknyttNemoria Entertainmentadventurecommercial
2014Shadows on the Vatican10th Art Studioadventurecommercial
2014J.U.L.I.A. Among the StarsCBE Softwareadventurecommercial

References

  1. 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.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.