Reference for Blueprint assets under Content/SpaceShooterTemplate/Blueprints/. Default values were read from class defaults in the template project.
flowchart TB
GM["BP_SpaceRockGameMode<br/>MaxAsteroidsToSpawn: 30 · bCanSpawnAsteroids: true<br/>StartGame() · StartAsteroidSpawn()"]
Ship["BP_Spaceship<br/>SpaceshipLives: 3 · RefireTime: 0.2 · Acceleration: 1000"]
Rock["BP_SpaceRock<br/>Health: 100 · AsteroidSize: ESpaceRockSize"]
Cannon["BP_BaseCannon<br/>Fire()"]
Projectile["BP_Projectile<br/>Speed: 10000 · Damage: 100"]
GM -->|possesses| Ship
GM -->|spawns| Rock
Ship -->|components| Cannon
Cannon -->|spawns| Projectile
| Value | Cannon component |
|---|
| None | No cannon selected (before Set Cannon Type) |
| SingleShot | BP_SingleShot |
| TripleShot | BP_TripleShot |
Start Game calls Set Cannon Type on BP_Spaceship with the HUD selection.
| Value | Default scale | Default speed | Score | Child count |
|---|
| Small | 0.25 | 1400 | 10 | 0 |
| Medium | 0.75 | 800 | 20 | 3 |
| Large | 1.25 | 400 | 30 | 4 |
| ExtraLarge | 2.0 | 100 | 40 | 5 |
Maps on BP_SpaceRock: Asteroid Sizes, Asteroid Speeds, Asteroids Score, Asteroids Score Crit Multiplier, Child Asteroids, Rotation Rates, Explosion Effects.
| Field | Type | Default |
|---|
| High Score | Integer | 0 (until first save) |
| Field | Type |
|---|
| Particle Effect | Particle system |
| Sound Effect | Sound base |
Default Explosion Effects use P_Explosion_Small … P_Explosion_ExtraLarge and Explosion_Cue.
| Property | Default | Description |
|---|
| bCan Spawn Asteroids | true | Master spawn toggle |
| Max Asteroids To Spawn | 30 | Concurrent rock limit |
| Current Asteroids | 0 | Runtime count (updated on spawn/destroy) |
| Random Time | set per timer | Seconds until next spawn (Random Float in Range 1.0–3.0 on Event Graph) |
| Default Pawn Class | BP_Spaceship | Player pawn |
| Space Ship | reference | Spawned ship instance |
| Function | Description |
|---|
| Start Game | HUD entry — Set Cannon Type, Start Spaceship, hide mouse cursor, begin spawn |
| Restart Game | Reset session after game over |
| Start Asteroid Spawn | Enables spawn loop (Internal Enable Asteroid Spawn) |
| Spawn Next Asteroid | Spawns one BP_SpaceRock if under cap |
| Get Asteroid Spawn Location And Rotation | Screen-edge spawn point + direction |
| Internal Update Asteroid Count | Pushes count to WBP_PlayerHUD |
| Get Save Game Manager | Returns BP_SaveGameManager |
| Set Cannon Type | Stores cannon choice for the ship |
Custom events on Event Graph: Start Asteroid Spawn, Spawn Asteroids, Spawn Next Asteroid.
| Property | Default | Description |
|---|
| Spaceship Lives | 3 | Remaining lives |
| Current Score | 0 | Run score |
| Current High Score | loaded at start | Best score this session |
| bEnable Continuos Firing | true | Hold Fire to repeat |
| Refire Time | 0.2 | Seconds between auto shots |
| Acceleration | 1000 | Forward thrust |
| Turn Rate | 250 | Rotation speed |
| Restart Delay | 3 | Game-over delay |
| FOV | 100 | Camera FOV |
| Current Cannon Type | None | Set before play via Set Cannon Type |
| Component | Role |
|---|
| Space Ship Mesh Component | SM_Spacehip mesh + collision |
| BP_SingleShot / BP_TripleShot | Weapon components |
| BG Music | Background audio |
| Event | Calls |
|---|
| InputAxis MoveForward | Movement |
| InputAxis MoveRight | Rotation |
| InputAction Fire | Internal Fire Weapon |
| Function | Description |
|---|
| Internal Fire Weapon | Fire on Current Cannon |
| Internal Reduce Spaceship Lives | Decrement lives; Show Life Hearts; death at 0 |
| Internal Try Save Game | Persist high score |
| Set Cannon Type | Enable BP_SingleShot or BP_TripleShot |
| Show Life Hearts | Update WBP_PlayerHUD |
| Delegate | When |
|---|
| On Ship Dead | Fatal hit / lives exhausted |
| On Game Over | Forwards to HUD |
| Property | Default | Description |
|---|
| Health | 100 | Damage before Destroy Asteroid |
| Asteroid Size | Small | This instance’s ESpaceRockSize |
| Component | Role |
|---|
| Asteroid Mesh Component | Static mesh + scale from Asteroid Sizes |
| Rotating Movement | Spin from Rotation Rates map |
| Function | Description |
|---|
| Apply Damage To Asteroid | Reduce Health |
| Asteroid Take Damage | Entry from projectiles |
| Destroy Asteroid | Split (Child Asteroids), VFX, score, Show Score |
| Internal Get Next Random Size | Pick spawn size |
| Show Score | Spawn WBP_HitDamage at screen position |
| Property | Default |
|---|
| Speed | 10000 |
| Damage | 100 |
Mesh: SM_Missile. Uses Asteroid object channel for hits.
| Property / function | Value / role |
|---|
| Projectile Class | BP_Projectile |
| Fire | Spawn projectile(s) |
| Firing Sound | Played on fire |
| BP_TripleShot | Overrides Fire to spawn three projectiles |
| Property | Default |
|---|
| Save Game Slot Name | SpaceShooterSaveGame |
| Save Game User Index | 0 |
| Function | Description |
|---|
| Load Game | Read ST_SaveGame |
| Save Game | Write slot when high score improves |
Widget switcher HUD Tab — Change Hud Tab from game mode.
| Function | Description |
|---|
| Update High Score | High Score Text |
| Update Asteroid Count | Asteroids Count Text |
| Show Life Hearts | Life display |
| Restart Game | Calls game mode Restart Game |
| Function | Description |
|---|
| Show Score | Floating points; Crit Animation when critical |
Macro library: Deproject Screen To World, Break Vector 2D, screen-wrap helpers.
| Asset | Path |
|---|
| Game mode | Blueprints/BP_SpaceRockGameMode |
| Player pawn | Blueprints/BP_Spaceship |
| Asteroid | Blueprints/BP_SpaceRock |
| Projectile | Blueprints/BP_Projectile |
| Cannons | Blueprints/SpaceshipCannons/ |
| Save | Blueprints/SaveGame/ |
| HUD | Blueprints/Widgets/WBP_PlayerHUD, WBP_HitDamage |
| Demo map | Maps/DemoMap |