View on GitHub

FOnline Engine

Flexible cross-platform isometric game engine

FOnline Engine

FOnline is a reusable C++20 engine for isometric Fallout/Arcanum-style games. It is normally embedded as a git submodule inside a game project; the game project provides content, scripts, configuration, native extensions, presets, and packaging policy.

Start Here

Repository Layout

Using the Engine From a Game Project

A game project typically:

  1. Adds this repository as Engine/ submodule.
  2. Provides a root CMakeLists.txt, CMakePresets.json, and .fomain configuration.
  3. Provides game scripts (Scripts/), content (Critters/, Items/, Maps/, Dialogs/, Texts/, etc.), and optional native extensions (SourceExt/).
  4. Builds final targets through the engine BuildTools and project-specific target definitions.

Last Frontier is one such embedding project. Engine docs may use ../../... paths when they intentionally point from Engine/Docs/ back into the embedding project.

Key Maintained Docs

Validation

Use the embedding project to exercise real targets. In Last Frontier, the common engine baseline is the LF_UnitTests / RunUnitTests target, with platform-specific package/build validation for BuildTools and runtime changes.

About