Ship's Duty Schedule

Hey Folks! Back to design tasks today, as I decided to tackle crew management.

I'm still a bit unsure where it's best to go next with features and content, but controlling crew is becoming more and more pertinent as we increase their agency. It's not sufficient anymore to assume any human on a ship is that ship's crew, as we might be at a station doing some shopping, or boarding a derelict for salvage. So there needs to be some concept of a team associated with the player.

Furthermore, that team should have some controls on it for things like who is doing what and when, where they are allowed to go, and whether they are removed from the team. That's where today's screenshot comes in.

I'm picturing there being a special interaction type "Invite to Crew" or similar, which acts as a way to designate a person as officially a member of the player's crew. The context of this will get figured out later, as will the potential answers the NPC might choose. But for now, that's how we get them onto this UI's list.

Once on this list, we have a few things we can do to control their behavior. The first is something familiar to anyone who's done shift work, scheduled a busy machine, or played Rimworld. The player can designate which activities a crew should do at each hour. And for now, that's either work, sleep, or free time.

There's also a toggle button for "Shore Leave," which controls whether that crew is allowed to leave the ship. Most of the time, this will be irrelevant. But in cases where you want your crew to remain on board, this allows some granular control over that. Especially handy when docked to an airless ship :)

Finally, there's a button to dismiss crew. Inevitably, there are going to be crew you don't like, or cannot afford, or for whatever reason, must fire. This is the official way to do that. (I suppose an unofficial way would be to lock them in an airlock and depressurize it, but that's a discussion for another time.)

So far, this is a pretty simple UI. I can imagine a few more widgets per line here at some point. But I think this covers the basics for now.

There's still a lot of work to do here, of course. None of this is hooked up to AI behavior yet. (Or even legitimate crew members.) There's no invite interaction. And there's no place to store this data yet, though I'm picturing that being a sort of "Company" class, in the sense that a ship's crew is basically a corporation.

Anyway, a lot of logic to add yet. Also, the mouse alignment seems really wonky on the hour toggle buttons. For some reason, it assumes the mouse pointer is offset to the right and down a bit. But I have a hunch this might be due to anchor points or pivots. More on that tomorrow, however.

Tags: Ostranauts

Comments

Malacodor's picture
Malacodor

Do you plan to allow the player to assign crew members to specific jobs or workstations, like in FTL, but without 24h workdays? With some more complexity this feature could turn into something, the player actually spends time with. Btw, the 'Dismiss' button is way too close to 'Shore Leave' for people who are all thumbs (not that I were such a person *cough*).

Ran around with a clown mask before it was cool

dcfedor's picture
dcfedor

I'm picturing job assignment similar to Rimworld. So there are different job types (e.g. repairs, cleaning, cooking), and each member can be assigned to zero or more of them. This roster UI controls the hours they work, and some other UI controls which tasks they are allowed.

As for being all thumbs, is that a problem when you're using the mouse? I don't expect this to be on a touchscreen, since it's PC-only right now. In any case, I suspect the Dismiss button will have some sort of "Are you sure" modal or other intermediate UI to confirm.

Dan Fedor - Founder, Blue Bottle Games

matsy's picture
matsy

Be good to be able to create a role with hourly slots and then assign them to the characters as it will be inevitably someone has a bigger crew and I can see this being a pain...

dcfedor's picture
dcfedor

Do you mean changing roles during different hours? Like "cook" in the morning, and "security" in the evening? Or am I misunderstanding?

Dan Fedor - Founder, Blue Bottle Games

matsy's picture
matsy

More like I create a role (or group) like "engineer" with the hours like above and then I assign crew members to that group so I don't have to set the same thing multiple times if I intend to have multiple crew doing the same job. Probably not needed for small crew scenarios but that said if you have high turn over of crew or games and these groups are persistent then it one less thing to have to keep doing.

dcfedor's picture
dcfedor

Ah, I see what you mean. Yeah, I think that would depend a lot on how often you had to set it up. If you only had to do it a few times per game, that's a lot more manageable than if you're doing it dozens.

Dan Fedor - Founder, Blue Bottle Games