top of page

Arcade Hall

Idea:

As a fan of arcade games in general this was a great project for me. I have had the idea in the back of my mind for a while.​

​

I wanted to create a section that would be part of a bigger game experience akin to the GTA games or Watch Dogs.

​

A side activity for the player to enjoy as a break from the main game.

Goal:

​Gain knowledge of game instances and different player controllers.

​

Script a simple inventory system.

​

Script a high score system that would translate between the games and the score board in the arcade hall itself.​

Overview:

 

  • Production time: Around 80 hours

  • Engine: Unreal Engine 5

  • Asset pack: 'Neon City', used for the exterior of the arcade hall

  • Screens created in Midjourney.

​​

The games

My take on an Asteriod game.

Player is locked to the center

of the stage with enemies continuously moving towards the player at an increasing rate as the game progresses. The game is over if an enemy touches the player.

DeadlyTowerMachine.png

With jumps and wall jumping, the player must ascend a deadly tower. The rising lava is adjusted on a curved timeline to fit the flow and layout of the level, the amount of deadly spikes become more prevalent as the player progresses.

A classic brick breaker game.

Steer the bar at the bottom and bounce the ball to hit the bricks to remove them. Their durability is indicated by the color. The ball speed is increased for every bounce on the player pad. Destroy all shapes to advance to the next level.

ShapeDestroyerMachine.png
SpaceRunnerMachine.png

Simple autorunner. This game served as my testing ground for player controller and game instances for saving progress and highscores in the main arcade hall. Dodge obstacles and jump over pits to reach the exit at the end of the lane.

Inventory system

While an inventory system wasn't the main focus of this project, I still wanted to implement one, set up the logic in blue prints and give the player a reason to use the arcades 'Coin-o-Mat' to cash out coins for the arcade machines in order to be able to play them.

​

As it wasn't the main focus I went the very simple route for the sake of the project and time frame, only using text as the indicator for the inventory items - it is, however, set up for being expanded upon in the future.

High score system

High scores, the typical trait of arcade games, a must have.

​

I wanted to create a system that keeps track of the scores through out the different games in the arcade hall and then would be translated to the arcade hall itself via a simple text render on a display on the walls.

​

It was achieved by loading and saving game instances and via a function that could be applied to all the games main logic where only the game name had to be changed in the blue print to be able to read the current score and current high score data from that specific game.

Arcade exterior scripts

The main focus of this project was of course the playable games but I didn't want to leave the outside completely bland. The player was given a punch mechanic for hand to hand combat.

 

I decided to use behavior tree(s) to script some NPC's that would roam the area, with one of them attacking the player, creating a hand to hand combat scenario. The NPC drops a credit card that can be taken by the player and used in the arcade hall.

​

They help to bring the scene to life as opposed to the player experiencing a ghost town feeling.

Reflections

I am very satisfied with the results of this project. I had the opportunity to create several games within an imagined bigger game world. This project refined my skills in scripting and understanding more intrecate blue prints, function libraries, game instances and player controllers.

​

If I had more time to devote to the project I would have made more levels for each game. The level load function is implemented and allows for creating new levels instantly. The arcade interior would have been improved to have more of an interesting layout. 

​

The inventory system could have been a bit more fleshed out with the coins for example being stacked instead of individually placed in the inventory. I could have used icons instead of just text, that said, the inventory system was not the focus of attention within the time frame.

​

Perhaps I would have made the exterior of the arcade hall even more 'alive' with cars driving around, more NPC's and in the long run have the opportunity to play around more with behavior trees.

bottom of page