A lightweight framework for 2D video games on low-end Windows and Linux PCs.
It's small and fast in the right hands, with a laser-focus on being extensible and portable.
MYTHOS should feel like a game engine you wrote for yourself.

Tranquility in simplicity. Because less is more.


2025-12-29: Release has been delayed to the new year to allow time to fix multiple stability defects.

Features



Simple and flexible cross-platform rendering. Direct3D 9 and OpenGL are fully supported out-of-the-box with the platform-specifics taken care of for you. MYTHOS is already perfect for expressively animated 2D games. But when the basics aren't good enough, or if you just don't like the way MYTHOS draws something, you can take back direct control.


Built-in background music system that can play both tracker modules and PCM streams. The underlying libxmp backend is under the developer's control and MYTHOS takes care of the resource management. Reactive music scores and compact file sizes are made easy. A wide variety of encoding formats for music streams are optionally supported.


Collision detection routines for convex hitboxes, built specifically for high-performance arcade games. You can use polygons, radials and single points. Optimization controls include bitmasking, adjustable hitrates, and you can even disable parts of the algorithm entirely.


Eccentric hardware friendly. MYTHOS is ready to change shape. Game logic requires integers only, so that you can port MYTHOS to really old hardware and your game will keep its fast, predictable behavior. LUTs for slow math are included.
MYTHOS itself requires an FPU out of the box for rendering and depends on modern libraries. Porting, while easy, will still require manual effort on your part.


Integrated with PhysicsFS for smaller download sizes, easy DLC and patch distribution, and resource pack management. PhysicsFS is a virtual filesystem driver that can mount compressed folders in a lot of formats, and even mount new files on top of old ones.


All the other little things that make MYTHOS nice to use. A detailed manual, simple helpers for deterministic pseudo-RNG, crash handling, vertex manipulation, and a nice command line interface a la Quake that you can use to add and call your own debugging commands.
It's small. The engine core is only a couple thousand LoC in length. The entirety of MYTHOS can reasonably be understood in an afternoon. To be totally fair, there is a lot of heavy lifting from external libraries, but not in excess. And we're constantly looking to debloat where it matters.It's free and open source, under a permissive license. We'll never extort you after you've released your game. We don't care what you do with it, how much money you make, or even if you don't give something back. We would appreciate your donations or contributions, though.

So where can I try it?

We expect to have the first beta version ready in December January. We'll update this page with links to the instruction manual and the source code when it's available to try.

If you have further questions, please mail them to: bonkmaykr@canithesis.org.


FAQ

What platforms are supported?

As of Version A1, Windows and Linux PCs using the x86 architecture are supported as build targets. Currently, Windows 7 is the oldest version of Windows to work, but compatibility with Windows XP is planned. No other platforms are officially supported at this time. Porting the engine to other platforms should be trivial, however, provided they have a working OpenGL backend or similar.

For those keeping up on our blog posts: This version will NOT contain AmigaOS 3 support. Modern rendering hardware is very different from what's needed on that platform and we don't really expect the AGA graphics support planned for TIME FALCON's special engine branch to have much use afterwards. That being said, TIME FALCON will have it's source code released at some point after the game is finished (a very long time from now).

What is included with MYTHOS?

The first public release will include the full source code, with extensive documentation for both the beginner developer and the performance-minded. Documentation is available as both a PDF manual and a Doxygen config which will list the contents of every header. The default project will further demonstrate how to get started. Prior knowledge of object-oriented C++ is a requirement.

The full source code to the game "Debris Crusher" will be made available the same day the engine source releases. More example programs may be bundled at a later time.

What external dependencies or libraries does it need?

MYTHOS is built on top of Allegro, PhysicsFS, and the eXtended Module Player, which are expected to be already installed on your workstation. It also bundles some lightweight dependencies as Git submodules and some directly within the Includes folder. Allegro will pull in media decoding libraries, which you can turn on or off at compile time — by default it will use everything it can find.

Glib and Freetype2 are temporarily required in these early versions of MYTHOS since they are used by some Allegro plugins. They will no longer be needed once we replace them with lighter alternatives.

What are the terms of the copyright license?

MYTHOS will become available under the MIT license. It can be used for any purpose, even in proprietary software, but you are required to disclose it's use.

Third party dependencies must also have their licenses respected. Please refer to the THIRD_PARTY.TXT file included with the engine for more information.

What toolchains are supported?

MYTHOS is fully compatible with GCC since version 5.6 and clang-LLVM since version 3.4. Most forks of GCC 5.6+ should also work without hassle, including MinGW. A fully ISO-compliant C++ standard library is needed. libstdc++ and libc++ are known to work without problems.

Microsoft's toolchain (the MSVC compiler and C++ runtime) are NOT supported and we have no plans to support them in the future due to how unstable they are and how much developer time they waste.

The build scripts we use are designed for cross-compiling from a Linux host. We suggest a strong familiarity with Unix systems before trying to use MYTHOS.

What do I need to bundle to ship a MYTHOS program?

On Linux, very little, provided your customers have the correct packages installed. Valve ships containers with many libraries common in games from within their Steam client. If one of the required libraries is not here, you may be able to include them yourself and then change the LD_LIBRARY_PATH in a launcher script.

Windows makes things a little easier thanks to looser version checks and automatic search of the program's storage location, but on the other hand many of the libraries MYTHOS relies on are not expected to be installed. At this time you will need to ship around 50 DLLs and require that users install the Universal CRT update package for their computer. This requires Windows 7 at the absolute oldest (the Vista version of this update erroneously contains NT 7 function calls). This number will shrink in later releases. Many of the libraries are dependencies of eachother or of Allegro plugins which we are deprecating in favor of our own replacements in the future.

Does this have anything to do with the engine by Pink Moon, or the libraries by Charybdis Enterprises?

No, it does not. This is our own original creation that has very unfortunate SEO.

Where did MYTHOS come from?

MYTHOS was created for our scrolling shooter game TIME FALCON. It began development on October 24th, 2024.