Skip to content

plbrault/youre-the-os

Repository files navigation

You're the OS!

This is a game where you are the operating system of a computer. As such, you have to manage processes, memory and I/O events. Make sure not to leave processes idling for too long, or the user will get really impatient and reboot you!

You can play the game here: https://plbrault.github.io/youre-the-os

Also available on itch.io.

In-game screenshot

Prerequisites

  • Python 3.13
    • Later versions are currently unsupported due to an issue with the version of pygame used by the project. If needed, use pyenv to install Python 3.13 without impacting your system globally.
  • pipenv
  • An empty .venv directory at the root of the project

Usage

The main branch can be unstable. For a stable version, checkout a release tag.

Install dependencies:

pipenv sync --dev

Run as a desktop app:

pipenv run desktop

Run web version:

pipenv run web

Run sandbox mode

The sandbox mode allows you to skip the menu and immediately run a custom stage. It is provided for development purposes.

First, you need to create a sandbox configuration file. An example is provided in src/sandbox/sample.py. It is recommended to store your configuration file in that same src/sandbox directory. Files added to that directory will be ignored by Git.

Next, run the following command, replacing sandbox.sample by the Python module path from src to your own configuration file (for instance, if your file is src/sandbox/myConfig.py, the module path will be sandbox.myConfig):

pipenv run sandbox sandbox.sample

Run with an automated script:

(Original implementation by @Wiguwbe)

WARNING: Running automation scripts (including the provided example) may cause rapidly changing colors on the screen.

pipenv run auto <script.py> [args]
# to get all the available options
pipenv run auto --help

See automation/skeleton.py for information on how to write your script.

Build web version without running:

pipenv run web build

Create web.zip archive for itch.io:

pipenv run web archive

Run linter:

pipenv run pylint

Run unit tests:

pipenv run pytest

Contributing

Pull requests that address open issues labeled bug or help wanted are welcome.

If you use AI, please ensure your agent follows all instructions in AGENTS.md.

If you have an idea for an improvement to this game, please share it in the Discussions tab.

License

Copyright © 2023-present Pier-Luc Brault [email protected]

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Asset Licenses

About

A game where you are a computer's OS and you have to manage processes, memory and I/O events.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages