Inspiration

We wanted to make something other than the typical webapp project. We're all interested in low-level stuff like computer architecture, so a shell seemed like a good fit.

What it does

  • Run commands, just like any other shell
  • Commands cost mana, which can be regained by drinking potions
  • Nonzero exit codes cause you to lose health
  • Embark on a quest to slay a dragon
  • Summon ancient wisdom with the help command

How we built it

In C, using standard Linux OS libraries such as GNU ReadLine.

Challenges we ran into

Working with strings in C is annoying. They require careful consideration of input size and allocated memory that most modern languages usually do for you. However, we used the ReadLine library to make some of the work easier for us when it came to input.

Accomplishments that we're proud of

Writing a functioning shell in C that looks kinda cool.

What we learned

We got a ton of experience programming at the operating systems level and C programing.

What's next for RPShell

More quests, more ASCII art, more custom ç̵̡̩̘͉͖̬̝̩̤͔̽͗͑̋̈͗̓̔̓͐̔͘͜͝o̸̧̨̡͚̳̗̥̻͖̙͉̳̒̄̇̊̇͑̒̂̾͛͐̏͒̊ṃ̷̢̡̢̙̻̫͉͚̬̯͔̹̥̣̈́̌̽͛́̈̈͊̾̋̾̔̕̕m̷̛̯͔̙̘̦̰̹̩̙͔̩͋̓̉́̆̅̄̄̆̎̋̽͜͝ą̴̡̡̡̡̤̻͔̩͔͓̻͎͔̈́̏̿̒̆͊̓̌̌̆͛̄̂̕n̵̞͔̪̗̘̖̺̠̩͎̗̭̓̓͋̎͊̾̋̋͊̑̌̓̓̇d̶̢̨̡̛͓͈̰̬̮̣͉͕̗̍̆̾̅̈́̿͌͂̀͑͒͝͝͝s̵̨̧̜̹̝̭̘̩̞̙͕͓͔̓̍̔́̌͒̉̽̋̄̍̈́̋̅...

⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣤⣤⣤⣤⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣾⣿⣿⣿⣿⠿⠿⠿⠿⢿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⢀⣾⣿⣿⣿⣿⠟⠉⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣧⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠸⣿⣿⣿⣿⣿⣧⠀⠀⠀⠠⡀⠀⠀⠀⠀⢀⣿⣿⡏⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⡷⣄⠀⠀⠘⠷⣦⣤⣶⣿⡿⠋⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠻⣿⣿⣿⣿⣶⠛⢓⣦⣀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣿⣿⡟⠉⠉⣹⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢿⣿⣿⣿⡿⠛⠉⠉⣧⡀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣧⣤⠤⠶⠿⣷⡀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⠁⠀⠀⠀⣨⡇⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⣿⣿⣿⠿⠶⠶⢿⣿⡇⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣿⣿⣿⡏⠀⠀⠀⠀⠀⣽⠁⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⢀⣠⣶⣿⣿⣿⣿⡿⠿⠿⠶⠶⢶⣶⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

Built With

Share this project:

Updates