Hey, guys! This is Marquis, the original creator of the Termina project. For the past month or so, I’ve been working on this exciting, small, and fun project written in Swift. However, you might be wondering what exactly Termina is and how it came about. I hope this post will answer some of those questions.

What is Termina?

Termina is a command-line game written in the Swift language. It shares common attributes with most multi-user dungeon games such as fighting monsters, levelling up, picking up and dropping items, and talking to non-player characters. It’s also an open-source project and is available unde the Apache License.

How did it come about?

I have been working on a multi-user dungeon game for my software development class at Goucher College and wanted to compare how this type of game translates across languages. Although a bit impractical, this project definitely shows a slew of differences between Java and Swift in this nature, mostly the issues with optionals.

Will there be a graphical version?

I do plan to make a GUI version of Termina as soon as I can release the first official beta for the command-line game. So far, I’m considering using SpriteKit as the framework for making this possible. However, I do encourage others to make their own GUI front-ends for this game.

When can we expect the beta?

Soon, my friends. I’m so close to making the first beta! It’ll just take some time to finalize everything to make it perfect. But, if you are anxious to get your hands on the latest developer build, check out the releases page or install the termina-dev Homebrew package from the repos!

Is this only for the Mac?

Although I am developing for the Mac and the projects are written in Xcode, I don’t necessarily intend to make this a “Mac-only” game. As of right now, because I’m working on making a solid release, the builds are made for the Mac or anything Darwin-based. Hopefully, I can start making Linux builds soon. I’m a bit unsure of there being a Termina build for Windows due to the limited nature of Swift on Windows. There are unofficial ports and all, but I’m not sure that’s the right way to go.

Of course, this is open-source software; I’m more than happy to see others make ports of this game to their platform of choice that can support Swift.

Why’s the game called Termina, anyway?

Although Termina is a multi-user dungeon-like game, it has a lot of metaphors that translate to computers and software development. Levels and experience points are translated to versions and patches, monsters are translated to errors, and so on. Moreover, Termina is the name of the main villain in the game.

So who’s Termina, then?

Termina as an Octocat

She’s a self-aware, corrupted class (you can learn more about classes here). I don’t know how exactly she gained that sentience, but I’m going to guess that she got tired of being in an endless loop that repeats itself over and over again. She’s not necessarily going to become the most evil being on the planet, but she isn’t necessarily as sweet as Monika from Doki Doki Literature Club!, either. Currently, we’ve only seen her octocat version as depicted above.

This being said, Termina has some interesting sorcery powers she wrote herself with Swift. It’s all private-access, though, so I can’t tell you what it is. What I can say, however, is that she built the world the player is trapped in by herself after being trapped in her own world. I personally believe she still has a heart and does care; it’ll just take a while to melt away her anger.

Also, please don’t ask about her face. I have no clue what happened there.