Home

Cricket Revolution

A 3D Multiplayer online cricket game by Mindstorm Studios. The game focuses on delivering fast paced action combined with tactical batting and bowling options. The result is a game play experience that is easy to get into but hard to master.
I worked with a team of professional developers and artists to take the game from its conception to its early alpha. During this time I worked on developing the game’s core mechanics and logic up to the point that a complete game could be played without most of the animations and art assets. I also worked closely with the arts teams to integrate art assets into the game as they were created.    

My contributions to the game include:
– Developing and enhancing the games core state machine for both the simulation and the GUIs.
– Developing the functionality behind the menus and team management aspect of the game.
– Modifying and enhancing a licensed game engine to add new functionality required for the game.

{%gallery_Cricket_Revolution%}



Direct link to video


Blank

Blank is a 3rd person 3D plat-former that my team is currently working on as a final year masters game project. The game took shape as a shift of focus due to the loss of our art team from the Solus project. Blank shares the same underlying engine as Solus but takes on a much more stylized approach in the arts department. The player acts as an inspiration for a fledgling artist trying to create his masterpiece, to accomplish this the player must platform across a blank canvas drawing and erasing objects from the world to help him along the path to creativity.

As with Solus I am responsible for creating the AI statemachines, trigger systems and developing the level editor which required several enhancements to accommodate the new tech for Blank.  I also worked with the shaders to develop some of the special effects for the game.

download game

{%gallery_Blank%}

Direct link to video


 

Solus

A 3D platformer game focused on rocket jumping and boss fights. The player has the ability to “purge” selected objects from the environment which causes them to explode. Exploding objects cause damage to near-by enemies and also propel the player away, allowing him to jump large distances. This game was developed as a masters final year project by Team Neckbeard.
Solus is made on the purge engine, a directX based 3D game engine our team developed from the ground up.

My contributions:
– Integrating Lua scripts into the game.
– Lua script based state machine component that is used to control NPCs.
– LUA based trigger components that can be activated based on collision, deletion or by timer.
– Debugging and fixing HLSL shader based directional and point lights.
– Enhancing the engines particle effect component.
– Tools for the game engine, including a model viewer and a level editor.

{%gallery_Solus%}



Direct Link to video


 

Purge Editor

The purge editor is a level editor for the purge engine, a 3D game engine designed and developed by Team Neckbeard as a final year masters game project. The editor provides an easy to use MFC based front end attached to the DirectX based game engine.

Features implemented in the editor include:
– Ability to dynamically add and removed components from game objects.
– A property grid that updates in real time all information on a selected game object, including information on attached components.
– Ability to drag and drop art assets into the editor which are then loaded into the engine.
– A comprehensive particle effect editor.
– A lighting editor.
– Ability to save and load levels.
– Ability to save and load individual effects.
– A toggle to switch between different shaders.
– Ability to translate, rotate and scale objects in 3D space.
– Ability to select and modify the attributes of multiple objects simultaneously.

{%gallery_Level_Editor%}


 

Nova Racer

A pseudo 3D space racing game, where players race space ships on an interstellar race track against AI controlled opponents. This was our second semester game project at Digipen and was our teams first attempt at building a 3D game engine. The final game did not quite meet our vision but the overall experience was very beneficial. During its development I learned important lessons regarding engine development and the integration of multiple components into a working engine. Overall it was a nice game given we had only 3 months to develop it and the underlying engine openGL based engine.

My contributions :
– Developed AI for opponent racers.
– Programmed the game loop and game logic functionality.
– Developed the game design and concept.
– Created the 2D and 3D art assets using paint.net and blender respectively.

{%gallery_Nova_Racer%}


A Li S

The artificial life simulation project started off when I first read about flocking algorithms a couple years back. The initial program was a straightforward implementation of Craig Reynolds original algorithm. I later on extended the program to be a more realistic simulation of artificial Life. I achieved this by adding a statemachine to modify a boids behavior, and a life cycle that allowed boid to reproduce genetically and die of old age. I had a lot of fun developing this application because I had the freedom to take it in any direction I wished, and on occasion would scrap a whole sub-system and rewrite it because I found a more interesting and efficient method to achieve the same task.

Prominent features of the project include:
– An extended implementation of Craig Reynolds flocking algorithm.
– A dynamic environment that could be modified by the action of boids.
– A simple statemachine that directed the actions of boids by modifying the weights of the flocking algorithm.
– Boids with life cycles that could reproduce and die, creating genetic variations in the population.
– An interface created in MFC with the directX based simulation running in a child window.

{%gallery_ALiS%}

code sample