A few days ago I decided to work on a project just for fun. I called it Constellation because it sounded cool. I had no big plans or expectations for the code, I just wanted to have some fun with it for a few hours. I decided to use Ruby and try to see real results in one night. Usually these little projects don’t turn into anything and I toss the code into an “archive” to reference a couple of times a year, but this one’s different.
Writing my own text-based game engine is something I have wanted to do for a long time. I’ve played MUD‘s off and on for years and there’s something I like about text adventures. It’s like comparing reading a book to watching a movie; it’s a different experience. There is no lag, no glitchy physics, flickering textures or any of the other problems that graphical games can have to break the player’s immersion. Imagination can create more moving visuals than the most advanced rendering technology.
I usually use Ruby for making websites with Rails so it was nice to use it for something different. It’s definitely the most enjoyable language I’ve used to date. The syntax makes programming a breeze and a dynamic language is wonderful after working in C++ for a few months. In Constellation I’m trying to use things like symbols and duck typing regularly to really take advantage of the language’s nature.
It was a lot of fun to work on that night so I kept thinking of new features and adding them on the spot over the next few days. I think I’m going to continue working on this and maintaining it for a while. It will be the inaugural project in my journey to get more involved in the programming community.
Contribute or just have a look on GitHub.