Hi!

I consider myself a passionate, punctual, team worker, and diligent games programmer who often likes to take the initiative. Able to work under pressure, I always love to make games to give players the opportunity to experience something unique. Currently I'm looking for an opportunity to prove my skills as a gameplay programmer, definitively relocation is not a problem at all for me to fulfill my dreams.
Feel free to have a look at the projects I worked on.

Games

Age of Wonder 3: Eternal Lords

Game Overview

Age of Wonder 3 is a turn based strategy game, where the player chooses a race and class to start building and expending their empire. The game is played on a hex based map where armie and city management takes place. Battles are fought on instanced maps where units move over a hex based grid and use different unit specific abilities.
Eternal Lords is the first expansion to Age of Wonders 3 and offers a new playble class, two races and game mechanics like Cosmic Happenings and Race Governance.


My Role

My internship at Triumph Studios allowed me to work on AoW3:Eternal Lords as a full time programmer. During my internship I have learned how to work with a large codebase and how to use the specifics of an in house game engine.
The first part of my internship was mostly fixing bugs to get familiar with the code base and coding style of the company. After a few weeks I got assigned new gameplay mechanics on which I had the responsibilty to implement and maintain during my internship.
I have done the main implementation on both the Cosmic Happenings and the Race Governance systems intruced with the expansion. This includes setting up resources, implementing the interface and, changing features based on the feedback of the designers.

Source code avaible per request.

Project Details

Tech:
    C++, Creator Engine
My Role:
    Internship, Gameplay
Duration:
    22 Weeks

Trailer
Website
Steam
POKU

Game Overview

POKU is a 3D painted adventure game. POKU is developed together by Kalopsia Games and Renopy Games. POKU is characterized by a unique 3D painted art style which is at the core of the game experience. Images of the game might present it as a 2D game, but POKU is fully 3D, and it's on this 2D-3D contrast that the most interesting puzzles of the game will be based on. POKU is set on a flying island, in a fictional universe in which the wind is both a resource and a divinity.


My Role

POKU is currently being developed by a team of four, with me being the main programmer. For POKU I try and set up different system in a way that the other members of the team can easily use it, and give them the tools to make the game.

My tasks:
  1. Node Based Conversation/Interaction Editor.
  2. Dialog System.
  3. Dynamic Camera controls.

Project Details

Tech:
    C#, Unity
My Role:
    Programming Lead, Gameplay, Tools
Duration:
    In development

Trailer
Website
Balance

Game Overview

Balance is an adventure exploration game. The player progresses through the world by using different plants to alter the enviroment.

We created Blanace as a student project in a team of 18 people. After the project was finished we continued the development in a smaller team.




My Role

For this project I acted as the programming lead, managing a team of 4 programmers. As a lead I was responsible for communication between the design and art team and inform them if their needs where possible within the engine.

Besides acting as a lead I was responsible for creating the core gameplay elements and create modules wich could be used by designers to try out different level designs.
My tasks:
  1. Implementing the core gameplay.
  2. Creating prefabs to help designers implement Level design.
  3. Creating a flexible camera system.
  4. Managing a team of 4 programmers.

Project Details

Tech:
    C#, Unity
My Role:
    Programming Lead, Gameplay, AI
Duration:
    14 Days

Trailer
Dichromacy

Game Overview

Dichromacy is a cooperative Shoot 'em Up game where each player uses a shield to deflect bullets and lasers created by the enemies.

We created Dichromacy for the Playstation 3 using the Phyre Engine as part of the Playstation First program.





My Role

The programming lead asked me to join the project halfway through the development cycle. The game had first been developed in Unity as a prototype and was now ready for a port to the Playstation 3 using the Phyre Engine.

My tasks:
  1. Implementing the core gameplay.
  2. Creating tools to help designers implement enemy waves and their behaviour.
  3. Making the controls feel responsive.
  4. Creating feedback systems for the players.
  5. Working with the designers to create a smooth player experience.

Project Details

Tech:
    C++, Lua, Phyre Engine, FMOD, PS3 SDK
My Role:
    Gameplay, AI, Feedback Systems
Duration:
    28 Days

Trailer
Swift

Game Overview

Swift is a multiplayer shooter where the player uses a gravity gun to shoot projectiles. The projectiles create push or pull force field on impact. Force fields affect all players in the near area.
The players can use these to pull other player into traps or push them out of the arena. The player can also make use of them to make bigger jump or speed up.




My Role

I was the programming lead on this project. As a programming lead I had to manage two other programmers. My daily tasks as a lead where: assigning tasks, ensuring completion and quality, handling communication between programmers and the art and design teams.
Besides being programming lead, I was in charge of creating the core gameplay and implementing the Havok physics engine.

My tasks:
  1. Managing a team of 3 programmers.
  2. Implementing the core gameplay.
  3. Creating a tool to import the levels created in Unity in to our game.
  4. Implementing Havok physics engine.

Project Details

Tech:
    C++, Horde3D, Havok, FMOD
My Role:
    Programming Lead, Gameplay, Physics
Duration:
    14 Days

Tech

Node Based Interaction Editor

Overview

I am currently developing a node based interaction and conversation editor for the game POKU. The editor is designed to give the designer the tools to create different interactions with objects and NPCs without needing the help of a programmer. The editor is set up so you can add a node and link them together. There are nodes that execute an internal function, like play an animation. Other nodes allow for branching, check if the player has acquired an item or if a variable is set.


Features

Specialized Nodes:
Adding a new type of node is only a few minutes work depending on its function. We currently have 16 different nodes, which range from showing text on screen, to showing an animation or changing a variable.
Global and Local Variables:
We decided to add local and global variables to the system to allow for a more personlised experience for the player. This way the character can react differently to objects depending on what happened before, and allow NPCs to respond to questions depening on what was asked before.
Keywords:
Keywords are used to guide the player through the game. Keywords are categorised words which will be higlighted when displayed. The player will be able to tell that asking about a certain word will lead to continuing the main quest or give the player more information about the lore.

Project Details

Tech:
    C#, Unity
My Role:
    Tools
Duration:
    40 Days

Deckbuilding

Overview

A thesis about how we could optimise deck building using search algorithms. In this thesis I research a number of algorthims and explain how they could be applied to optimise deck building in card games. Magic: The Gathering is used as an example.







Research

My research was focused on five search algorthims that I thought suitable for the problem. Combined with a specialized evaluation function they can be used to improve deckbuilding. This would result in players being able to spend more time on trying out different decks or improving their skills with a deck instead of having to focus on optimizing a specific deck.

Algorithms used:
  • Hill Climbing
  • Simulated Annealing
  • Minimax
  • Monte Carlo Tree Search
  • Genetic Algorithms
  • Project Details

    Tech:
      LaTeX
    My Role:
      Research
    Download
    AI

    Overview

    A small project I created to showcase some usage of Artificial Intelligence. Currently it features movement and pathfinding AI.








    Features

    Movement AI:
    Characters are able to move around in any environment without getting stuck or walking through walls. The user is able to select a position in the arena and the characters will try to get there without the use of pathfinding.

    Pathfinding AI:
    showcase of A* in a node based arena

    Future Content:
  • Flocking
  • Different pathfinding algorithms
  • Decision making algorithms
  • Project Details

    Tech:
      C++, Horde3D
    My Role:
      AI
    Git Reposisitory

    GameJams

    The Small Bang Theory

    Game Overview

    The Small Bang Theory is a fast paced arcade game where the player controls a particle in a Large Hadron Collider. The player can hit other particles for different effects and collect powerups to make progress more easily.

    We created The Small Bang Theory during the Global Game Jam 2012, where we finished first at the Breda jam site.
    SassyBot continued the development of The Small Bang Theory and released it on Android and iOS.


    My Role

    We created The Small Bang Theory with a team of three programmers and two designers. This constraint helped us create a game with a simple design that was easy to visualize using art created by programmers.
    My role was to work with the designers on the enemy waves and create the correct flow of the game. Making the controls feel smooth and get the speed right took its time but we managed to deliver.


    My tasks:
    1. Implementing waves of particles.
    2. Creating the right flow to guide the player.
    3. Implementing powerups.

    Project Details

    Tech:
      C#, XNA
    My Role:
      Gameplay
    Duration:
      48 Hours

    Download
    Trailer
    Tristar

    Game Overview

    Tristar is a multiplayer game where each player has its own color and will see the world only in that color. The world is filled with eggs that the players try to collect. Players can only pick up eggs from another player. Eggs become visible when the owner walks near them.
    The game is created during the Global Game Jam 2014, a contest where you create a game in less then 48 hours in a small team.
    We finished third place at the Breda Jam site.


    My Role

    This was my first time creating an online multiplayer game in Unity. Since the rest of the gameplay would be easy to implement, I decided to spend the first 24 hours implementing the multiplayer. I finished the multiplayer component in about a day, although it would sometimes spawn two players as the same color, we decided to leave it because of time constraints. Meanwhile the other programmer was working on the shading and level creation.

    Project Details

    Tech:
      C#, Unity
    My Role:
      Gameplay, Multiplayer
    Duration:
      48 Hours

    Contest Entry
    Titanic Tossers

    Game Overview

    Titanic Tossers is a turn based strategy game played as a hotseat multiplayer game. Players take turns to toss a boulder in the ocean. On impact the boulder will form an island. When the player connects three islands a mountain rises from the center and the player is victorious.
    We created Titanic Tossers during the Brains Eden GameJam 2013, a yearly game creating contest organized by the Creative Front Cambridge for students from different game schools.


    My Role

    On this project I was the only programmer, I knew this going in and decided it would be a great challenge.
    This was my first time programming for an android tablet, this was no problem since Unity has good integration with the platform.

    The major design decisions where made during the first six hours of development, so I could start creating the prototype early on. Even though some designs changed during the development progress, I managed to keep up with the gameplay. Our designer, Arie Gijsenbergh, had prior experience with programming. He implemented all the menus and integrated some of the assets to help me finish on time.

    Project Details

    Tech:
      C#, Unity
    My Role:
      Gameplay, Android Tablet
    Duration:
      48 Hours

    Play Now!
    Steelmate

    Game Overview

    Steelmate is a capture the flag arcade game played by two players. The battle takes place in trenches in which the players walk. The player can duck to take cover from incoming mortars and cannon fire. When the player is close to the enemy she can punch the other player to stun them for a short period of time.
    We created Steelmate during a practice gamejam we organized to find the strengths of our team for BrainsEden 2013.


    My Role

    Part of the challenge of this practice jam would be having only one programmer. I already had experience doing gamejams before and was certain I could pull it off.
    We adapted the initial design to be more art heavy and kept the core mechanic simple to implement. Later on we added more features to enhance the player experience .

    I enjoyed the pressure of being the only programmer, it gave me motivation to work hard and not let my team down. I started with a small prototype of capturing the flag and creating the cover mechanic.
    Later we added the different environmental hazards and interaction with the other player.

    Project Details

    Tech:
      C#, Unity
    My Role:
      Gameplay, Animations
    Duration:
      48 Hours