Category Archives: Assignments

Games Developed during the first year of Game Design- Programming

Here is a link to the drive containing the executable files for the following games that I have made and been part of teams creating, during the first year of Game Design- Programming.

https://drive.google.com/folderview?id=0B5kCdZdOyWYMfjJpbVpxV21BQnkyZ01MQ2tiZHpjMkF1MmdkQTdNNGNzU3ZTa210eFNpQVk&usp=sharing

Unity 

Sticky Situation

StickySituation

A 2 player platformer game where you have to rely on the other player as much as you to traverse the levels.

Controls: Explained ingame.

Save the Penguins

SaveThePenguins

A 2-4 player oddball game where you want to protect the child from the other penguin mothers by taking the child.

Controls: Requires a mouse input for each penguin. ASDF to dash with the penguins(not optimized for keyboard).

Testing/Prototyping

CubeTacular

CubeTacular

A Solo project Platformer prototype where you play as a cube controlling your own gravity.

Controls:Press R to change the gravity towards the closest wall or floor. Up to jump, left right to move and downwards to accelerate downwards.

Some3DFPS

Some3DGame

A Soloproject FPS Prototype where I made AI for enemies and open-able doors by shooting on a cylinder on top of the door.

Controls: WASD, mouse to look and left click to shoot.

SubZeroPlatformer

SubZeroPlatformer

A Soloproject single-player platformer prototype created as introduction to Unity. You can jump, climbwalls, walljump, and drop grenades that removes terrain.

Controls: Arrow keys to move, Z to jump and C to spawn a grenade. While at a wall press in towards it and press jump to wall-jump.

Visual Studio

The Green Warden

GreenWarden

A tower defence, try to defend the tree for aslong as possible.(Note: Have to close the program via the task manager)

Controls: WASD to move, 1-4 to choose towers and leftclick to place them.

The Legend Of Zelda

TheLegendOfZelda

A unfinished zelda clone with a couple of glitches.

Controls: Arrowkeys to move “T” to drop a bomb “Space” to hit with the sword and “R” to shoot arrows.

Game Maker 

PingPongExtreme

PingPongExtreme

A Soloproject Two Player Ping Pong tower defence game. Use the ball to take down the enemies.

Controls: Explained in the game

Anti Light

AntiLight

Single-Player spooky game where you search for a key and open a door to get to the next level, watch out for the monster.

Controls: Explained in the game.

Fika 

FIKA

Single-Player Auto-Scroll typing runner with awesome music. First game ever made.

Controls: type jump to jump and type slide to slide

Link to the games.

https://drive.google.com/folderview?id=0B5kCdZdOyWYMfjJpbVpxV21BQnkyZ01MQ2tiZHpjMkF1MmdkQTdNNGNzU3ZTa210eFNpQVk&usp=sharing

“Workshop Introduction”

So today we got a rather short noticed task… We were separated into groups of five and we were supposed to deliver a game pitch the very next day at 1 PM. Each one in the group decided a role, or we discussed about whom wanted which role in the group.

Each group received a unique “dream”, the dream was supposed to be fulfilled and contained the genre or goal our game was supposed to have. We got the dream “I want to be an olympic ice skater”.

The difference roles were: Lead Designer, Mechanics designer , Level designer, Art designer and UI designer.

I took the role as mechanics designer, since i felt rather confident that i had the right math potential ( even thought math  was not really needed)

Semih took the role as UI designer, because i do not know.

Love took the role as Lead designer, since he kind of felt like doing it .

Evelina took the role as the art designer, mostly because she is the only one in our group which is going graphics and shes great at art.

Andreas took the role as Level designer, since he wanted to.

So we discussed from 15:30 AM to 22:30 PM. The discussions were really interesting, the only problem was that we were going in to too much detail. I believe we discussed the last bosses stages and movements for three hours, though this had a reason since we still needed story towards the end.

So game play wise we figured that it would be cool to circulate around enemies to cut the ice out from under their feet, so that they plummet into the water also known as die. And after that a hole in the ice is still there and the player then gets a more difficult stage to maneuver.

Monsters will spawn in waves. six or seven different monster types. including at least one boss. And four or more stages.

I delivered the idea to have a mechanic like in ghost´s and goblins where the player has to complete the game twice at different difficulties to be able to face the final boss. But we figured that it would be too much of work for this particular task and would not be worth it to mention.

We had a really hard time to decide of which perspective we were going to use. We kept altering between aerial view to 2D to 2.5D to aerial once more and then finally we decided to use third person 3D. Mostly because we wanted to be able to see everything that happened in the crowd and be able to see the tricks that we performed as the character. Since we decided on 3D we decided to add a radar, so that the player kind of knew what happened behind him and where the holes in the ice were.  Thought game play wise we figured aerial view would be a bit more fun to play.

There is still a lot of things that we decided on but i am not able to write it all down.

In short terms, we really learnt a lot today.

Over and out!

Master AI

Me and my group( Anders, Christian, David, Isak, Kim, Ludvig) has made a game based out of sissyfight. This was of course our assignment.

Firstly we added three mechanics. 1 which is that we should place all cards upside down, 2 is that we added a reveal card and 3 is that we should have a judge to calculate all damage.

Then the next day we got a memo to change our already changed version so that it would be educational. That is why we chose it to be a quiz.

We named it Master AI. It is a quiz game where the goal is to stay alive for aslong as possible by answering questions correctly. I might post the specific rules when when assignment has been graded.

