MYTHOS is a realtime interactive environment for 2D video games, designed for low-end Windows and Linux PCs. It's small, simple, and fast in the right hands, with a laser-focus on being as extensible as possible.

It's based on the Allegro multimedia library, which permits the engine to interface with a variety of platforms without worrying about API differences. This makes the rendering code fairly straightforward to understand, and therefore very portable.

Engine overhead is relatively minimal. The majority of memory usage comes from creating the GPU context. Total memory consumption of a MYTHOS game is otherwise as small as you are able to make it. Further optimizations tailored to your game are not only possible but made easy. Games are compiled as part of the engine's core codebase itself, so the entire source is right there as you interact with it, and developers are invited to make game-specific tweaks if they are comfortable doing so.

You are free to use MYTHOS for commercial or hobbyist purposes, under any license. It will be released as permissive free software. Everything is thoroughly documented so that both beginners and experienced programmers will know exactly how MYTHOS fits into their greater vision.

Features

So where can I try it?

We're not ready to fully release it yet. The MYTHOS engine was originally written by a single developer for one of our games in-house, and it needs more time to be cleaned up and thoroughly documented. Some of the features advertised above still have not been finished. We'll update this page with links to the instruction manual and the source code when it's available to try. We intend to have the first beta build available in December.

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 supported at this time. Porting the engine to other platforms should be trivial, however, provided they have a working OpenGL backend or similar.

What is included with MYTHOS?

The first public release will include some sample programs to help you get started, and extensive documentation for both the beginner developer and the performance-minded. Prior knowledge of object-oriented C++ is a requirement.

MYTHOS does not include some of it's dependencies: the A5 allocators, Physfs, XMP, Allegro, or allegro_qoi. Pulling them as Git modules or from the system package manager is trivial, however.

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 (except for CyberGraphX RTG cards) with a lot of abstractions that only make sense on a 3D accelerator, and we don't really expect the retro 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 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 standard library is needed.

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. Since these are the only really convenient C++ tools available on Windows, 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.

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). 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.