Friday, 28 August 2020

Adventure Games In C# – the next step

If you’ve read my book or followed my course on adventure game programming in C#, you will already know how to create a map of linked rooms which the player can wander around in order to take or drop treasures. You will be able to communicate with the game using simple English language commands such as “Take the sword” or “Put the coin into the box”. 

But what happens if there are several swords in the current location? In that case, when the player enters: “Take the sword” you want to game to reply:

“So you mean the gold sword, the silver sword or the Elvish sword?”

And when there are multiple coins boxes here, the player should be able to enter:

“Put the small silver coin into the big carved wooden box.”

In order to do that, we need adjectives – “big, small, gold, silver, carved, wooden” and so on. To implement that I’ve begun to extend the code that was supplied with my book. My aim is to create a reusable game framework of ready-to-run classes that you will be able to use to program your own games. This code is in its very early stages at the moment. The main new feature is the addition of adjectives to the parser. I have not yet defined properties to match those adjectives for the treasures. That is, while you can say “take wooden box”, the game doesn’t yet check if the box you want to take really is wooden. I’ll add that in a future update.

The game framework is called The Bitwise Interactive Fiction Framework (BIFF) for C#. I’ll also shortly be releasing a version of BIFF for Java. To keep up to date with developments and download the source code for BIFF (and for my any of my books and YouTube tutorials), just sign up to our mailing list on: www.bitwisebooks.com.