Echoes of the Majestic is a console sci-fi survival-horror RPG written in C++. The player boards a drifting station, explores connected compartments, fights the infestation called the Growth, restores a long-range beacon, and tries to escape alive.
- Genre: text RPG / survival-horror
- Platform: Windows console
- Language: C++17
- Localization: currently available in Russian only
- Interface: terminal UI with ANSI colors
- Data-driven content: locations, items, enemies, logs, and most UI text are stored in
data/*.txt
- exploration of a small station map with connected rooms
- combat with several enemy types
- quest items and win-condition progression
- collectible logs that reveal the station's backstory
- ASCII station map with current-location highlight
- standalone release build with a reserve built-in copy of all text data
src/Core- game loop, command handling, combat, progression, view-model constructionsrc/UI- console rendering, decorations, map outputsrc/Data- loading text assets and fallback to embedded datainclude/Entities- game entities: player, item, location, rival, log entrydata- editable game content and text assets
The presets in CMakePresets.json use the NMake Makefiles generator, so they
must be run from a Visual Studio Developer Command Prompt (or from a shell
where the MSVC build environment has already been initialized).
Debug:
cmake --preset debug
cmake --build --preset build-debugRelease:
cmake --preset release
cmake --build --preset build-releaseIf cmake is not in PATH, either:
- open the project in Visual Studio, or
- run the commands from the Visual Studio Developer Command Prompt, where both
cmakeand the MSVC toolchain are available.
Debug build:
.\out\debug\majestic_station.exeRelease build:
.\out\release\majestic_station.exeThe release build can also work as a standalone .exe because the project generates a built-in reserve copy of the text data during compilation.
Debug builds always write a command log next to the executable.
Release builds write a log only when launched with:
.\out\release\majestic_station.exe --log-commandsThe log file is created next to the .exe:
majestic_station_commands.log
идти [направление]взять [предмет]использовать [предмет]читать [лог]атаковатьосмотреть [цель]смотретьинвентарьстатусцелькартапомощь
English aliases are also supported: go, take, use, read, attack, inspect, look, map, help.