First assignment “´SpaceInvaders´ Analyze”

Our first assignment in this course was to analyze the game “Space Invaders”. We were suppose to List all the objects in the game and then figure out which properties and behaviors the objects had.

We were also supposed to do a relationship-grid of the object to easier understand how they interact with each other without thinking of the more subtle systems and variables.

Even though “Space Invaders” is a very simple and a game that is rather easy to understand there is a lot of mechanics behind it that can be applied to almost any kind of game.

I figure that this is the whole point of analyzing this specific game.

This is how i analyzed “Space Invaders”

Space Invaders Analyze – Gabriel Ajuwa

This is the SpaceInvaders version i was playing http://www.freeinvaders.org/
//The projectiles does not collide with eachother
//Shieldparts disentigrate from both playerbullets and enemyBullets.
Object: playerModel
Properties: location(x,y) coordinates, graphicsSprite, hitbox, hp,
Behavior: Movement(bounds at the end of screen)

Object:enemy1
Properties: hp, location(x,y), graphicsSprite, hitbox, score
Behavior: movement, firepattern

Object:enemy2
Properties: hp, location(x,y), graphicsSprite, hitbox, score
Behavior: movement, firepattern

Object:enemy3
Properties: hp, location(x,y), graphicsSprite, hitbox, score
Behavior: movement, firepattern

Object:ufo
Properties: hp, location(x,y), graphicsSprite, hitbox, score
Behavior: movement, firepattern

Object:shieldParts
Properties: hp, location(x,y), graphics(three different)
Behavior: Collide with bullets

Object:enemyProjectile
Properties: hitbox, damage,
Behavior: collides with shields, player and the end of screen.

Object:playerProjectile
Properties: hitbox, damage
Behavior: collides with shields, enemies and the end of screen.

Object: screenBounds
Properties: location(screenbounds), hitbox
Behavior: destroys bullets, and stops movement at end of screen
Relation-Grid

SpaceInvaders-RelationShip Grid
Firing System
Input:
ButtonPress(Spacebar)
Process:
if playerBulletOnScreen==True; Unable to Fire another bullet else spawnBullet add position(playerPosition.x+playerPosition.Y+10);
Feedback:
Sound Fx(pew pew)
drawSprite spawnBulletSprite att spawnBullet position
|
Desentigrate System
Input:
If playerBullet collides with enemy
Process:
if spawnBullets position x,y == enemy1 position x,y || enemy2 position x,y || enemy3 position x,y || ufoposition x,y
The hit enemy´s HP -= playerDamage
destroy playerBullet
if enemy´s HP <= 0; destroy enemy
if enemy1 is hit score+=score+10
if enemy2 is hit score+=score+20
if enemy3 is hit score+=score+20
if ufo is hit score+=score+ 50*randomizer 1-6(score goes from 50 to 300)
Output:
remove playerBullet
remove the hit enemy
Feedback:
remove playerBulletSprite from screen.
remove the hit enemySprite from screen.
update score on screen.
SoundFX

Input: if enemyBullet collides with player
Process:
if enemyBullet position x,y==playerPosition x,y
playerHp= playerHp-enemydamage
if playersHp <= 0; destroy player
lifes-=1
if lifes= 0
GameOver();
Output:
remove playerPosition
remove enemyBullet
Feedback:
Lose 1 life
SoundFX
animation is showed at playerPosition

Input:
GameOver
Process:
If lifes <= 0

Output:
AI stops
player loses control of the game (This might be feedback)
Feedback:
show Font on screen

Input:
if playerBullet || enemyBullet hits a shieldPart
Process:
shieldPartHp-=1;
If shieldPartHp<=0
remove shieldPart(hitbox)
Output:
remove 1/3 of the shieldPart that is hit
remove bullet
feedback:
change the sprite of the shieldPart
remove bulletSprite
remove if its been hit three times.
|
Movement System
Input: ButtonPress Left || right
Process: if buttonPressLeft is pressed playerposition-=x
if buttonPressRight is pressed playerposition+=x
Output: Player moves either left or right
Feedback: the player sprite moves either left or right.
|
Bot system
Input: Time passes.
process: some kind of accelerating for loop moving invaders in steps.
the more time that passes the faster they go.
they also fire randomly.
I assume that thier position is programmed with a 5×11 matrix.
if a enemy is shot down they should turn to 0.
enemy1 is a 1, enemy2 is a 2 and enemy 3 is a 3
also if they reach the bottom GameOver() triggers(losing all lives).
output: move the matrix to the right( increase x) then down, then left untill they reach the edge then down and it loops. I assume the matrix looks something like this
3 3 3 3 3 3 3 3 3 3 3
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 0 2 2
1 1 1 1 1 1 1 1 0 0 0
1 1 1 1 1 1 1 0 0 0 0

feedback: they move on the screen

|
Spawn Ufo
Input: Time passes hits a certain Rnd number.
process: if ufo on screen=true ()
else
Randomizes numbers every second and if the number is hit it a ufo will spawn in either top right or top left corner .
ufo on screen=false;
Output: ufo will spawn in either top right or top left corner
Feedback: ufo will spawn in either top right or top left corner
// I assume that i can find almost infinite relations, outputs, feedbacks and processes but the ones listed are the ones most important i believe. Except for a restart system which just reboots the game at its first state.