Social Combat UI, and Room Effects
Hey Folks! With the entire list of ship equipment able to be installed/uninstalled at a basic level, I decided to check-in my work and get Michael's latest work on the social combat UI. And you can see its progress in today's screenshot!
Some of you might remember the last time I showed a peek at it, and visually, it's still pretty similar. The difference now is that it'll let you see tooltips for most actions, and even choose a few to see how the AI reacts!
The version I have still uses some specialized social interactions that sit outside the normal interaction system. Hence why there's only a few working. However, Michael is working on getting the full interaction system integrated behind the scenes, so we can do all of the things NPCs had before. Plus add more that are designed exclusively for this interactive UI.
I'm expecting this to be the root of many in-game interactions, from conversations, to hiring/drafting, maybe even to physical combat. I think it'll be a really useful, and cool tool at the player's disposal.
I also started work on a new feature I've been meaning to add: room effects.
For a while now, I've been thinking it'd be useful for rooms to have effects on occupants. Things like being too crowded or lonely, or maybe even scary (e.g. on fire?). Basically, the AI gets certain stat effects from being in the room. And they might also impart their own stat effects on the room (e.g. increase its population, or it's noise level).
Some of these increment based on the AI entering/leaving the room. But some might also increment per-heartbeat, such as privacy hits from being in a crowded room.
In addition to this, I wanted AIs to seek out rooms to fulfill needs. They may run out of a crowded room to seek quiet, or to a pressurized room if they're suffocating. Or even a safe room if they're in a room with danger. Whatever the case, rooms can now be targeted in interactions.
This also prompted me to add a new special target point for interactions simply called "room." Basically, if the interaction targets the room, the AI will just choose a random walkable tile in that room. This will allow the game to send AIs to the general vicinity of a room, but a slightly different place each time.
So far, I've setup a quick and dirty "Seek Privacy" interaction, and as soon as I hook up population count to the room's stats, that should be ready to go. And I think there's a pretty cool range of other things this can open up as possible!