This template provides a starting point to create a First-Person Shooter (FPS) Game in O3DE (Open 3D Engine) using the supported scripting languages (i.e. Lua, ScriptCanvas).
It includes the core mechanic for rotating the camera and throwing projectiles against targets. After being hit, a target is restored to its initial position automatically.
This template is part of a wider collection that covers several game genres. Please refer to the parent repository for the full list of available templates and more details about the design philosophy behind them.
-
Install O3DE (Open 3D Engine) following the steps that are described in Get Started page of the official documentation.
The engine version must support
Script-only
mode (2409.1 or greater). -
Launch
Project Manager
, as it is described in the dedicated section of the official documentation. -
Choose
Engine
tab, and then selectRemote Sources
subsection. -
Press
Add Repository
button and paste the address of this repository:
https://github.com/matteogrs/templates.o3de.minimal.first-shooter/raw/refs/tags/v1.0.0-beta.1
-
Return to
Projects
tab, and pressNew Project...
button. Confirm the action by selectingCreate New Project
option in the dropdown menu. -
Scroll down to
Select a Project Template
section, and select the variant of Minimal First-Person Shooter in your preferred scripting language. The small cloud icon that is visible in its top-right corner suggests that the template files still need to be downloaded from the remote repository. -
In the right panel, press
Download Template
button and wait for its completion. -
Fill out the remaining fields as you wish, and press
Create Project
to continue. -
In the main page, press
Build Project
button on the icon of the new created project.No C++ compiler is needed at this stage. Only the required runtime files are copied from the engine directory to the project one.
-
The project is now ready. You can start playing it by pressing
Open Editor
button.
Keys | Description |
---|---|
Move (Mouse) | Look around |
Left button (Mouse) | Throw a ball |
Coming soon! Please check again this repository for new updates about this section.
This project is intended as an educational tool for getting started with the game development, so some limitations are applied to contributions in order to preserve its main purpose:
- bugs, crashes or any other technical error can be reported in our issues tracker. Bear in mind that some flaws may exist "by design" for learning purposes;
- new features must be related to the core mechanics of this game genre. Their implementations must be simple and straightforward, and cover all the supported scripting languages;
- refactoring, breaking changes, or any other change to the project architecture aren't accepted at the moment.
Please refer to our contribution guidelines for further details. In any case, please open an issue before submitting any pull request (PR) to this repository, in order to discuss its scope with maintainers.
Minimal First-Person Shooter Template for O3DE was created by @matteogrs and is licensed under the Apache License, version 2.0. Please see LICENSE and NOTICE files for further details and attributions.