The Spatials V3 devblog 2016-02-29

Internal development notes, very slightly cleaned up and commented a week later.

TL;DR: More rooms tiles for the station, more work on the info tool, start work on vitals

We are debating on opening up the tile building model of the game in V3. Now it's still the same as in V2: a list of room kinds, connected by corridors, with a specific set of objects of each room kind. For starters we want to remove the strong association of objects and rooms, so any object be built in any room, thus making room kinds more of a aesthetic choice for the player. This feature together with the new custom tile colorization will make possible thousands of new tile combinations.

- integrate more tiles for station rooms
    it has new rows, so check TMX tile ID and internal hardcoded stuff related to color layer
    integrate new tiles as new rooms for now

New rooms

For now we've made available a version of some of the station tilesets encountered while exploring alien planets as rooms in the station. There's now 35 different room designs in the station.

As with tile colorization, it's still undecided if these changes will have some gameplay effects, and which ones. For example some designs could be unlocked with some advanced tech or by some discoveries. They could also cost more credits to build or require more materials. And they could also buff some kind of environment quality stat affecting officers and visitors. For now they are purely decorative but this is just temporary.

- info panel
    add more Registry::changed calls for UI updates
        on att changes, on entity structure changes
    priority value for sorting panels
    portrait+name+desc panel
        one: name-component OfficerComponent_Kind
- preserve scroller positions inside gui-observer
    handle only the simple case for now, direct scroller children (don't look into nesting)
- remove default autosizing of gui-v/h, it's bad
    instead add when needed
- add explicit sizing for gui-label when required, it's okay

The info panel keeps progressing into its own mini-framework. The panel model has gained some features and it's still evolving. For now it's based on a "tall" UI with scrolling (not unlike 3D editors), but this may change into a tabbed one, which could be more usable. For now many small bugs in the scripting UI system have been fixed while trying the current approach.

- vitals model
    each vital is a component, with basic fields: value, max-value (min is always 0)
    (vital-delta) based on hp-delta, still can look up procs for hit/"heal"/"fatal" transitions
    vital component kinds are registered, with metas for name, visible, and display prio
- make vulnerable-component use the new vital comp model
- add has-vitals-component for easy info panel matching to (make-vital)
- better vis for vitals bars (20px pill with bg, number text (>50 inverse on bar, <50 right of bar))
- add more test vitals
- vital vis: text value must be real value

Info tool vitals panel

Vitals are now modelled in the game. The existing health value has been transformed into the new vitals system. For now this is the basic work, just the tracking of the values with their naming, max values and components, and some early visualization. This was required as the foundations for the work that will continue this week with the actual mechanics for fullfilling impulses based on vitals, like wanting to fetch food, sit down and eat it.