Operating System Simulator Plugin

OPERATING SYSTEM SIMULATOR PLUGIN v2.0.4

Doom playable in YetiOS plugin via web browser.

Web Browser preview

Preview #1

Preview #2

Jump start tutorial for creating your own OS using default assets:

Placeable and interactable device Tutorial:

This Demo shows the possibility of playing a game in the Operating System And Terminal Simulator Plugin in Unreal Engine 4 using 100% Blueprints.

Operating system and terminal simulator plugin, includes some of the common Linux commands. The system is fully modular and developers can create their own commands as well as programs in blueprints or c++ to simulate a fully working operating system environment. Out of the box Blueprint supported.
Devices have modular hardware components of CPU, RAM, HDD, Motherboard, GPU which you can customize the speed, size etc. that effects your device.
Terminal supports executing multiple commands and each command can have alternative commands, flags and parameters.

This plugin is in beta version, follow this thread for the latest changes.

Features**:**

  • Operating System
  • Hardware classes
  • Multiple Devices
  • Load your custom images at runtime as wallpaper and icons
  • System boot and installation simulation
  • Blue screen of Death
  • Save/Load OS, directories, files etc.
  • Create custom programs
  • Each program can have its own settings
  • Taskbar and start menu
  • Portable devices
  • Battery
  • Multiple terminal commands
  • Alternative terminal commands
  • Create custom terminal commands
  • Execute multiple commands eg. mkdir tmp && cd tmp
  • Terminal command flags
  • Terminal command parameters
  • Command history navigate up and down keys
  • Terminal Commands Included with plugin as examples
  • Login reset password functions
  • Forgot password widget
  • Desktop Peek
  • Thumbnail Rendering system and added new category in Content Browser
  • System themes. Includes light and dark
  • Welcome Screen
  • System Directory Settings
  • Save game versioning system
  • Yeti Global category for all static functions
  • Delegate when a new program is installed
  • User can set root command in Blueprints
  • Revamped version system

Apps:

  • Terminal
  • Simulated File Explorer
  • Calculator
  • Calendar
  • Clock
  • Image Viewer
  • Notepad
  • System Settings
  • Video Player
  • Music Player

Web Browser:

  • Multi Tabs Browsing
  • Back and Forward Navigation
  • Web History
  • Home Page
  • Reload
  • Browse only https pages (optional)
  • White Listing web pages. Visiting non white listed pages can display your own custom error image.
  • Our own implementation of custom web browser object that supports events for documentation load start, load completed and load error (exposed to Blueprints).
  • Each tab is a separate widget that tracks its own history.
  • Browser address bar
  • Create your own custom internal browser URLs. (similar to chrome://chrome-urls)
  • Mask real web URLs with your own custom URLs in game.
  • Draggable window
  • supports custom html files
  • Set and delete cookies
  • Delete bowser cache
  • Override URL

Commands**:**

  • cd - change directory
  • ls - list all files in current directory
  • clear -clears terminal history
  • pwd -shows current directory path
  • date - shows current system date
  • exit - exist the game
  • mkdir - create folder
  • update - command to show time consuming jobs
  • help - help command (shows information about the command)
  • shutdown - device shutdown
  • adduser - adds user using sudo
  • apt get - installs program
  • pid - show running processes
  • open - open program
  • close - close program
  • touch - make file
  • sudo - run command as superuser
  • programs - lists all programs installed and installable programs from repository
  • lock - Lock/unlock user files/directories

Code Modules:

  • YetiOS [Runtime]

Web browser is also available as a separate plugin, see forums.

Supported Development Platforms: Windows, Linux, Mac
Supported Target Build Platforms:** Windows, Linux, Mac, **Android
Tutorial: In plugin & YouTube
API Documentation: https://docs.yetitechstudios.com
Changelog: Docs & Tutorials

Important/Additional Notes: This plugin is heavily dependent on timers and delays so make sure to disable Use Less CPU when in Background under General -> Performance category from Editor Preferences.

Production based plugin with intuitive API developed by YetiTech Studios and utilized in the game BA$H by YetiTech Studios.

**Packaged build v2.0 demo: **Windows

YouTube****| Discord****| Reddit

**Note. Our Web Browser plugin is dependent on the default Unreal Engine Web Browser Widget (PC: Chromium 59, Mobile: WebKit) which is currently experimental. If there is a specific function that is not working in the default Web Browser Widget from Unreal Engine then it will not work in our Web Browser Plugin however you are free to recompile Chromium.

v2.0 **Operating System Simulator **Preview!

v2.0 File Explorer with Light and Dark theme. File Explorer now includes Breadcrumb navigation.

v2.0 Image Viewer. You can now have image thumbnails in File Explorer!

v2.0 Calculator with support for evaluating expressions (using BODMAS rule) instead of simple math.

v2.0 Video Player Preview!

v2.0 Calendar App Preview!

v2.0 Message Box (modal supported) Preview!

v2.0 Theme changer Preview!

v2.0 Clock App Preview synchronized to your local time & real-time thumbnail (icon) update! :cool:

v2.0 Desktop Peek Preview!

v2.0.2 Music Player Preview!

v2.0.4 Lock Files and Directories Preview!
File or directory can be locked/unlocked to a specific user using lock and unlock terminal command. Trying to open a locked file by default will show access denied toast notification, this can be expanded to have custom functionality.

PURCHASE](Operating System Simulator Plugin in Code Plugins - UE Marketplace)

