Solveland

Solo development

Nov 2020 - Present

Logo_UnrealEngine

Project information

Description

Genre: first-person puzzle exploration

Team size: 1

Platform: aimed at PC

Project type: Personal project

Software used: Unreal Engine 5, Photoshop, 3Ds Max

Solveland is a first-person puzzle exploration game, where you’ve gotten lost while exploring this newly found world. While searching for a way out, you gain the ability to rotate certain pieces of the environment. With this new ability, you solve big-scaled puzzles and explore this magical city.

Responsibilities / contributions

Creating game mechanics and systems based on the features

  • Designing and building core mechanics with Unreal Blueprints
  • Creating custom game systems to improve work flow
  • Creating a saving and loading system and in-game interactables
  • Creating shaders and materials using material editor

The core mechanics are based on the Rubik’s Cube. For the implementation, I made a parent system that I could use for similar mechanics. It was made so that I can place interactables around without having to change variables to make it work. For the rotating cubes, I made a system where I can select a preset of buildings. The saving and loading are done with a director that looks over a level for actors with savable attributes. This is also important when the player walks out of a level’s streaming volume. To bring more detail to the environment, I have created a shader with the material editor that places squares on each object with light opacity.

Making game design decisions and using tools for project related features

  • Exploring target audience and references
  • Creating concept designs for interactables and modelling them
  • Creating a backstory for the world and protagonist

During my graduation, the main goal was to create a reusable puzzle system, designing puzzles and connecting them with level design principles. Afterward, I took a more professional look at the game’s core. I did this by, researching and exploring the target audience and finding references. To mix up the gameplay flow, I had to implement something else besides solving puzzles. It should be optional, entertaining for the players who enjoy this genre, and fitting with the gameplay. Adding more exploration options and different rarities of collectibles were the right choice. It works well with the game and the narrative. The protagonist is an archeologist searching for this new floating city. Once found, she started exploring it, but she was unable to find the exit.

Designing puzzles and building levels with the created assets and foliage

  • Designing and building puzzles using a paper prototype, in-engine prototype, and testing them
  • Connecting puzzles by using level design practices
  • Creating a balanced gameplay flow between puzzles and levels

For the creation of puzzles, I started out with a few questions. What kind of puzzle do I need here, what mechanics should it contain, and how complex should they be? The following step is to create an interesting design with my paper prototype. I write down the steps to solve it, then implement a block-out version of the puzzle in Unreal. Testing the puzzle is important, there might be multiple solutions, or being able to get stuck while solving it. Once I have numerous puzzles, I connect them with a flow that guides the player toward the next obstacle. In between puzzles, I implement some optional collectibles and (depending on the level) exploration options.

Everything in between

  • Creating 3D assets within the art direction
  • Designing UI/UX, creating assets, implementing assets, and building functionality
  • Creating sound effects and implementing them in Unreal Blueprints
  • Keeping and maintaining an overview of the project

For the art direction, I aimed at having a cubical art style with flat colors. I implemented a squared shader, to give the art style more detail. This style fits well with the game and the mechanics. The UI also contains a light-squared overlay. The main menu is also fully functional, for both the controller and mouse/keyboard. Furthermore, I also created some sound effects, mainly the most important ones, such as rotating cubes. A few versions with different pitches were made and randomized in the sound cue editor. To keep an overview of the project, I use a whiteboard with sticky notes. High-level planning is on top of the board.