Soulslike - Level Blockout

Project Type: Personal Project

Genre: Action

Software Used: Unreal 5.5

Language(s) Used: Unreal Blueprint

Description: This level was something I was inspired to create after playing The First Berserker Khazan. I realized that I needed a little more diversity on my portfolio, so I wanted to branch out and do something a little different from a narrative heavy level and focus more on a different style of game.

Goals: Create a fully playable level walkthrough for a soulslike game.

Responsibilities: Level blockout/ polishing, blueprinting level interactions, , character design, systems design, combat design (both the player and the enemies), documentation, designing encounters, sound design, and VFX.

Level Playthrough

The main goal of this level was to create something that I haven’t really designed before. Something that can have some storytelling without actually telling the player what is going on. Throughout the entire level I have only one piece of text that talks to the player, the rest I wanted to tell the story environmentally, whether it be parchments the player can find in hidden areas or the actual environment itself.

I needed the environment to feel diverse without drastically changing the actual location of where the player was. They start in the dungeons, it’s not unrealistic that said dungeons would be connected to a large sewer system. And it’s even less unrealistic that said sewer system would have an area where the main pipes were located.

It took some thinking to figure out what I could do to break up the flow of just enter room fight, walk down a hallway fight, climb a ladder fight. I wanted each section to be something different for the player and that’s when I decided to add this little traversal section.

When I first had the thought to make this level, I remembered that I had bought an animation pack years ago hoping that I would eventually be able to put it to use and it just so happened that I was able to do so. I am an avid fan of Berserk and creating the character like I did was a homage to it.

Throughout designing this level I really wanted to capture what makes a souls game feel like a souls game. My conclusion was that I wanted to do as much environmental storytelling as possible, secrets whenever they’re possible, and to be able to lead the player naturally without telling them “go here! do this!”.

Level Map

For this level I didn’t start off with a map at first. I know I wanted to make a dungeon room, so I started there. Then I thought to myself what’s a fun way the player could get out of the dungeons without going through either guards or the front door. And I remember the false walls in Elden Ring and decided that would be a good way to get the player out of this section and start the level.

I usually don’t make a map from scratch I like to build first then use a tool like paint to draw different iterations of what the path could be and pick the most interesting one. For example, the image to the left - <

Blocking Out the Space

I really wanted to keep the paths diverse so that meant verticality and making sure there was a shift in the player direction every so often. Whether that being climbing up a ladder, dropping through a hole in the floor, turning a corner, or dropping into some sewage. Though there might be one in here, I did my best to avoid long empty hallways.

The blockout was doing pretty quickly there was only one area that I really struggled on what it was going to be and that was the elite enemy room. But, I think it all came together rather nicely.

I used my usually tools here, the cube grid tool being my favorite. I just feel like I can get so much done in a very short amount of time. I also dipped back into using box brushes and manipulating those to give me some unique shapes like the arches and more circular shapes that cube grid isn’t really great at making.

Animation Blueprinting

This was my first time working with animation blueprints and I have to be honest, it wasn’t as bad as I feared it would be. I’ve done similar things with one of my 2D projects but there I had to script the state machine from scratch. In unreal it made it a lot simpler to get everything working together.

That being said it was no walk in the park there were many issues that I had come across, for example I was having a weird error with the attack combo, where nothing would happen after the first attack. I eventually figured out that I was using the wrong montage notification when calling the code. This was just one of many things I had to fix while trying to get the character to function properly.

Having a solid animation pack made life a lot easier during this time as well. Naming conventions are important! I know I’m not an animation specialist, but I think it was valuable to learn how to work with state machines and just animation bps in general. I’ve always design combat in theory and in documentation, but this was the first time I was able to take the theory and ideas and actually apply it in engine.

Next
Next

The Last Dragonrider - Stealth Level Blockout