Skip to content

Godot 4 demo with a plug-and-play 3D Third-Person Shooter (TPS) character controller inspired by games like Ratchet and Clank.

License

Notifications You must be signed in to change notification settings

gdquest-demos/godot-4-3d-third-person-controller

Repository files navigation

cover itchio tags description
static/cover.webp
3D third-person-shooter shooter controller
A 3D Third Person Shooter Controller Demo

RoboBlast: Third-Person Shooter demo (Godot 4, 3D)

This open-source Godot 4 demo shows how to create a 3D character controller inspired by games like Ratchet and Clank or Jak and Daxter. You can copy the character to your project as a plug-and-play asset to prototype 3D games with and build upon.

It features a character that can run, jump, make a melee attack, aim, shoot, and throw grenades.

There are two kinds of enemies: flying wasps that fire bullets and beetles that attack you on the ground. The environment comes with breakable crates, jumping pads, and coins that move to the player's character.

How to run:

  1. Download or clone the GitHub repository.
  2. Press F5 or Run Project.

Controls:

  • WASD or left stick to move.
  • mouse or right stick to move the camera around.
  • Space or Xbox Ⓐ to jump.
  • Left mouse or Xbox Ⓑ to shoot.
  • Right mouse or Xbox RTto aim.
  • Tab or Xbox Ⓧ to cycle between bullets and grenades.

FAQ:

How do I use the player character in my game?

Copy the following folders into the root of your project:

  • Player: contains the main Player assets and scenes.
  • shared: contains shaders used by the player asset.

The following Input Map actions are needed for the Player.tscn to work:

  • move_left, move_right, move_up, move_down: move the character according to the camera's orientation.
  • camera_right, camera_left, camera_up, camera_down: rotate the camera around the character.
  • jump, attack, aim, swap_weapons: Action buttons for the character.

The Player.tscn scene works as a standalone scene and doesn't need other cameras to work. You can change the player UI by changing the Control node inside Player.tscn.

License:

All code is MIT-licensed, and assets are CC-By 4.0 GDQuest.