OCT // 2020

STEALTH PARKOUR

Level • 2 weeks • Unreal

An action-heavy stealth parkour level where the goal is to take pictures of suspects without getting caught.

Asset 2@4x.png

GOALS

ABOUT THE LEVEL

  • Co-created in 2 weeks together with Fannie Lorant 

  • Unreal Engine

  • Assets from Synty's Simple Port and Polygon Pirate Pack

  • Inspired by Mirror's Edge

CONCEPT

GOALS

A politician has been rumored to strike deals with a local mafia lord. Your mission is to take pictures of the suspects. Double-jump and wallrun your way through a stealthy yet action-packed level without getting caught by the enemy guards.

Full-length playthrough of the level at the bottom of this page.

  • Improving my level design skills by implementing level design principles such as framing, composition, affordances, beats, and structure.
     

  • Work on my scripting skills by implementing player movement, enemy AI, and mission system tied to a narrative.

DESIGN THINKING AND PLAYER GUIDANCE

Click the arrow ">" for examples.

BLUEPRINT SCRIPTING

I scripted almost all of the in-game functionality. Player movement and UI is stored in the player character blueprint. 

The camera is made using scene capture components and render targets.

The enemy AI is controlled with a behavior tree and switches between patrolling and shooting at the player on-sight.

f5aea0188f70b040ba50159712c22784.gif

Double-jump

4283dce77a088697ec40b280d4e63b68.gif

Wallrun

1903dcb51a9426db60d810370442bcf8.gif

Camera

4763969e6d893f1887dbf6c5213854b8.gif

Zipline

4df30098c57fc24bc7831c8a2a70cc94.gif
ade8481511c0b757e3efa7812a642215.gif

Patrolling Enemy AI

PLAYER BLUEPRINT

Zoom and drag (right click).

ENEMY AI

3e5337078e006d3876964590326a5455.png

Take a look at the level from start to finish.

PLAYTHROUGH

DEC // 2019

TITANFALL 2

Environment • 1 week • Unreal

A map I made, where I tried to improve on the level design of  Titanfall 2.

⬤ Wall-run bits 

⬤ Ammo pick-up

Titanfall 2 is one of my favorite FPS games. It is often praised for its amazing level design. That's precisely why I wanted to analyze it to see if there's something I could do to make it even better.

For this project, I set-dressed a small portion of the first level in the game and tweaked its level design. I built the map using free assets from Unreal's Marketplace.

You can click through my suggested iterations in the carousel showreel below.

BEFORE AND AFTER

Click the arrow ">" for examples.

FEB // 2020

MODULAR RAFT

Prototype • 2 days • Unreal

A prototype for a game where you control a raft made out of tiles that you can pick up and re-attach.

CONCEPT

I originally scripted the prototype as one of the main mechanics for FLOT. But the feature was later cut in production. I was inspired by the pick-up-and-drop mechanic from Overcooked and thought, what if the same principle could be applied to the ground your standing on.

In a later Ludum Dare I was happy to see that someone else had come up with the same concept and turned it into a little game. It's called Pink River. Try it if you haven't already!

WHAT I LEARNED

I think the biggest challenge for me was to figure out how to get the player to pick up the correct tile in front of him. I started by making a simple overlap function, but soon realized that wasn't precise enough as the tiles' collision spheres would begin to overlap each other.

The solution was to round the player's rotation to the nearest either X- or Y-axis and then line trace down from one tile's length in front of the player on that axis.

PLAYER BLUEPRINT // PICK UP AND DROP

Zoom and drag (right click).

JAN // 2020

BOMBERMAN 

Prototype • 3 days • Unreal

A personal project where I tried to recreate the classic arcade-style game Bomberman in Unreal Engine.

WHAT I LEARNED

Now and then I like to test my scripting skills and recreate mechanics taken from some of my favorite games from my childhood. Bomberman is one of them. ​

 

A problem I ran into while making this prototype was handling the explosive chain-reaction of the bombs. I solved it by making an interface call that would trigger a chain-explosion event that would bypass the timer once a bomb was hit by any of the four line-traces going off from the initial bomb explosion

Zoom and drag (right click).

BLUEPRINT // BOMB

JAN // 2020

ZOMBIE AI

Prototype • 2 weeks • Unreal

A zombie virus AI system that uses branching behavior for a healthy state, infected state, and zombie state.

CHALLENGE

This was a project I did with my friend and classmate Love Åkerlund during a prototyping assignment at Futuregames. We both wanted to learn more about AI-scripting, so we chose to dive deep into Unreal’s behavior trees. Our goal was to create an NPC behavior that would simulate the stages of a zombie infection. From a healthy state, to infected, to zombie.

WHAT I LEARNED

As this was our first time using Unreal's behavior trees, there was a lot to learn. Having everything split up between blueprints, blackboards, and behavior trees, with their tasks and services, felt a bit overwhelming at first. But soon enough I learned to appreciate the versatility of the system as you could easily swap branches around for different results. 

d7001f0c3e3e2098d011a6757e5f09d6.png

NOV // 2019

BLACK HOLE GOLF

Game Jam • 2 days • Unreal

A game jam entry that three friends I did where you play mini-golf with a black hole instead of a ball.

CONCEPT

Before there was Covid-19, I liked to participate in Game Jams now and then. For this one the theme was Dark Matter.

My close friends Axel MareliusYunis Al-Breihi, Robert Arnborg, and I ended up making a Katamari-inspired game where you use a giant putting club to swing at a black hole that sucks up everything in its way. Over the course of four levels, you suck up offices, villages, continents, and eventually the entire universe.

After the 48-hour jam was over, our game was awarded best-in-show.

THINGS THAT I DID

  • Level design

  • Set dressing

  • Putter script

  • UI scripts