Skip to content

Operating System Simulator

Operating System Simulator, Unreal Engine plugin lets you build a fully simulated desktop, laptop, phone, or terminal environment inside your game — complete with programs, filesystem, taskbar, store, BIOS boot flow, and terminal commands that can talk to the rest of your level.

Everything is modular: swap widgets, add Blueprint or C++ programs, wire terminal commands to gameplay through messenger subsystems, and ship on Windows, Mac, Linux, or consoles (where supported).

Use caseHow the plugin helps
Hacking / cyberpunk UITerminal, filesystem, fake apps, BSOD
In-world computers3D device mesh + UOperatingSystemDeviceWidget
Phone / tablet gameplayAOperatingSystemPortableDeviceActor with battery
Puzzle gamesTerminal commands → Global Messenger → world actors
Narrative / immersive simMail, video player, store, custom programs
flowchart TB
  subgraph row1["Device chain"]
    direction LR
    Actor["AOperatingSystem<br/>DeviceActor"] --> Device["UOperatingSystem<br/>BaseDevice"] --> OS["UOperatingSystem"]
  end
  subgraph row2["Runtime objects"]
    direction LR
    HW["Hardware<br/>MBB · CPU · RAM · HDD · GPU"] --- Progs["UOperatingSystem<br/>BaseProgram"] --- FS["Directory &<br/>File objects"] --- UI["UOperatingSystem<br/>Widget"]
  end
  subgraph row3["Terminal & messengers"]
    direction LR
    Term["UOperatingSystem<br/>Terminal"] --> Cmd["Terminal<br/>Command"] --> GM["UGlobalMessage<br/>Subsystem"]
  end
  Device --> HW
  OS --> Progs
  Progs --> Term
  1. Place a device actor in the level.
  2. The actor constructs a device object with simulated hardware.
  3. The device boots an operating system object that owns programs, directories, and UI.
  4. Programs (Explorer, Terminal, Store, your own apps) run as UObject classes with UMG widgets.
  5. Terminal commands and messengers connect the OS to gameplay outside the device.

See Plugin Classes for the full class map.

flowchart TB
  ROOT(("OS Simulator docs"))
  ROOT --> TUT[Tutorials]
  ROOT --> REF[Reference]
  ROOT --> FEAT[Features]
  TUT --> T1[Device chain]
  TUT --> T2[Programs]
  TUT --> T3[Messengers]
  REF --> R1[Blueprint]
  REF --> R2[C++ API]
  REF --> R3[Plugin Classes]
  FEAT --> F1[Programs]
  FEAT --> F2[Settings]
  FEAT --> F3[Viewport World]
  1. Enable the plugin and build your project — see Getting Started.
  2. Open DemoMap from plugin content — see Try the demo map.
  3. Follow the Overview series to create your own device, OS, and programs.
SectionContents
FeaturesFull feature list — OS types, filesystem, programs, messengers, save/load, and more
OverviewStep-by-step guides with Blueprint and C++ examples
Examples & PatternsCookbook index + 10 standalone example tutorials
C++ Extension ExamplesNative add/extend recipes for programs, commands, files, messengers
ProgramsBuilt-in apps and how to create your own
SettingsTheme, wallpaper, and custom setting modules
MessengersGlobal and device-scoped event buses
Viewport WorldSecondary game world inside an OS viewport
Blueprint ReferenceCommon nodes and widget bases
C++ ReferenceModules, headers, and override points