---
# System prepended metadata

title: Space Commander

---

# Space Commander
The game is a interactive game that at bigining going to be controller by a player, The game has two main modes: God mode and Pilot mode.
God mode you will scroll the zoom to have a better preceptions of board game and see all board around the game. In pilot mode the player will have controll over only one unit and the player will do zoom but just centered over selected unit 

## MVP 0
Goal is giving core mechanics a try with the simplest possible implementation of logic. There are 2 units with mass. The two units and world spawn with 0 acceleration, there are no automatic logics for ships yet, just player controls will be implemented. So scroll, an outline of selected units for God, and scrolling and panning through the map should be all this MVP provides.

- General Terms
    - GameUnits (gu) are units that scale with map size, map is 500x500gu. Gameunits are distance, but can be implemented as meters if needed.
    - Speed is defined as GameUnits/Second (gu/s).
    - Mass is defined as kilograms (kg). The SI unit for it to be relevant to the physics system.
- Physics World
    - Friction is 0.1 (gu/s^2), but we'll play with this later. Friction for now to make logic more manageable but should be removed later on.

- Units
    - Base
        - size 5x5gu
        - mass 10
    - Soldier
        - size 1x1gu
        - mass 1
- Core Mechanic
    - God (Auto 3rd person)
        - Scroll to zoom.
        - WASD to pan through map.
        - Left click to select single unit or drag for selection box of multiple.
    - Pilot (Manual 3rd person close up)
        - Scroll to zoom.
        - Mouse position on screen determines pan around piloted unit.
        - Piloted unit is never out of view.
        - Two modes
            - camera rotates with unit (Local)
            - camera keeps north always (Global)

### Implementation
- Game Engine (Bevy)
    - Physics Library (Rapier)

## MVP 1
Units have thrusters whose acceleration will be relative to center of mass but this should be handled by the physics system by calling the point acceleration on body with local thruster position. 

This MVP should be pretty quick

## MVP 2
Units have bullets and turrets. More later

## MVP 3
Automatic unit movement.



## Future implementations 
- That unit can be recolectors that have a fuel tank that allows they spend all that fuel recolecting material by the space and put all that material inside the main unit , we will call that unit  ***Unit Base*** 
- The recolectors should be able to determinate when is a good time to return to ***Unit Base*** for to deposit all material recolected previously 