The Hyperion Project
The fine folks, educators and all round good guys over at 3D Buzz created an amazing series of C# and XNA programming video tutorials. As part of the “hello world” application an entire game engine for a simple Text Adventure game is created, and lovingly called The Hyperion Project.
However during the course only the game engine itself is coded, thus lacking any overall game to put out. So i decided to move on with the programming and create my own text adventure game as a side project. Time however is a bit short, so i wanted to put out a call for help for any interested parties out there with a good idea.
Details
What happens if you are interested is that you will be writing the story and designing the level using the accompanying design specifications. I will then implement the story, game rules and level into the game engine itself and provide the compiled game. The reason being that i am not sharing the source code. Not because i don’t want to share (i will develop primarily open source myself), but out of respect for people learning from the tutorials themselves. People will not learn anything if they can find the entire source code available and just mess about it. However if you are a student of the XNA Xtreme 101 class you should have the engine yourself and thus be able to collaborate on the game more easily 😉
Design instructions
1: ///////////////////////////////////////////////////////////////
2: // Create the XXXXXX room
3: room = new Room();
4:
5: //Assign this room to location (1,0)
6: rooms[1, 0] = room;
7:
8: // Setup the room
9: room.Title = "Blue Room";
10: room.Description = "You have entered the Blue Room";
11: // Add available open exits here
12: room.AddExit(Direction.West);
13: room.AddExit(Direction.South);
14:
15: // ITEMS
16:
17: //Create a heavy 6kg anvil
18: item = new Item();
19:
20: //setup the item
21: item.Title = "Anvil";
22: item.PickupText = "You struggle to pickup the anvil, and dump it into your BIG pockets";
23: item.Weight = 6;
24:
25: //add item to current room
26: room.Items.Add(item);
27:
28: //Create the green ball
29: item = new Item();
30:
31: //setup the item
32: item.Title = "Green Ball";
33: item.PickupText = "You just picked up the Green Ball";
34:
35: //add item to current room
36: room.Items.Add(item);
37:
38: //Create the Key
39: item = new Item();
40:
41: //setup the item
42: item.Title = "Key";
43: item.PickupText = "You just picked up the Key that unlocks a door";
44:
45: //add item to current room
46: room.Items.Add(item);
The above is basically how to create room that make up a level in Hyperion. Each room is laid out in a grid starting in the upper left hand corner with coordinates (0,0).
Each room can contain a number of items, a description, exits (north, south, east, west).
After creating the rooms a set of game rules is needed. Examples can be written in plain text e.g “when blue ball is dropped in blue room XXXX happens”.
A starting room is also needed as well as what causes the player to win/loose the game.
Finally everything should be send to me in a plain .txt file and I will compile the game and publish it. Of course you should include any credit you want noted in the game.
PS: I am posting this here because at the moment i don’t have a lot of time to make up the contents of the text adventure itself. I wish to continue to get further with the XNA Course since graphics programming is more to my liking right now. But i still wanted to give people to option to get into this easily 😉 Plus then we could develop the game further later on :p
Leave a Reply