Tuesday, October 9, 2007

Creating the Specifications for creating a CYOA computer game

I have decided to do a Choose Your Own Adventure computer game for my project. I know now that I will not have it finished for the Mid-Term, but I plan to continue with it for the Final Project. So what I will be doing for my Mid-Term is the technical specifications for the game (Pseudo Code and GUI), the story that the game will be based upon, and any other documentation that a programmer would need to design the game behind my ideas.

Although I do not have the entire story written, I have the basic plot summary of what will happen with each choice you make.

The story behind the game starts off with you, the main character, as a recruit for the Delphi (your home country) Army. You are at basic training camp. Playing the game you will be able to walk around the camp, do simple exercises, make the bed, talk to your Drill Instructor (DI), and talk to various other recruits. After a while of play when you talk to one of the “bad recruits” as the DI calls them, they will ask if you will desert the Army with them because they fear the impending war. This is where you will have to make your first decision. Your two options are to either go with them (2) or stay and train (1).

1 - If you decide to stay and train you will continue to play by doing exercises and listening to the information your DI tells you. After a while the DI will ask if you think you are suited for more physical training (stay a grunt, 3) or intellectual training (try and become an officer, 4). From here you will take a test no matter which choice you make. The game play of each test will be hard. Your scores will come into play at the end of the game.

3 – You decided to train as a grunt and become physically stronger and learn about weapons. Here you will play the game by practice shooting, fighting other recruits, and exercising.

4 – You have decided to join intelligence training to use your brains instead of brawn. You will learn how to make contraptions out of things around you. The game-play here will include puzzles and such things.

Now whether you chose option 3 or 4, once you complete the game-play training, you are sent to war and captured in a cut scene. (I know you don’t have a choice in this matter) From here your next to option are to try and escape (grunt 5, intelligence 7) or to wait for help or backup (grunt 6, intelligence 8).

5 – You are a grunt and try to escape from the enemy. Here you will fight your captors in a physical manner. This is where your test scores from earlier will come in play. First off if you didn’t score high enough on the physical conditioning he will kill you, but if you did then you will take him out and find a gun. Now if you didn’t do well enough in the weapons training you will be shot before you can shoot them.

7 – You are an intelligence specialist and you decide to escape. You look around and find some items to make an explosion to kill the guard while not harming you, but if you didn’t do well enough on your test then you will blow the whole place up.

6 – You are a grunt and decide to wait for help. Help arrives, but you must help them because it is a small unit. Again your life depends upon your earlier scores. If you did well you will be able to overpower them, but if not you will die.

8 - You are an intelligence specialist and you decide to wait for backup. Backup arrives, but they need you to make a bomb and its effectiveness will depend upon your skills.

2 – You decide to desert the Army with some other recruits. You are running away and realize you are being chased. You have been nominated as the leader of the group because you seem to be the only smart one of the bunch so you have to make the calls. Here you will have to choose whether to split up (9) or stick together (10).

9 – You decide to split from the other recruits. After running for what seems like hours you come across a helicopter (11) and a truck (12).

11 – You decide to steal the helicopter to fly away from the base. Your life or death depends on how well you fly the helicopter avoiding the missiles coming at you and on your sense of direction. You must fly to a safe country which will not kill you.

12 – You decide to take off in a truck. You must outdrive the soldiers that are pursuing you without blowing up and destroying the truck.

10 – You stick together with your fellow deserters. You come to a point where you are the final vote in a decision of whether to hijack a train (13) or a plane (14) to leave the country.

13 – You decide to hijack the train. Since you are the leader, you must decide which sets of tracks to follow to leave the country for a good country (bad ones will kill you too) without wrecking the train into another oncoming train.

14 – You think taking a plane is the correct choice. Since you are the leader of the AWOL soldiers you must fly them to safety. Unfortunately for you there are a couple problems. You must avoid the missiles being fired at you and you must fly to a safe country.

So if you noticed no matter which choices you make, at the end you will either live or die depending upon YOUR game-play. Most endings will end up in death since there is usually 2 ways to die while only one way to live.

That is the basic plot of the story. The game-play will go pretty much as described similar to what you would expect. I have some drawings of the decision tree, the Graphical User Interface (GUI, how the game will look to the user), and a couple other things. If you would like to take a look at them before I make better copies of them let me know.

I am going to write the actual game in the PASCAL programming language using Delphi 7 Enterprise Edition. The coding of the game will consist of moving several small bitmaps around the screen creating the image of you doing each activity. The plots of the bitmaps will most likely be stored in a 2-Dimensional Array (X, Y coordinates). The images will be moved by keystrokes (the arrow keys). I’m not really sure what else to say to describe how I am going to code the game without showing actual code from similar games that I have made in the past. If you wish to see the code let me know and I will find something to show you.


Dan said...

It looks like you have the story well thought out, though you are missing basically the ending(s). However, as you mentioned, it is still a work in progress.

Hand on heart, I am really looking forward to this...even though I am a useless gamer (it took me forever to beat Halo on easy, that is hopeless gaming right there).

The story sounds brilliant so far. I look forward to the endings.

Adam Johns said...

This is obviously a fairly early beginning, but let me comment on what I admire about it.

In a standard CYOA, you can influence the outcome, the path through the decision tree, but you can't influence its structure.

What you're proposing, the way I see it, is that the _form_ of the narrative change along with its _contents_: if you make intellectual choices, the game become intellectual, if you make grunt choices, it presents you with grunt options.

It's taking the CYOA concept, but taking advantage of the transition to a digital format.

Now, the question becomes how much of the actual programming you can get done by the end of the semester...