A downloadable game

Game is procedurally generated. Player loses if his health reduces to 0 by getting damage from enemies' bombs or if the player falls off the platform lower than the death point location. Player wins if he gets 100 points. Game has 2 level blueprints: MainMenu and ThirdPersonMap.

There is a BP_BaseTileR blueprint of the tile that has all necessary items on a single platform: 

  • vector locations for random grass
  • one vector location for random collectible item
  • one Arrow component - SpawnPoint where the new platform is spawned
  • 2 vector locations for moving platforms from the left and right of the main BaseTile platform
  • top and bottom tunnel arches
  • one vector location for the enemy

BP_BaseTileR includes:

  • Player Character casting
  • Spawn platform on trigger collision with player pawn
  • Delete platform on trigger collision with player pawn

BP_ThirdPersonCharacter is a player pawn blueprint includes:

  • Input Mapping
  • Camera Input
  • Movement Input
  • Jump
  • Restart Level on button R pressed
  • Damage handler and Ragdoll balls animation
  • TEST: damage on button M click
  • TEST: player location on tick
  • TEST: Quit game on Q button press
  • Winning condition
  • TEST: Player death condition

BP_BallsSpawner includes a spawn ragdoll animation for player death - spawn 20 balls.

BP_RandomItem includes a spawn random item functionality and Pick Up Script.

BP_RandomMovingPlatform includes SpawnRandomPlatform functionality. 

BP_Racket includes racket animation (rotation) and timeline for racket rotation.

BP_RandomRacket includes a spawn random racket functionality.

Collectables:

  • BP_Bomb - reduces player health by 10.0 and reduces player scale on XYZ by 0.2
  • BP_HealingPotion - on collision with player  increases player health by 10.0
  • BP_Pump - increases player scale on XYZ by 0.1
  • BP_Star - increases stars count by 1, score by 5
  • BP_Coin -  increases coins count by 1, score by 2

Obstacle BP_RandomRacket includes a spawn functionality for a random racket.

BP_Enemy includes damage functionality when the player collides with the dog's collision box dog, and  dog animation - walk, jump. If player collides with dog he kills it and gets 20 points

GM_Platformer3D - game mode blueprint included Make mouse input available, Platform spawn, separated custom function SpawnTiles.

UI widgets: WB_MainMenu, WB_PlayerAndLevelStat, WB_PlayerAndLevelStats, WB_PlayerLost

Which marketplace assets are used and how

  • Starter content meshes and textures for platform, grass and plants.
  • Fab resources of collectables meshes and textures: coin, star, bomb, ring.
  • Fab resources for the enemy: dog meshes and textures and animation .

Physics collisions ragdoll effects

  • Tennis ball - BP_ThirdPersonCharacter has an Arrow component. After player health becomes 0 and the isAlive variable is set to value true => tennis ball component value of Hidden In Game becomes true and in the Arrow location 20 small balls are spawned.

Optimization and debugging

  • New platform is generated after player is collided with a SpawnTrigger collision box
  • Memory cleaning: delete platforms and objects after the player collides with the collision box which is called Destroy_Trigger.
  • Separate functionality for player to get damage on button M click, player location on tick, Player death condition, used print string for separate nodes

Leave a comment

Log in with itch.io to leave a comment.