Game design – Game project “Terminal Escape”
For the first semester we made the game Terminal Escape about a character escaping an alien invasion. The game was a stealth based top-down puzzle game where the player had to avoid different types of hazards in the game world. The enemies include weird tentacle monsters that could only see or hear the player. The project included three levels, an end sequence with some self-made music.
The team consisted of two game designers, two technologists and a game analysis student.
My work: Modular pieces for the game world, game scripting and some music for the end section.
Tools used: Unity3D/C#.
Game Engines – 2.5D Platformer Engine
First semester course; As a team of four game techies we made a 2.5D engine for platformers with simple shaders, fbx import, physics implementation (MJK) and memory management.
Tools used: C++ / SDL.
Procedural Content Generation
During this course I have had my hands on different algorithms for PCG. I’ve had my hands on small map generations in a 2D grid but the course ended with a project in which me and a fellow student made a static map in two floors where we trained a genetic algorithm to place cameras in different places to measure the difficulty of the level by letting an A* controlled agent move through the level, which had to be possible for the genes to score high. The fitness was measured through Playability (the goal has to be reachable), Camera Distance (negative points for cameras within the distance of three units), Walked Path(the amount of steps that the agent had to traverse is added to the score).
Tools used: Unity3D/C# and Java
Modern AI For Games
In this project my group and I wrote an AI for Unreal Tournament 2003 bots. It consisted of an Artificial Neural Network to choose its weapon and a genetic algorithm to choose which state the bot was in.
Tools used: Java
My thesis was a game design experiment where I created a Metroidvania-like game that used the hardware capabilities of a Nexus7 tablet such as WiFi, battery, time and USB connection.
The game was divided into multiple sections that the player needed to complete before being able to unlock the next section (as Metroidvanias usually do). In this case the very first section required the player to plug in the usb cable to open the very first door. At the same time the inhabitants of this section (robots) would be turned on and become a risk for the player. The player could then either proceed or plug out the USB cable to disable the robots. But he would need to plug in the cable during the boss fight to be able to kill it and get the power of USB, which now allow the player to toggle that power instead of using the cable.
Another section would be controlled by the battery level of the device meaning that low battery would make all enemies easier to kill and so on.
A section was based on the WiFi capabilities and networks in range would become your friends (and enemies) based on how many where nearby.
The next section was easier to win if you came at night (realtime) and the last section was based on OpenWeatherMap API to let it rain inside the game if it was raining based on OpenWeatherMap data.
Tools used: Unity3D/C#, PyxelEdit
During the 3D modeling course I got some experience with using 3DSMax. It has further helped my understanding of UV mapping, modeling, rigging and how to make modular pieces to be used in games.
Tools used: 3D Studio Max