Preview #2
Preview shows operating system and terminal simulator plugin in a 3D environment. Players can interact with the computer while the operating system is running.

Hey,

Got a question - Is there VR support for this?

Apart from that looks pretty cool and cannot wait to get my hands on this :slight_smile:

VR should work, Widget Interaction Component should be added.

Released! :slight_smile: Operating System Simulator Plugin in Code Plugins - UE Marketplace

v1.1 update

  • Fixed: Unresolved external symbol compile error when packaging for shipping build.

v1.2 update
*** New:

New: FYetiOsPortableBattery struct for battery settings.
New: YetiOS_PortableDevice class to create portable devices such as mobile, laptop etc.
New: YetiOS_StationaryDevice class to create non portable devices.
**New: **variable bCanRunOnPortableDevice for programs. If this is false the program will not run on portable device.
**New: **API GetCastedDevice for casting device easily. Example: MyYetiDevice->GetCastedDevice<UYetiOS_PortableDevice>()
**New: **API IsPortableDevice() to detect if device is portable or not.
**New: **APIs for portable device

  • BeginBatteryCharge
  • StopBatteryCharge
  • IsDeviceCharging
  • GetBatteryLevel
  • GetBatteryHealth
  • GetChargingSpeed
  • GetTimeToFullyRechargeInHours

New: APIs for base device

  • GetHardDisk
  • GetTotalCpuSpeed
  • GetTotalMemorySize
  • GetMotherboardDurability
  • MotherboardHasOnBoardGraphics
  • CpusAreOfCorrectType
  • IsGpuInstalled
  • GetAllCpus
  • GetAllMemory
  • GetAllGpu

Changes:
BaseDevice class is no longer Blueprintable.
Removed portable settings from UYetiOS_BaseDevice.
ShutdownYetiDevice() is now virtual.
Deprecated FYetiOsMotherboard struct. Use FYetiOsPortableDeviceMotherBoard or FYetiOsStationaryDeviceMotherBoard.
Deprecated GetMotherboard() in UYetiOS_BaseDevice. Cast to respective child class to access motherboard.
Fixed: some packaging issues.
**Fixed: **some incorrect category typos.
**Fixed: **some missing comments.

**v1.3 update

Added: **Linux support
**Fixed: **Compile errors for Linux

Flash Sale 50% OFF March 3rd-6th
OPERATING SYSTEM & TERMINAL SIMULATOR

Jump start tutorial for creating your own OS using default assets.

This Demo shows the possibility of playing a game in the Operating System And Terminal Simulator Plugin in Unreal Engine 4 using 100% Blueprints.

Web browser preview:

  • Preview of a Web browser implemented in the plugin.
  • Features:
  • Multi Tabs Browsing
  • Back and Forward Navigation
  • History
  • Home Page
  • Reload
  • Browse only https pages (optional)
  • White Listing web pages. Visiting non white listed pages will display error Page.
  • Our own implementation of custom web browser object that supports events for documentation load start, load completed and load error (exposed to Blueprints).
  • Each tab is a separate object that tracks their own history.

DOOM is playable in the YetiOS plugin! :slight_smile:

**v1.4 update **
**Added Web Browser
Fixed compile error for 4.25


**

This is absolutely amazing. (the windows 3d demo crashes or me tho after user creation)

After a user is created if I was to save the game state would I not have to worry about them needing to login or create another user again?

Can you post the crash log to our discord channel? Here is the link: YetiTech Studios

Everything is saved (including user information) only when os shutdown is called. At the moment this is only done through shutdown command in terminal. When you execute shutdown in terminal, it will save everything and when you start again it will use the saved user info. If no password was provided it will automatically log the user in otherwise you will have to type the password.

Placeable and interactable device Tutorial
Jump start tutorial for creating your own device that can be placed and interacted in level using default assets.

v1.5 Updated

Change log: Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

v1.5.1 Updated

Mask real web URLs with your own custom URs in game.

Version 1.5.1 demoupdated!
Fixed crash issue with 3D environment.