It recently dawned on me that I haven’t actually posted anything that has to do with my academic life. It’s not that I feel like I have to prove that I’m a student or anything, but I do think that some of the things I do in my classes qualify as relevant content. For example, I happen to be working on a game in my Game Software Development class. I call it The End Begins.
The game is done in C#, and as of now it is entirely text based (although I see Forms or WPF in the future). From a story standpoint, the game is about a cult called The End. They members are scattered across the entire spectrum of society, from street bums to CEOs. They are radical nihilists, and their view is that life is completely arbitrary. Interestingly, they believe that is is their job to “educate” others…through murder. So, they decide that at noon on New Year’s Day, every member will begin a murderous rampage. Chaos ensues, and the player assumes the roles of a group of citizens who aren’t giving up without a fight. I might go into detail about the characters in another post, as I spent a while thinking about them.
The game boils down into a simple turn-based RPG, but with many twists. Instead of the expected battle choices (Attack, Defend, Item, Flee), the game employs a system more similar to that of a fighting game. One player is active at any given point. A player has Health and a Super Meter which starts at 0. A player can switch out for another character at a cost of 20% meter. If a player simply wants to fight with the active character, they can either Attack, Block, or Throw. They form a Rock-Paper-Scissors relationship.
Attack > Throw > Block > Attack
Attacks deal 10 base damage and provide 10 meter.
Blocking does 5 damage and provides 20 meter.
Throwing does 20 damage and provides 5 meter.
This imbalance creates a psychological battle between opponents (read: “Yomi“), although in this case it’s human vs AI. I may go into my AI structure in a later post. At 100% meter, characters can do a unique super move with secondary effects such as healing or increased damage. Super moves can only be cancelled out by other super moves, and they can’t be beaten. These attacks fully drain the character’s meter. After fights, players gain an item that they can equip to a character on their team. These items activate when battle is resolved, offering even more interesting effects.
There are quite a few things that I still have to implement. I want to add special moves for each character. These moves will have a smaller cost than super moves, and they will be rooted in regular attacks. For example, a special attack can be a block, so a throw will still beat it. I also want to expand the roster of playable characters. The enemy list is always growing, and I’m working on improving the AI.