4 Tech Design
Sara edited this page 2024-02-27 19:39:54 +00:00

Minimal primary gameplay loop testable

Movement

CharacterBody3D, move_and_slide with linear gravity (no acceleration).

Sword/Light Attacks

Animations with animation triggers to enable and disable hitboxes.

@startuml
class Hurtbox {
    damageAmount : int
}
Area3D ^-- Hurtbox

class Health {
    health : int
    on_death(int amount) -> void (signal)
    damage(int amount) -> void
}
Node <|-- Health

class Player {}
CharacterBody3D <|-- Player

class Enemy {}
CharacterBody3D <|-- Enemy

class CharacterBody3D {}

annotation "Godot Engine builtin"

"Godot Engine builtin" <|-- CharacterBody3D
"Godot Engine builtin" <|-- Node
"Godot Engine builtin" <|-- Area3D
@enduml

Fodder enemy type

Axe/Heavy Attacks

Minimal secondary gameplay loop testable

Room progression

Coins

Timer

Minimal full game testable

Main menu

Controls view

Retry/Score menu

All requirements/full game

Speed powerup

Berserk powerup

Explosion powerup

Tank enemy

Ranged enemy