Mixed-Initiative Tile-Based Designer
- Computer science fundamentals
- Strong mathematical background
- Graphics, UI and game design specialization
Hi! I'm Rafael, a Computer Science student graduating summer 2021 who is specialized in graphics and human-computer interaction. My coding interest began early. I was first exposed to code in a level editor for a game called Neverwinter Nights, which employed C++ code. From then on, programming gripped my interest. I spent two full summers in 2012-2013 developing a comprehensive custom mod to Amnesia, which managed to provide some much-appreciated gameplay experiences in Confusion: An atmospheric custom story. My most ambitious project to date, however, is Lost In The Open. It is a fully-fledged game as feature-rich as many published indie-games. There are plans to get more people involved to polish and refine the game for release in the future.
Please feel free to contact me if you have any questions.
KTH Royal Institute of Technology
Master's Degree in Computer Science - -
California Polytechnic State University
Study Abroad - -
English I - -
EF Education First
Front End Developer Intern - -
Mixed-Initiative Tile-Based Designer
Lost In The Open
Confusion - An Amnesia Mod
Clicker - A React Native App
Mr. ChChaplin's Factory
Procedural Generation of Grass
A Heist To Die For
Run Little Humans
Mixed-Initiative Tile-Based Designer
is a highly customizable framework for producing procedurally generated 2D maps. It does not require programming
knowledge to produce levels with, although building a game on top of the framework does.
The framework uses a multi-layered approach to procedural content generation. First it produces a mission layout. This mission layout is an abstract representation of the tasks that the player may encounter throughout the level. On top of that is the space layer. This is yet another abstract layer. The purpose of this layer is to translate the mission layout into a 2D tile-based overview of the final map. Finally, the overview in the space layer is transformed into the final level. The final level is built out of macro-templates which may in turn be built out of micro-templates. After the final level has been constructed out of the macro-templates, the level is finished.
Every layer is customizable. The user designs:
Lost In The Open is a top-down turn-based strategy rougelike. It is a large-scale project with 20000+ lines of source code spread over 200+ C# files. It has two main components of gameplay. Strategic decision-making for navigating the world map and tactical combat for surviving enemy encounters. There are numerous systems designed to support this dynamic gameplay. In the world map navigation, we have systems, including but not limited to
Confusion - An Amnesia Mod is an Amnesia custom mod created in 2012 and finished 2014. It garnered many thousands of players, many let's plays on YouTube and a high rating on MODDB. The game has several thousand lines of code to implement many events, puzzles and flashbacks. The main source of learning from this project is its extensive work of game and level design. It also introduced me to programming.
Additionally, this project features many custom ambient tracks and SFX, voice acting performed by multiple people and 3D models made in Maya.
Designed a game with Jacob Wiklund called ‘Clicker’ where you compete over who can click the fastest. We constructed a login system, a lobby, a profile and the game itself. Accompanying the React Native frontend, we engineered a Node.js server with accompanying SQL database to handle interactions between players.
Astaroth's Uprising is a game made during Mini Jam 73 with the theme power. It is an top-down RPG game where you play as Astaroth and gain more and more power by stealing power from your enemies.
Our team consisted of five people: Me as game programmer, CoastalKindred as sound designer, Josh/Klein as music composer, Gherod as narrative and level designer and Fallgazer as 2D artist.
Mr. ChChaplin's Factory is a tower defense game made during the 2020 Global Game Jam. It has the twist that the builder can transport and repair broken turrets. There are three types of turrets: regular turret, big turret and obstacle turret. Each is necessary to survive.
Collaborated with Cheemis, a tech artist specialized in 3D models and animations.
Procedural Generation of Grass Field in Unity3D is a reimplementation and improvement of Markus R. Tillman's bachelor thesis Procedural Rendering of Geometry-Based Grass in Real-Time. Most notably, the implementation uses Perlin noise and normal distributions to achieve more realistic grass than the original implementation. The last three images are comparisons with Markus R. Tillman's bachelor thesis.
A Heist To Die For is the final project of CSC 371 - Game Design. It is a level-based progression game, centered around doing dangerous and risky heists around the city of Land Moes Sisco. In each level, the player chooses between four robber types, each with unique properties suited for different situations. The goal is to rob the vault, and escape with the money.
Featherfall is a game developed with C++ and OpenGL. The goal is to help guide the arctic goose chick as it falls down the cliff. Go too fast and the chick is harmed on impact with the ground. Go too slow and the eagle catches up to its delicious dinner. Bump into the rocks and branches to keep control of the speed. (Go for the branches, they won't hurt as much.) And get the chick safely to the ground.
Collaborated with three others. Chanelle, Kevin and Joey. I primarily worked on the camera controls, the particle system and the motion blur.
3D side-scroller where the player has to advance through obstacles while avoiding green acid pools. Developed in C++ using OpenGL. Coded a basic collision detection system from scratch.
The final picture shows the usage of the plague button to attempt to disease the evil rabbits on the left side.
Zombtron is a highly object-oriented Java application. It features classic enemy archetypes in an increasingly hostile world.
Run Little Humans is a Unity3D game with an alien abduction theme. Made as an individual project in CSC 371 - Game Design, the game is about abducting as many humans as possible before escaping from the gradually increasing military presence.
Diamond in the Rough is a 68,000-word work of fiction. Inspired by the artwork above (Artist: かんくろう). Requires the last step of proofreading and editing. A sudden near-death experience consumes Mina Hratien and spits out a version that will either be the world's demise or its savior.
When I was 12 I used Macromedia Flash to produce stickman animations and uploaded them to YouTube because I loved watching them on YouTube myself. The first animation was a classic escape scenario. The second animation was a reimagining of an epic World of Warcraft duel between Sexycommando and Orangemarmelade.
They are quite crude, but they were so much fun to show to friends and family.
Lead writer for the Knell of Godhrkar demo. Birctreel the leader of the project provided the skeleton of the story on which I elaborated and innovated.
The game features characters Yachrun, Aeriff, Boreiy, Raven, Letzeriel, Shervlett and Hayceno. I was responsible for writing for Aeriff, Boreiy and Yachrun. It was tons of fun, and I am satisfied with the final versions of the many scenes I wrote for each character.