Block Breaker 2D Kit

Block Breaker 2D Kit for Unreal Engine 4







Graces Games



Main Menu Game Mode

BP_MainMenuGameMode is the game mode and specifies the BP_MainMenuPlayerController as default controller. It is used as the game mode in the Main Menu map.

Game Instance

BP_BlockBreaker2DGameInstance is the game instance and handles the initial data (e.g. the levels for the level grid), saving and loading of the save game.

Block Breaker 2D Game Mode

BP_BlockBreaker2DGameMode is the game mode and handles the current level, score, and level complete actions. It is used as the game mode in the Game map.

Save Game

BP_BlockBreaker2DSaveGame is the save game and acts as a container for the save data (e.g. score and time per level).

Game Objects


BP_Paddle is the player of the game. It handles player input for movement in the horizontal direction. It also handles the Ball Launch Mode: a moving arrow indicating the initial direction of the ball to launch. And it support the firing of lasers if the player has Laser Ammo.


BP_Block is the block object that should be destroyed by the player. The block has multiple properties: health, color ranged based on health percentage, explode options etc.

The blocks can be easy set up using the Block Type Enumeration in combination with the DataTable.


BP_Ball is the ball object that is used to destroy the blocks. The ball bounces on hit but the angles are clamped to prevent undesired (no fun) angles like horizontal balls.


BP_Laser is the laser object fired by the player and a secondary way to destroy the blocks


BP_Shield is the shield object spawned under the paddle. This is used as a safety net for the player, bouncing back a ball after which it destroys itself.


BP_Wall is the wall object which are just there to prevent the ball from escaping the level.



Increases the damage of all balls currently in the level


Decreases the damage of all balls currently in the level


Increases the speed of all balls currently in the level


Decreases the speed of all balls currently in the level


Increases the width of the paddle


Decreases the width of the paddle


Spawns an additional ball for each ball currently in the level


Gives the paddle additional Laser Ammo


Gives the paddle an additional life


Activates the shield, if not currently active


Parent of all items. Handles the falling of an item and the overlap with the Player and DestroyVolume



Is responsible for creating and interacting with the Main Menu.


Is responsible for creating and interacting with the HUD (HUD changes, Pause Menu and Level Overview screen).


All user interfaces support mobile input.
Based on the platform the UI is automatically updated.


The BP_HUD is the in-game user interface and shows the player the score, lives left, blocks left, laser ammo and elapsed time for the current level.

It also defines the level overview screen with the achieved score and time and whether the high score was beat. It also has the option to play the next level and return to the main menu.

The pause menu user interface is also integrated in the HUD and allows the player to restart the level, continue the game and return to the main menu.

Main Menu

BP_MainMenu is the main menu user interface and allows the player to select a level from the level select, show the controls, clear the save data and quit the game.

Level Select Button

BP_LevelSelectButton is the button used in the level select grid. It defines the level to be loaded and whether the level is unlocked in the UI.