Thursday, April 5, 2012

I Lied and Zombie Bowling!

I lied; I changed our prototype three game to a zombie bowling game instead of the radioactive baby game. I needed to spend more time coding the GDW so I decided to do the zombie bowling game since I already had a vision of how I was going to code it.
The features that make this game unique is how the zombies act as bowling pins but they approach the bowler (player) and jump (like the famous Chinese zombie Jiang Shi) which gives them a chance to hop over a bowling ball.



The zombie bowling game takes place in a dark setting. There is a creepy zombie baby (made by our talented artist, Tuo Xiao aka. Stone) that spawns the zombie pins. The zombies continuously spawn and the spawn rate increases over time. The bowler is limited to one bowling ball per second, this way they don’t spam bowling balls. To bowl, the player must click and drag in the direction of where the player wants the bowling ball to go.
I designed it so it’s easy to pick up and play, anyone can play it, you just hit the start button and then click, drag and release towards the direction you want the bowling ball to go. It would work perfectly for the iPhone or iPad.

Here’s a screen shot of the game

PS: I used cylinders  as the zombie pins because we didn't have a model for the zombies. :)

Monday, April 2, 2012

Prototype 3!


As for our prototype 3 assignment we had to create a game based on a game idea in a given list. We choose the idea where the player carries a radioactive baby in a pitch black environment and the baby would act as our torch. Rocking the baby will intensify their glow.
To make this idea into a game, we are going to have coloured paths and the player must be on the correct coloured path based on the baby’s glowing colour. The player must make it through the paths and to the finish in order to win. I’m still trying to think of more ideas to make it fit well together. I need to design it so the game would be easy to begin yet challenging and fun. The style needs to work otherwise it would look like another amateur game project.
I’ve added a few more features into our GDW game. There’s 2 weeks left to work on our game and I’ve been working on the game, the engine for our game is complete and I’ve been adding game play features. Since I’m the only programmer, there isn’t much time left to complete this game and I will be working full-on. It would be quick to add features now that the engine is done.

PS: Posted this before class in the middle of the night! Doesn't count as late!! LOL

Monday, March 19, 2012

A* Lag and Group Disagreement

I haven’t posted in a while but here’s the update of how I’m doing. As I said before I’m the sole programmer in the group so I have been designing the programming structure and programming a lot and have done a lot of problem solving. I decided to do A* for our game since our game is a top down shooter and there will be waves of enemies closing in on the player and his elite military squad. The game has some dead ends and it will be difficult for steering-behaviours to steer around the dead ends. We also want the enemies’ movement to constantly moving towards the player cleverly (thus it will need the shortest route).

I had an disagreement with a fellow group mate as he kept telling me to use steering behaviours and not A* because he thinks A* is wrong and out dated, but with my horrible explanation skills I had a hard time explaining to him that Steering behaviours wouldn’t take the most efficient route to the target and steering behaviours may get stuck in dead ends or go the wrong way in in our type of map. The enemies need a path generator to get out of those situations and a good enemy script would use both steering behaviour and a path generator. Unfortunately this disagreement caused some delay in the production of our game and the group’s motivation had been damaged.

