
Description
Play Demo | Demo Video | Version 1.0.1 | Documentation
The Turn-Based Shooter Kit is an easy to use template for creating first-person turn-based shooter type of games!
While the kit uses sprite visuals and a shooter setting, the logic can easily be applied to 3D models and a fantasy setting.
Supports PC and Web.
Created using Blueprints, fully documented and easy to customize.
The player has to battle enemies in turns while collecting several pickups (e.g. weapons, ammo, keys).
The game includes multiple types of enemies, which can be easily extended.
The kit contains easy to understand systems for health, ammo, stats, inventory, leveling, save/load functionality and more.
The template is maintained and open for suggestions. Feel free to get in touch!
Features included in this kit:
Shared components
Dialogue Component: Allows any actor (e.g. terminals, NPCs) to have dialogue lines
Stats Component: Define stats and their influence on damage dealt and taken, for example: accuracy, defense and agility
Health Component: Defines the actor's health and armor stats. Handles health regeneration and death state
Player
Grid-based movement and rotation
Weapon selection and fire requests
Object interaction
Experience Component: Defines player experience and level
Interaction Component: Allows the player to interact with terminals, NPCs, doors etcetera
Inventory Component: Handles the player items and weapons. Defines types, amounts and max amounts
Item Component: Allows the player to use items
Vision Component: Defines the player's current vision (what is in front of the player)
Weapon system
Each weapon is easy to set up using the customization options: burst size, weapon range, damage and damage radius, fire delays, accuracy and more
AmmoComponent: Handles the ammo for the weapon. Defines the ammo per shot, ammo type and whether it weapon has unlimited ammo
Enemies
Easily define more enemies by inheriting from the BaseEnemy class and overriding the component values
EnemyActivationComponent: Handles the activation state and defines the activation radius
EnemyAttackComponent: Defines the enemy attack using stats like attack range, attacks per turn, damage and damage radius
EnemyMoveComponent: Defines the enemy moves using stats like move time and moves per turn
Items
Predefined health and armor items as examples
Generic SimpleItem that can be modified for most use cases (e.g. giving ammo)
Weapon items to unlock weapons on pick-up
Objects
Interactive objects such as sliding doors, terminals, and exits to other levels
Exploding barrels and level decoration
Character select
Allow the player to choose their archetype
Selection of 3 archetypes available
Save load system
Save and load any time during the game
Keeps track of player, enemy and object status using component data
Easily extendible
Saves the data per level
HUD
Current health / Maximum health
Current armor / Maximum armor
Health and armor packs
Current turn
Vision of the player
Log of the recent events
Game over screen
Menus
Pause menu
Main menu
Credits:
Art by Drummyfish:
Music and SFX by Juhani Junkala: