Below are a few of the software projects I have worked on. While this is only a small portion of the software I have created, I’ve selected these projects because they are either of special note or because I can freely share information about them because there was never an NDA regarding the project.

Boltstorm

A tactical brawler with rogue-light elements and procedural levels.

  • C++
  • UE Blueprints
  • Unreal Engine 4
  • Game Programmer
  • Student

Bolt Storm is a medieval action dungeon crawler with army combat and rogue like elements. The 2017 Dutch Game Awards, award for Best Student Technical Achievement was awarded to the development team I was part of while creating this game. In 2018 it was green lit on Steam, back when their greenlight program still existed. The target platforms are PC and Xbox, playable equally well with keyboard and mouse and controller.

perfect block gif

perfect block mechanic

Tasks and used Skills
My part of the project was that of a gameplay programmer. I created many of the different types of enemies and allies that can be encountered in the game as well as the weapons and attacks available to the player. Programming, refining and iterating until the “feel” of Boltstorm’s combat was just right.

kinetic movement gif

dynamically modifying animation with lean

During this project I ran the gambit of gameplay programming. I worked on the mechanics for movement, combat, controls, animations, progression, interface and AI behaviors. Improving, fixing and creating new systems and mechanics for the game. Working closely with other programmers to fit in puzzle pieces that made their work easier, and cooperating with the designers to realize their vision of what the game could be.


Online Casino Games

Modernising a library of games for Mobile Devices

  • Javascript
  • Java
  • HTML5
  • App Developer

For the company behind GamingAndGambling.com, one of the projects I worked on was converting their library of games in legacy Actionscript/Flash to modern Javascript/HTML5 equivalents. This was a sizable project as there were over a 1000 games, fortunately casino games are often variations of one another. Games with cards on a table have a lot of reusable code that can be shared between them, different variations of roulette and slot machines have similar challenges that can be solved by applying technical design and smart software architecture to build casino games using replaceable modules as puzzle pieces.

Pirate Bay Background

previous interface style

Tasks and used Skills
Both the frontend interface functionality and design and the Java backend were important for this project. Because this involves actual money being won or lost by players, security and reliability are very important. There are 3 layers of security separation and I worked on 2 of them. The “middle”-server is a Java application running on a Linux host that models the game. It ensures the rules are being followed, calculating and double checking card draws or reel spins as it handles the player’s bets. It communicates with the Javascript client using JSON over HTTPS encryption, carefully checking anything received to ensure the Javascript client has not been modified to send manipulated responses.
The demo in the slider above does not connect to any server, it is in local debug mode.

Blackjack For Mobile

mobile interface

The clients I worked on are all prototypes for genres or types of online casino games. Converting the entire library of games on my own would take years, I instead created 1 client for each category of game in the library and carefully documented how it could be modified. I then supervised contracted web designers and artists to take the old Flash clients, and recreate each unique game in the library by modifying the prototype game I had supplied them according to the instructions.


Gravity Swing

A physics based puzzle game targeting Android and iOS touch devices.

  • C#
  • Unity Game Engine
  • Game Programmer
  • Team Technical Lead
  • Student

Gravity Swing is a colorful and casual puzzle game targeting iOS devices, that I acted as the Technical Lead for during my education at NHTV, IGAD. It is a game about crashing your spaceship into asteroids and moons for rewards, but also needing such celestial bodies to change direction. Destroying as much of the level as you can, as fast as possible, but without destroying so much that you become trapped.

Gravity Swing Physics

~Physics~

Tasks and used Skills
The game’s graphics and mechanics are intended to run on 2013 era phones and are not exceptionally fancy. A lot of the technical work on this game went into gameplay programming to create a variety of mechanics that could be used in a variety of puzzles to keep the levels of the game increasingly challenging and introduce new things as the player progressed. Working with the designers and testers to ensure the mechanics and interface are intuitive, so that the curve of the difficulty goes up smoothly as the player progresses though the game.

Colorful Artwork

colorful graphics

As the technical lead I also put work into working with 2 other programmers to ensure the code and graphics were optimized to optimally use the processing and memory of 2013 era phones. The multi-platform support of the Unity Engine was very useful for this aspect. The android version was an easy conversion, but some of the quirks of iOS and the authorization requirements of Apple’s uploading process presented a number of challenges that I managed to overcome.