Meta engine

From KeenWiki

Jump to: navigation, search

The META game engine is planned to be an open-source (GNU GPL) Keen-style game engine written by Shadow Master, based on The Mystery of Isis II and Real Keen Player III fan-games. It has been in development since September 2006, and it's latest version as of June 2007 is 0.2.0.

The copyright notices in each source code file state that META is a game engine for 2D side-scrolling games, that is, Keen's kind of game. One of the goals of the author of this engine is to gain some valuable C/C++ knowledge in the way, as he started the project with very little or no knowledge.

Contents

Licensing

Earlier releases, including 0.2.0, were licensed under the GNU GPL version 2 or later. Since most of the engine was then rewritten when switching to SDL, 0.2.90 and later releases are intended to be distributed under the GNU GPL version 3 (or later, at option of users).

Technical Information

  • Developers: Shadow Master
  • License: GNU General Public License
  • Programming language: C/C++, Allegro library
  • Source code platforms: GNU/Linux, Win32 (Visual C++, MinGW)
  • External components: LoadPNG, AlOgg, code based on Isis II, CKLo and Keen: Next engines
  • Started: September 2006
  • Versions: 0.0.1 (not released), 0.1.0 (not released), 0.1.1 (released December 2006), 0.1.2 (not released), 0.2.0, 0.2.90
  • Website: source code repository

Due to lack of public interest and a working state of the engine, versions 0.2.0 and 0.2.90 were never released, although the relevant source code were modified to match the versions at certain times.

Development Goals

  • It should provide a Keen: Galaxy style physics system.
  • Should take advantage of modern Windows and GNU/Linux systems, via the Allegro programming library and built-in platform communication APIs.
  • Should support a 4-planar tile-map format (the META Tile-map format), with a background tile plane, bimetric background tile plane, bimetric interaction tile plane and foreground tile plane.
  • Should be extensible via game scripts (META scripts), so new games can be made using the same engine as base, abd the authors should not need advanced programming knowledge as the engine source code itself should not be modified for such creations.
  • Should allow for extensible tilesets, with a reasonable size limit; the tilesets should be stored in 32-bit color PNGs, and their alpha channels should be processed.
  • Should implement a parallax-scrolling engine.
  • Should provide a particle and weather system.
  • Should allow for almost unlimited spritesets, each one containing sprites, which may be actual game elements (creatures, enemies, etc.) by using an extensible actor AI engine.
  • Should be compatible with the following music formats: WAV, Ogg Vorbis, MOD (ProTracker), S3M (Scream Tracker 3.x), XM (FastTracker), IT (Impulse Tracker).

Background Story

This project has already had some major development problems. It was started, originally, under the name Helix Core, but the author soon found out that Helix was a copyrighted trademark, and started to write the code from scratch again, under the name of "META" (Metaphorically Enigmatic Tool for Amusement) engine. At the same time, a programming interface switch was made from SDL to Allegro, and from a custom, BSD-like open-source license to the GNU GPL.

It was started for a fan-game project by the same author, that got abandoned (as the engine) around January 2007. Back then, the last released version of the engine was 0.1.1, although a 0.1.2 source code was stored in the author's hard-disk. Just before being abandoned, it was the adopted engine (albeit not even a functional game yet) for the new fan-game project Commander Keen: The Forgotten Chronicles, led by Genius314. After that, the three projects were abandoned.

In late May 2007, Shadow Master decided to start this project from scratch, using the existing source code and ideas for base, and also the recently gained C/C++ programming experience and knowledge with LModKeen and EModKeen. As the engine development was resumed, the Forgotten Chronicles was also resumed (unofficially), but not with Genius314 as leader, but Shadow Master.

During early 2008, development on the engine was resumed, after suffering another rewrite to use the SDL library instead of Allegro, based on the author's experiences with the former in the Battle for Wesnoth project. The game actual building language was also finally decided upon to be a extension of WML, a multi-purpose mark-up scheme designed by David White for the aforementioned game. The actual name to Meta's preprocessor and parser extensions has not been decided upon.

Personal tools