Mental Block Gameplay Preview

Mental Block is a top-down puzzler inspired by Sokoban. The player must solve puzzles in a range of environments to become the best infiltration robot on the market! The player can work their way through one hundred pre-made levels in the campaign mode, or attempt to make their own levels in the level editor!
This game was created in Staffordshire University's 1-UP Scheme where students in their first, second, or third/final year work together to create a game in 6 weeks using Unreal Engine 5. There were three games made during this scheme. I was the Lead Gameplay Developer for Mental Block, I had to take charge of a small team of developers to make sure everyone did their jobs to make sure we made the best game possible.
Mental Block was shortlisted for a TIGA Award for Best Puzzle Game which was incredibly exciting! I am extremely proud of the team that was involved in making this game to get this achievement. Unfortunately, we did not achieve the win we wanted, but it was still amazing to be nominated.

Game High Concept

The objective of the game is to solve the puzzles by pushing blocks onto triggers and avoiding hazards to eventually reach the finish point. The player must finish the level with the smallest possible number of movements to achieve the highest score.

Game Description

Mental Block is a Sokoban style puzzle game where the player controls a little robot that must complete levels by moving different kinds of blocks to get to the finish. Blocks can trigger certain things that help the player progress, such as doors. There are different colours of push blocks, triggers, and doors. A push block can only activate a trigger of the same colour, and that trigger can only activate a door of the same colour.

The player must avoid hazards that can be scattered throughout the game. These include; slime that sticks the push block to the ground, acid that destroys the push block, and a blocker enemy that can kill the player. There are also some positive elements placed around the game that aid the player, such as; Paint that will change the colour of the push block, water that reverts the colour back to its default, and sponge that releases any push blocks that are stuck in slime.

The game's campaign has 100 levels for the player to complete. These 100 levels are split up into 5 packs with 20 levels in each pack. These packs have their own themes to add more variety to the game. These themes are; Sci-Fi, Garden, Desert, Castle, and Spooky.

The player also has the option to create their own levels using the game's own built-in level editor. the player can choose their own theme out of the five, design their own level layout, make their level as easy or difficult as they want, they can do anything! When they click a button, a description of that item pops up. After creating the level, the player can export it to their computer, so they can make as many levels as they want!

Game Highlights (What I Worked On)

Gameplay

Push Block

The push block is the main block that the player needs to push to solve the puzzle. This block can be any colour and can activate triggers of the same colour. This block can also be painted to change its colour so it can activate different coloured triggers.
The push block has line traces around it to detect if there is anything in its way so the player cannot push it through walls or doors.

Triggers and Doors

There are two different types of triggers, an AND Trigger and an OR Trigger. The AND trigger needs two push blocks of the same colour to activate two AND Triggers to open a door. The OR Trigger only needs one push block to open a door.
There are two different types of doors, a normal door and a reverse door. The difference between the two is simply that the normal door starts closed and opens when it is activated, and the reverse door starts open and closes when activated.

Hazards

Hazards are placed around each level for the player to avoid. This adds more challenge to the game. The hazards in Mental Block include; Slime, Acid, and an Enemy AI called a Blocker. I created the slime and acid for the game. I also made a Sponge that unsticks the push block from the slime.

Win/Lose State

The game needs a win/lose state whenever the player reaches the end of the level, or gets killed by the acid or blocker enemy, or when they just need to restart. Whenever this happens, a UI will popup showing that state with a message that either says 'You Win' or 'You Lose'.

Game Highlights (What I Worked On)

UI/UX

Main Menu With Options Sub-Menu

The main menu for Mental Block didn't need to be anything special, we just needed some clear buttons to appear on the screen whilst a camera shows the play area from a different angle. The Campaign button is the game's pre-made levels, the Credits button shows who contributed towards the game, the Custom button shows the levels that the player has made in the level builder, and the Level Builder button takes the player to the mode that allows them to create their own puzzles.
The settings didn't need to be complicated, all we wanted was a few sliders for volume and camera, and settings for people who are colour blind as this is a very colourful game. The whole main menu is made up of many different smaller widgets for each section and placed into one master widget. This made it easier to add to the screen as you only needed to add one widget to the screen, also you can easily control animations and buttons from one widget.

Credits

When I first started making the credits, I made an excel sheet and sent it to everyone on the team to put their preferred names and the titles that they would want as that was the easiest way to get all of this without taking time out of development.
I split each sub-team into groups on the credits list just so it isn't jumbled up.
Originally, I wanted an animated credits list where the robot would push the names or the groups into the centre of the screen. I couldn't do this due to me having to re-do all of the UI that another team member created as it was not efficient or acceptable.

Level Select

The Level Select menu split the 100 levels into five different packs. I made it easy for the player to navigate all of the packs by using UI animations. 
Our Lead Systems and Tools Engineer created some variables for the expected number of moves for each level. I decided to add this as a small stats screen when you hover over each level button.

Level Builder

The functionality for the Level Builder was a joint effort between me and the Lead Systems and Tools Engineer. Once the main functionality was complete, I cracked on with the main UI for this mode. There were many iterations of this screen.
We needed buttons for all of the placeable objects, buttons for the programmable Enemy AI section, buttons for start game, wipe all objects, changing themes, and exporting and importing custom levels, and finally we needed a description for every object. I asked the Lead Designer to write these descriptions whilst I created the rest of the UI.