# Build Guidelines

Create an HTML Phaser 3 video game. The game should be similar to the old video game "Smash TV". The player will work his way through multiple zones. Each zone will consist of attack waves of different types of enemies. The enemies will get harder with each zone and have more attack options as well. The player will have three lives 100 base health points per life. When the player kills enemies he will earn XP. Create a meaningful XP and Level schedule as part of the game development. When the player earns enough XP and gets to the next level, the game should pause and a UI should show a skill tree that the player can pick a new skill from. This skill tree should be something that branches and I can edit later with JSON. The first initial options to the player in the skill tree are going to be:
- Defense
	- Take 10% less damage
- Offense
	- Increase damage by 20%
	- Increase fire rate by 40%

## Tools and Organization

- Phaser version 3 HTML game
- Use JavaScript
- Have JavaScript objects reference each other directly via IMPORT and EXPORT using ES6 standards
- Do **NOT** require a web packager.
- Create files and classes in a manner that allows future modifications and scaling at a modular level

## Basic Framework

- 1280 x 720 view
- Scale view to user's viewport.
- Use basic termporary vector graphics that can later be replaced by sprites

## Game Flow
- Create an intro scene before the game starts.
- When the player loses all lives show a Game Over overlay, and allow the player to press R to return to the main menu

## Controls
- the player should face in the direction of the mouse, as the mouse moves around the player's direction follows it but also can only turn at a fixed rate (you pick the rate that makes sense).
- W A S D should control the direction the players body moves.
- Left Mouse button fires.
