Rogue Process (working name) is a terminal (-eque?) game in the spirit of rogue and nethack. It teaches the Linux Bash Terminal through a text-based dungeon-crawling adventure.
Characters and ideas from Operation SpyRat: Encrypted Rat will appear in the game. This has the side benefit of establishing precedence for these characters, so some players will recognize them when they appear in that later game.
To prevent a featurectomy later, here are features we will NOT be adding to the initial version of game.
- Variable conversations. All conversations should be pre-scripted. We don't have the time to create variable outcome conversations. In this version.
- Advanced terminal concepts. We will stick to the absolute basics of Bash. We will NOT be covering:
The game is intended to teach generic Linux. However, there are some differences between distros that would affect the cast of characters. Thus, we should provide the option to set the game "distro" from one of the four basic distros.
- Arch Linux
A system has been taken over by "rogues" - bugs, glitches, viruses, and worms, led by an evil wizard called Trojan. The ruler of the system, King Root, was taken prisoner by Trojan, along with many of King Root's advisers. One of Root's palace wizards (named for the system package manager) summed (installed) the player.
apt install player
You are greeted by the exiled security background process, Damian. He serves as your primary companion throughout the game.
- Damian (probably ClamAV), a security background process, and your primary companion. He is able to fight viruses, worm, and Trojan.
- Ida, an integrated development environment. She is powerless herself against bugs and glitches, however, as she can't do anything without X's power. She does, however, know where to find several programs that can help (the compiler, debugger, etc.)
The Knights represent the basic programmer's toolkit.
- Sir G.C., (GCC), a program with the power to recompile programs. G.D.'s brother.
- Sir G.D (gdb), a program capable of exposing hidden bugs and glitches. G.C.'s brother.
- Sir Mackie (Emacs), a knight capable of rewriting other programs. Vi's bitter rival.
- Sir Man (man), a knight who is has extensive (if cryptic) knowledge, but is otherwise useless in a fight.
- Lady Val (Valgrind), a knight capable of exposing hidden bugs and glitches.
- Lady Vi (Vi/Vim), a knight capable of rewriting other programs. Mackie's bitter rival.
- Apt/Yum/Pacman, one of Root's chief advisers. He summoned the player.
- King Root, the ruler of the system.
- Tux (the Linux kernel), a penguin. He was rogue-patched by Trojan.
- X (X Window System), one of the advisers to Root. He is not freed until much later in the game.
Various minor characters representing popular open source software will appear. Some change depending on the game's selected distro.
These are the enemies in the game.
- Wizard Trojan, the lead villain. His name refers to the fact that a trojan downloads other malware. He also cursed many citizens of System (he rogue-patched them, introducing Bugs and Glitches).
- The Bugs, beetle-like creatures that latch onto citizens and cause them to do bad things.
- The Glitches, ghost-like creatures that haunt citizens and break things.
- The Viruses, nasty looking brutes that bully the citizens.
- The Worms, grub-like monsters that lurk around the system.
- Sir Fork, a fork bomb. He's one of the bosses you have to defeat.
The game should be entirely text-based, with ASCII Art graphics. (We may want to snag code from cowsay for rendering speech bubbles and changing facial expressions.)
It may be beneficial to have a very basic GUI for the game, with a terminal-style output window, an input box, a hint box (who is with you, what commands can you run, etc), and perhaps another output box for rendering ASCII art with speech bubbles?
All actions in the game require various bash commands. For example...
- Moving to a new location requires a command like cd left, cd down, or cd .. (back one level).
- Looking around the room requires ls (like a torch). (ls -R would help the player see into later rooms.)
- Talking to a character (a program) would require calling their name. Companions can be invoked directly (damian, mackie), while characters in the room can be invoked in local directory (./tux).
- Links act as "portals" (soft link) and "tesserects" (hard link, borrowing term/concept from A Wrinkle in Time) in the game. They can be created via ln -s and ln respectively, of course.
- Opening chests involves using some file-viewing tool, such as less or 'cat`.
- You can rebuild buildings (directories) using mkdir.
Determining combat is going to be hard, since most commands don't work on the baddies (you need sudo and mv and/or rm). It should be similar to most rogue-style games.
There are a number of things a player can do in the game.
- Collecting "tools", "artifacts", and/or "skills" (commands). The player starts only with cd and some command for opening chests.
- Finding companions. All characters are, of course, computer programs. Some will join you on your mission.
- Gaining authority. You must rescue King Root, which is the proverbial ruler of the system, to get the Royal Signet Ring of Sudo. Many programs and actions require royal authority (sudo).
- Aiding the Knights of the Hex Table in removing Bugs and Glitches from citizens.
- Fighting Viruses and Worms alongside Damian.
- Rebuilding the Firewall.
- Damian's name comes from "daemon", a background process. He doesn't like being called a daemon, however, and insists on being called a "background process".
- At some point, someone needs to mention that Damian feels "clammy" (he's an avatar of ClamAV after all).
- When we first meet the system ruler and ask who he is, he should answer "I am Root." (I am Groot).
- A room is named cake. When the character moves over to cake they find themselves teleported to an entirely different room. And so a character then says "Huh, I guess the cake is a lie."