Even Starcraft uses it (images taken from http://www.teamliquid.net/forum/viewmessage.php?topic_id=132171):



Anyway, I dug out my A* code I coded last year in second year and threw it in the game and it worked beautifully. Only problem was, since our game has waves of enemies (I coded it to have a maximum of 100 at a time), the game started lagging whenever the enemies needed to generate a new path. I thought for a while and I came up with a solution (which I haven’t coded in yet since I’m coding in other features for our game) which was to multithread the A* path generator. This way, when there are delays when generating a series of paths for a series of monsters it wouldn’t affect the other elements of the game.

Here’s a screen shot of my year 2 A* program:

PS: I just wanted to say, another fix I thought of would be to use swarm AI and steering behaviours to avoid obsticals and then use A* for the lead unit in the swarm, the rest are following the lead this way I don't need to keep generating A* paths but I wouldn't be using this because of time and it doesn't fit our style of game play, the enemies should swarm together as a group, instead individually move towards the player and his squad.

Tuesday, February 28, 2012

A game for a 35 year old canadian men.

For the group's prototype 2 assignment I decided to create a demolition game with a wrecking ball.

After some research I found that the average age of gamers are around the mid-thirties and the most common game genre is common games that are easy to pick up and play. It makes sense because there are several types of gamers; Casual gamers, Mid-core gamers, hardcore gamers, pro gamers, etc. Research shows that the older gamers (30ish+) tend to be the more of the casual gamers.

Our prototype is called “Building Smasher” and I made it very simple yet challenging. I tried to make it a casual, simple yet challenging and appealing to the average 35 year old Canadian guy. The player only uses the arrow keys to move the wrecking ball crane. It can take a while to master the maneuvering of the wrecking ball because of the rope/chain.

Destruction is proven to be a guy’s thing so that’s why I chose to do the wrecking ball.

The player wins and progresses to the next level when they demolish the building to a curtain height before the time runs out. What makes the further levels harder is the reduced time and increased building size. The player’s control over the wrecking ball is the key to success in this game.

Monday, February 13, 2012

Prototype 1 = Mechanics of Space Invaders in Unity!

I forgot to mention about my First prototype. Last week, We are supposed to create a fan remake of an classic Atari-2600-type game from the given list:
a. Defender, http://en.wikipedia.org/wiki/Defender_%28arcade_game%29
b. Crazy Climber, http://en.wikipedia.org/wiki/Crazy_Climber
c. Galaxian, http://en.wikipedia.org/wiki/Galaxian
d. Space Invaders, http://en.wikipedia.org/wiki/Space_Invaders
e. Xenophobe, http://en.wikipedia.org/wiki/Xenophobe_%28video_game%29
f. Slot Racers, http://en.wikipedia.org/wiki/Slot_Racers
g. Fishing Derby, http://en.wikipedia.org/wiki/Fishing_Derby
h. Wizard of Wor, http://en.wikipedia.org/wiki/Wizard_of_Wor
i. Centipede, http://en.wikipedia.org/wiki/Centipede_%28video_game%29
I chose to do Space Invaders since I could quickly visualise a clear and organized way to code the game. The game would require all the features in the orginal, these features are:
-Player Shooting
-Enemy Shooting
-UFO
-Lives
-Score keeping and increment value based on enemy type.
-Player Movement
-Enemy Movement (moving down after a unit reaches the left or right boarder)
-Lost when no lives are left
-Lose when enemies reach a certain depth towards the player
-Destructible Barriers
-Enemy removal after being hit by bullet
-Removal of player lives when they are hit by an enemy bullet

Here’s a screenshot:


As for our group game, I’m the sole programmer since no one else in the group has strong programming skills and in the end I’ll just waste more time fixing people’s code then doing something else more productive on the game.

I‘ve set up all the code base for our game and they are mainly header file for game objects that will be used, such as enemy, player, ally, bullets, game managers etc.

Thursday, February 9, 2012

Magic the Gathering - Assignment

For our assignment we were to create 3 simple magic cards and explain how we calculated the stats on the card.



Four Legged Spider Pack: +2 for colour, +2 for colourless, +1 for base. Total of 5 points.
 Fire Master: -1 for being a red card, +2 for colour, +4 for colourless, +1 for base, +1 for using more than 5 mana. Total of 7 points.
Mind Controller: +2 for colour, +3 for colourless, +1 for base. Total of 6 points.

Thursday, February 2, 2012

Summon Night: swordcraft Story (GBA)

Summon Night: Swordcraft Story is a member of a famous Japanese RPG series, "Summon Night". This game plays on GBA platform.

Here's a graph of all the resources in the game that effect the game play and have some sort of equation to it. When I started linking all the elements together the graph got more complex. I found that Health is the central resource, everything evolves around it.