top of page

POLY PROJECTS

Final year project 2

For this project I was team up with one programmer and one artiest and we created a diablo like game where players have to fight through waves of enemies and navigate a randomly generated maze to get to the next level and get stronger by spending gold drop by enemies and the end of the level. 
What I did:
  • Player
  • Random generated maze
  • Enemies

Player:

I created the player 2 different attack state, one heavy attack which was the hammer and could block but would drain stamina the longer you hold it and a light attack which was the rapier where the player could throw the rapier and teleport to it once it had landed. I use unity animation state to help make the animation of the player and enemies smooth between the transition of their different attacks and movement. I also did the player UI and stats whenever they would get stronger.

Random generate maze:

In order to create our random generate maze we first had a few pre structure sets containing the lighting and decoration of a room, where each side could have a door to another room or just a dead end, after that we allocate the size that we want and from there the map will randomly generate a path to the exit and create the level base on the given path.

Enemies:

I create the the spawning of the enemies where they will spawn when the player is a room or two away. They will chase the player until a certain point, and although they have simple chasing AI the archer will not chunk up together and shoot from afar. The ring around the archer is to indicate when they will fight.

Final year project 1

LooWhiz

LooWhiz

Watch Now
For this project I was team up with one programmer and two artiest and our project was to recreate LooWhiz from the ground up for mobile (android and ios). The goal of the game is to clean up messes left by the Npc and try to get as much points as possible
What i did:
  • Npc
  • Player
  • Level desgin
  • Menus

NPC:

For the Npc, I program a state machine for their A.I where at different location they would do different things and leaving the correct mess, random way-point system for the Npc where they would take in random way-points depending on which state they are in and move accordingly, this is to make it so that the AI is more realistic rather then them always going on the same path. I also all of their sprite animation using unity sprite animation feature and randomly spawn different Npc.

Player:

I created the players controls for mobile so that whenever you touch on the screen the player would go to it, UI for selecting the different tools to use in cleaning up the mess left by the Npc if they area near it. I also did all the sprite for the player. Player was one of the most annoying to do as there were lots of checks needed for it like swapping tools when cleaning was not allowed etc but with some perseverance i manged to completed it in time.

Level design:

For level design, I created all the levels and way point needed for the Npc to move about and the mood meter for the player to complete the game 

For this project me and 3 other members created a 2D multiplayer game where one player plays as a knight that can't see at all but can fight off the monster and the other player plays as a oracle who can see but can't fight at all however he has the power to give the knight vision by clicking on the screen to illuminate around wherever he click to 
What i did:
  • AI (A*)
  • State machine
  • Audio with Option

Studio Projects 4

AI (A*):

This was the biggest challenge for this project as i wasn't sure if i was capable of completing this task but after watching videos and with much determination I managed to complete it. First I had to differentiate walk-able tile and unwalkable tiles, then after storing all the walk-able tiles I use an algorithm to calculate the shortest path from the monster to the player and update it whenever the player moves and to reduce the calculation even faster I have a sort system to half the time it takes to find the path.

 

State machine:

I create state machine for the monster to have the illusion that there were lots of monster around the player, I spawn monster around the player on walk-able tiles and when the player is too far it destroys itself since the levels is a maze it feels like there's a lot of monster also when player kill enough monster there will be a fever moment where hordes of monster will start spawning.   

Audio with option:

For audio, I did an option page which will store the level of volume even if you close the game and had sounds for sound effects and background music which both and be adjusted with sliders

Studio Projects 3

For this project me and 3 other members created a 2D RPG game where the player has to capture their ammo in order to kill enemies and they have to defeat 3 different element levels in order to open up the boss stage and defeat him.
What i did:
  • 8-point player hitbox
  • Fire level and monster
  • Boss level
  • Projectile hitbox collision
  • Sprites animation
  • Particle effect

8-point player hit box:

I implemented 8 points on the avatar on all 8 direction and whenever any of the points collide with a different tile , the player will be unable to move in that direction. I decided to do it this way as it is quite accurate on a tile map.

Projectile hit box collision:

Due to having different kind of bullets, I had to do a few different collision methods like point to box collision or box to box collision where I calculate the width of both objects and check whether they collide or not. Like for example for the net projectile, I shoot a point projectile at first then when it hits something it will disappear and spawn a big square net where it will catch any wisp inside of it using a box to point collision check.

Studio Projects 2

For this project me and 3 other members created a 3D sci-fi world that has 3 world and a boss in each. Players are able to choose from 3 different kind of race each arm with a different set of skill and characteristics and are also equipped with basic equipment but as they kill more they get coins to buy better guns .
What i did:
  • Player movement
  • AABB collision
  • Design of worlds
  • Robot boss and monsters
  • Crates with health packs
  • Character selection

AABB collision:

I decided to do AABB collision as at the time it was the most accurate and simple way of doing collision and there was much of a need to do a more accurate collision. I calculated the distance between the two object and stop player movement of that direction or take damage if its a monster.

Crates with health packs:

Using a list, I spawn crates that drops either a big or small health pack that will heal the player on use and whenever they destroy it, it will spawn another one somewhere on the map.  

Game development project - 03

We created a simple 3D world where u have to find your gun and its parts to defend yourself from the hordes of enemies.

What i did:
  • LOD(level of  detail)
  • Scene graph
  • Entity Manager
  • Spatial Partition
  • Weapon class

Spatial Partition:

I separate the ground in grids, by doing this i can then calculate collision which is in the same grid as the player, this make it so that i don't always doing unless calculation.

LOD:

By calculating  the distance of the player and any objects, i can change the level of detail of the models that are loaded therefore reducing poly count which makes it easier to load objects in and it helps with frame rate.

Scene graph:

This allow me to create relation between objects, which allows me to destroy object either one at a time a the core object which will destroy the whole combine object, like for example the monster in my project, u can destroy the shield first before shooting the main body or if u can aim carefully and shoot the eye u can destroy the monster entirely.

Entity Manager:

With entity manager, i can easily add and remove entity of objects like the trees, monster etc. I can only add collision inside which will make it easier to do collision on any object.

Game development project - 02

This project required us to created a 2D platform game. The goal was to reach the end by collecting the pickax. The player can only walk left or right but different colored tiles have different effect, like for example, the blue tiles allows the player to jump, green tile allows player to grow big and orange tile allows player to shrink.

What i did:
  • AABB collision
  • tile collision
  • parallax scrolling
  • Tile rendering from csv file

Parallax scrolling:

Parallax scrolling allows images to move around the website at different perspectives and speeds, thus giving the illusion of both depth of field and movement of the avatar.

Tile rendering from csv file:

All the tiles position are based on the csv excel file. Different types of tile has its own number. By using those numbers into the csv file, i can control how i want the level to be.

Maya works

Computer graphic 

Implemented features 
  • Shader
  • Particle effect
  • Shadows
  • Rendering terrain 
  • Billboard
  • Sprite animations
  • Multi texturing 
  • Lighting
bottom of page