She's Dead, Jim

Hey Folks! Hope everyone had a good weekend. Had some grow-up playtime on Sunday as we caught-up with friends over a game of Pandemic Legacy. Refilling our social contact stats, so to speak.

Back at work, I had a bit of admin work to catch-up on, then I wanted to try and get the ball rolling asap on making the game playable. So I decided to tackle two long-standing shortcomings: death and defecation.

Up until now, I had several stats being tracked on each AI, and AI could even start having what I call "discomfort" conditions if those stats got too dangerous. "Discomfort" here just means a stage of deficiency, sort of like hunger, malnourished, and starving were stages of hunger in NEO Scavenger.

In some cases, these final stages were fatal. Starvation being one. And asphyxiation (lack of air) being another. That second one comes up way sooner than hunger, and on several occasions while testing, the AI long-since died of asphyxiation, yet were still walking around as if it didn't matter.

So I decided it was finally time to tackle death.

Doing so was actually pretty easy, in terms of code. I already had some of the pieces in place, as I knew I'd need them from working on NS. The hardest part was dusting off the old character sprite and animating a lie-down pose. You can see the result above. And I'll admit, it could use some work.

On the other hand, it also turned out better than I expected, considering the AI is just a collection of flat planes with sprites on it. It was designed to look good from above while standing, but a little bit of tweaking meant it still looked like a fairly 3D person. My biggest gripe is the head's facing, which is awkward, and maybe the legs are too short. The head will need more work anyway, as it needs to change according to the character's appearance (and probably helmet). But anyway, we can die now!

The defecation issue was just fixing the toilet interaction chain to work. I thought I had fixed it before, but I noticed a few things in there that would never have worked. So I must've been sidetracked before I could finish it. In any case, I got those working again.

The toilet fix was fairly minor, but let me tell you, the death was a nice change of pace. Suddenly, the clock is ticking, and the AI needs to make sure that atmo keeps flowing. And that's going to mean finding money to pay for it (or some way to steal it). In other words: something important to do!

It also made the deficiency of current atmo processing equipment more apparent. The best thing I've got now is an air pump you connect to N2 and O2 tanks, and it just pumps gas from those into a room constantly. Forever. And it won't stop.

That's not ideal, as we'll be on long trips with (hopefully) stable atmosphere in the ship. They'll need to shut off at some point to maintain good O2 levels. So I think I may mash-up the air pump with the O2 sensor to make a new and improved O2-sensitive air pump. Something that regulates flow according to needs. Maybe even according to user input? It'll be another good step towards long-range flight viability, and the eventual gameplay loop.

Tags: Ostranauts

Comments

ra1's picture
ra1

I hope you can come up with a good balance between micro and complete automation. Maybe early-game you have to micro, and added components will automatically do stuff -- at least until it breaks down.

P.S. I hate incessant/unchanging micromanagement.

dcfedor's picture
dcfedor

I'm thinking I should at least be able to achieve RimWorld levels of automation. E.g. the AI is pretty self-sufficient, but you'll need to provide accommodations. Atmo processing should mind its own business until something breaks, then you have to step in.

Could probably even rig the AI to just fix it if they are able, without intervention.

I think the player comes in with massaging interpersonal relations, assigning responsibilities and shifts, and high-level decisions like "where do we go next?"

Dan Fedor - Founder, Blue Bottle Games