Block Breaker 2D Kit

Block Breaker 2D Kit for Unreal Engine 4

Features

Versions

Roadmap

Documentation

Credits


Graces-Games-Logo

Graces Games

Documentation


Game

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

Paddle

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.

Block

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.

Ball

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.

Laser

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

Shield

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.

Wall

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

Items

BallsDamageUpItem

Increases the damage of all balls currently in the level

BallsDamageDownItem

Decreases the damage of all balls currently in the level

BallsSpeedupItem

Increases the speed of all balls currently in the level

BallsSlowdownItem

Decreases the speed of all balls currently in the level

PaddleGrowItem

Increases the width of the paddle

PaddleShrinkItem

Decreases the width of the paddle

SpawnExtraBallItem

Spawns an additional ball for each ball currently in the level

LaserAmmoItem

Gives the paddle additional Laser Ammo

ExtraLifeItem

Gives the paddle an additional life

ShieldItem

Activates the shield, if not currently active

BaseItem

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

PlayerControllers

BP_MainMenuPlayerController

Is responsible for creating and interacting with the Main Menu.

BP_BlockerBreaker2DPlayerController

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

Widgets

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

HUD

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.