From UBC Wiki


Gaurav Vasudev, Nathan Morrissey, Ruperto Torres

What is the problem?

Have you ever wanted to grade a CPSC 312 Prolog project and play a fun choose-your-adventure game at the same time? Well now you can! And this isn't just any choose your own adventure game...This one has you rapping against opponents for cash and glory!

What is the problem? The problem is you're reading this instead of playing the game.

On a more serious note, this project will test the feasibility of creating a choose-your-adventure game in Prolog, by having different possible rule-based story-lines.

What is the something extra?

Not only did we implement the story branching mechanic based on user input -- thus proving the feasibility of a choose-your-adventure game in Prolog -- but also, within the story we implemented fun rap-battle mini-games to make our game actually fun and playable. We thank for giving us the general idea of how to make these rap-battles fun.

What did we learn from doing this?

Primarily, this project reinforced everything we had learned in class. However, we did need to learn new things about Prolog in order to complete it. For example, for our game, we needed users to be able to enter their own rap lyrics as well as their nick name. The rap lyrics were used within the same scope(body) as where they were entered by the user, so we didn't need to assert new predicates for storage. On the other hand, we used the nick name all throughout the story when referring to the player by name, so we used the built in assert predicate to store the entered nick name as a term in the "nickname" predicate.

Links to code, etc.