Support | News | Classic | F.A.Q. | Discord | Discussions | Wiki | Roadmap

Looking at the trello, crew behavior customization is planned for the next update number! I'm very excited for this, and I'm sure many other players are too. Walt may already have a finished idea for how this would work, but this is a crew behavior customization proposal which I think is worth considering, that uses crew quarters to avoid dealing with any new UI:

  • players can assign a single target to each crew quarters, similarly to weapons. Crew quarters can only be targeted on crew-passable parts on their own ship. Crew assigned targets are saved with the ship design.

  • if crew are assigned to a weapon, thruster, or similar, they will focus on supplying that part with power/ammo. So if I assign a crew bunks to a small cannon, those crew will prioritize supplying ammo to that small cannon (and power to the ammo factory) over all other jobs.

  • if crew are assigned to a reactor or factory, they will focus on delivering that part's power/ammo to any other nearby parts that need it.

  • if crew are assigned to a fire extinguisher, they will grab fire extinguishers from anywhere and focus on fighting fires anywhere on the ship (preferring fires near the targeted fire extinguisher). Otherwise, assigned crew will only fight fires if it interferes with their job.

  • if crew are not assigned to any part (their crew quarters either has no target or is destroyed), they behave like they do currently.

  • if there are excess crew (either their assigned part doesn't need crew right now, or too many crew are assigned to that particular part), they can help out with other nearby parts, but will never stray far from their assigned target.

  • crew are permanently linked to their crew quarters, instead of wandering around between them. Crew are included in the cost of quarters instead of being hired separately. Dead or permanently separated crew count as "damage" to the quarters, and can be "repaired". Selecting a crew quarters will highlight the crew who are linked to that quarters, wherever on the ship they may be.

So basically instead of having a separate UI for crew, players can assign crew by targeting the crew quarters. I think this approach to crew behavior customization has a lot of strengths:

  • it's easy for players. Targeting crew quarters is an intuitive way to assign crew since it makes use of existing UI and mechanics, rather than having a separate crew behavior UI that players need to learn. This also makes it unintrusive, so new players aren't immediately overwhelmed by the amount of menus and buttons at their disposal - important IMO since the learning curve is already very steep.

  • it makes different sized crew quarters actually different. Right now bunks and quarters are basically identical - one is a tiny bit bigger, the other a tiny bit cheaper - and if crew barracks are added in the future they'll be just as boring.
    But if one bunk/quarters/barracks can only be assigned to one weapon/reactor/thruster at the same time, that means that crew bunks are much more flexible than crew barracks - and could be given a price tag to match. This adds much more depth to ship design for experienced players, while not overwhelming new players with UI and options.

  • it gives crew quarters a reason to exist, and prevents (or heavily discourages) crew quarter ejection strategies. If you eject your crew quarters, you lose the ability to assign your crew.

  • when boarding is added, this makes it simple and obvious how to choose targets for your boarders. Just select some crew quarters and target them where you want them to go on the enemy ship. Same deal when repelling boarders.

  • it is (I assume) faster to program and less at risk of bugs than having a separate UI and crew behavior menu.

This seems logical and relatively straightforward. I'm eager to see how this update will shift how multiplayer competitive ships are built!

    To precisely control crew behavior would require crew not only being linked to the part they are to supply but also the ammo/power source they are to bring the supply from.

    Obvious case is if I link crew to a shield and it has a nearby reactor I only want the crew drawing power from that reactor for powering the shield. I often will not want them to waste time wondering off to get power from else where.

    I really wanted to be able to assign single crew to tasks, also priority should mean that you assign priority, not one part, so from max priority to 0 priority (0 would mean that crew doesn't care about that part at all.

    (Also being able to copy modules with priority in tact would be quite crucial imo)

    Equalizer How precise does control need to be? I was assuming that crew would pick ammo/power sources the same way they do now - just whatever's closest and isn't empty. Reactor/factory picking is also planned on the trello to be improved in a few updates, which would help?

    Nordwolf I really wanted to be able to assign single crew to tasks, also priority should mean that you assign priority, not one part, so from max priority to 0 priority (0 would mean that crew doesn't care about that part at all.

    Crew control might be a place where the game needs to sacrifice precision for useability. While I agree it would be best for the experienced player to allow players to assign individual crew and customize exactly how they'll behave (really, I wish we could just write our own crew AI scripts), I think it's better for the health of the game as a whole to keep things simple. There's already a massive learning curve for new players.

    I think the ideal solution would give crew control more depth (helping experienced players) without adding more complexity (helping casual players) - the whole "easy to learn hard to master" thing. But I'm not sure the best way to pull that off.

    Nordwolf (Also being able to copy modules with priority in tact would be quite crucial imo)

    Definitely agree. Maybe crew quarters linking could copy-paste just like ion prism linking does?

      Dalas120 Maybe crew quarters linking could copy-paste just like ion prism linking does?

      Except prisms don't retain links when copying, although it is on Walt's ToDo list.

      Dalas120 So in general I really like the idea of using crew rooms as the fundamental organizational unit for crew. It's one of the ideas I've been thinking about, and I think you make a compelling argument in favor, so I'd say now I'm leaning fairly strongly in that direction.

      Some nitpicky comments:

      Dalas120 players can assign a single target to each crew quarters

      Why not multiple targets as an advanced power-user feature? They would either be in priority order or all be equal priority, not sure which is better. Seems like that would be useful for things like thrusters that you are likely to have many of but are individually low consumption.

      Dalas120 if crew are assigned to a weapon, thruster, or similar, they will focus on supplying that part with power/ammo. So if I assign a crew bunks to a small cannon, those crew will prioritize supplying ammo to that small cannon (and power to the ammo factory) over all other jobs.

      I assume this would also include operating the controls? Like the first N crew assigned would operate the controls, and then the remaining would supply ammo/power?

      Dalas120 if crew are assigned to a reactor or factory, they will focus on delivering that part's power/ammo to any other nearby parts that need it.

      Factories also need their own power. Should assigning crew to a factory make them supply that factory's power, or should it make them deliver the factory's ammo to nearby parts? Or both, with probably supplying the factory's power taking priority?

      Dalas120 if crew are not assigned to any part (their crew quarters either has no target or is destroyed), they behave like they do currently.

      Does it really make sense for crew to forget their assignment if their quarters is destroyed? I get how that's desirable for gameplay to encourage protecting quarters and discourage ejection, but it's a bit strange.

      Dalas120 if there are excess crew (either their assigned part doesn't need crew right now, or too many crew are assigned to that particular part), they can help out with other nearby parts, but will never stray far from their assigned target.

      Then the question is, how far is too far? Is that something the player can set? I want to make sure it's predictable and understandable when and and why crew will go do an unassigned job.

      Maybe the player can set a radius around the quarters in which they will look for jobs, which applies whenever they consider working an unassigned job? (Even when the quarters has no explicit assignment.) Or maybe the radius is fixed, possibly different for each crew room size? (Incidentally, it could be beneficial for performance to limit the area in which crew will job search.)

      Alternatively, perhaps if crew are given an a specific, they will simply never help out any parts which they aren't specifically assigned to? This is simple and might work fine if you can assign multiple parts, but could be unintuitive (why are my crew just idling in their quarters when there's a fire next door??) and weird.

      Dalas120 crew are permanently linked to their crew quarters, instead of wandering around between them. Crew are included in the cost of quarters instead of being hired separately. Dead or permanently separated crew count as "damage" to the quarters, and can be "repaired". Selecting a crew quarters will highlight the crew who are linked to that quarters, wherever on the ship they may be.

      I don't see why this is necessary, and it conflicts with my plan for the campaign mode where crew will be essentially their own kind of valuable, limited resource that must be hired separately at space stations and such.

      Why not allow the player to assign individual crew to different rooms (up to the room's number of beds, via the crew panel) while still having the rooms be the fundamental organizational unit for job assignment?

      Dalas120 it's easy for players. Targeting crew quarters is an intuitive way to assign crew since it makes use of existing UI and mechanics, rather than having a separate crew behavior UI that players need to learn. This also makes it unintrusive, so new players aren't immediately overwhelmed by the amount of menus and buttons at their disposal - important IMO since the learning curve is already very steep.

      I'm not 100% convinced that this shouldn't be done via a separate crew management screen. (Which will still need to exist in some fashion in order to customize crew aesthetics and manage individual crew.) Perhaps you can do it simply by selecting a part and giving it a target like normal, or you can go into the crew management screen to see an overview of all assignments?

      Dalas120 when boarding is added, this makes it simple and obvious how to choose targets for your boarders. Just select some crew quarters and target them where you want them to go on the enemy ship. Same deal when repelling boarders.

      It sounds pretty inconvenient to have to look back at your own ship simply to select your assault troops that are actually on board the enemy ship. Assault troops should probably be a special case where you can select a squad itself (probably still originating from the same room) and give them orders. And if you're defending, you can either select your own shock troop squads, or the quarters for your regular crew and tell them to attack the enemy quad.

      Equalizer To precisely control crew behavior would require crew not only being linked to the part they are to supply but also the ammo/power source they are to bring the supply from.

      I'm thinking that you could select the weapon (or whatever parts needs the ammo/power) and target it on a factory/reactor which will prioritize bringing supplies from that factory/reactor.

      Nordwolf I really wanted to be able to assign single crew to tasks, also priority should mean that you assign priority, not one part, so from max priority to 0 priority (0 would mean that crew doesn't care about that part at all.

      My original plan was to have priority customization similar to Rimworld where you could assign priority scores for particular tasks. (Essentially you could create different "roles" with their own priority scores and then assign crew or quarters to a specific role.) But this would obviously add a lot of complication and I'm not sure how useful it would actually be if you can also assign specific tasks. I'm leaning towards adding the task assignment first and then only doing priority customization if crew assignment is insufficient.


      A random thought: It'd be cool if you could assign shirt colors for each crew room. Probably not that useful but would be neat to be able to recreate Star Trek style uniform colors, like have weapons crew have red shirts, engine crew have yellow shirt, command crew have blue shirts, etc...

      Walt Why not multiple targets as an advanced power-user feature? They would either be in priority order or all be equal priority, not sure which is better. Seems like that would be useful for things like thrusters that you are likely to have many of but are individually low consumption.

      Would be great if you can shift-assign subsequent targets for crew, the same way you can queue weapon targets with shift (btw this queuing ability is very useful in prism ships in multiplayer).

      Walt Or both, with probably supplying the factory's power taking priority?

      Ideally both is the best options, but for that some AI needs to be fixed because some factories are power undersupplied and some have excess, at this point I would like to customize that.

      Walt Then the question is, how far is too far?

      I think Queued part assignment would help with that, if you assign crew to only one part it should only care about that part in my opinion, I don't like losing control by crew waddling around doing things I was not expecting it to do. You can also have two types of crew assignment - strict and non-strict, with the non-strict one just making the part be on the top of priority list and the strict one would make crew only care about that part (non-strict should be default so newer players don't mess up by assigning crew to something and then wondering why their other parts don't work)

      Walt Maybe the player can set a radius around the quarters in which they will look for jobs, which applies whenever they consider working an unassigned job?

      I like this in general, both if it was fixed or not. It would help when you are not assigning specific parts (and specific part assignment should override the radius)

      Walt Why not allow the player to assign individual crew to different rooms (up to the room's number of beds, via the crew panel) while still having the rooms be the fundamental organizational unit for job assignment?

      I think Dalas' point is very valid here, crew should be assigned/linked to a room one way or another, whichever way you prefer.

      Walt My original plan was to have priority customization similar to Rimworld where you could assign priority scores for particular tasks. (

      As I explained higher in the post, I think both are important for crew control, I personally really like Rimworld style controls and role-based assignment.

      Walt It'd be cool if you could assign shirt colors for each crew room

      I think it not only will be cool but will also be important with tracking and "debugging" your crew behavior.

      The reason I want to assign individual crew is because lots of parts can often be supplied by one crewmember easily if they are next to a reactor/etc.

      In general I like the idea of a separate crew management menu - I think it would not overwhelm a new user, in fact I think it would be the opposite, you don't have to optimize your ship with crew controls unless you want to, and overcluttering the main interface with one mechanic on top of another might not be the best way to go (because I am sure there will be more things in the future apart from crew control).

      Now, not everything has to be hidden in crew control - for example assigning crew roles to rooms or queuing ship parts for rooms can easily be done outside crew menu.



      Additional thoughts one power/ammo split:
      For weapons, storages and factories (like mine factory that needs ammo), you assign a factory/storage to them to bring resources from (can also do it in the queuing fashion) and if you assign crew to a weapon, they will use that factory/storage, if you assign crew to a factory, they would supply power to them (or ammo in case of the mine factory for example).

        Walt Currently one of the cases the crew handles the worst is when a part needs multiple suppliers (specifically tractor beams and flak to a lesser extent). The issue is they are unable to effectively load balance.

        If all suppliers are linked to the consumer and then crew are linked to the consumer this issue seems unlikely to be resolved as no information for load balancing is added.

        I suggest that it be possible to assign crew a supplier set and a consumer set. The crew will handle moving supplies from the suppliers to the consumers. A part may be in both sets (e.g. ammo factory which is a consumer of power and a source of ammo).

        This level of control would resolve the current issue of load balancing as crew can be divided between different suppliers (e.g. each crew/crew quarter linked to 1 reactor of many supplying a tractor beam) even though they all are providing supply to the same consumer.

        Equalizer That's starting to sound overly complicated to me, and I think I can improve the supplier-selection algorithm to handle load balancing automatically.

        Walt Why not multiple targets as an advanced power-user feature? They would either be in priority order or all be equal priority, not sure which is better.

        I was thinking of restricting it to one target to make different size crew quarters are relevant - if you can split up a crew barracks to 20 different parts then it's basically the same as 20 different crew bunks. Probably not a big deal though.

        Walt Seems like that would be useful for things like thrusters that you are likely to have many of but are individually low consumption.

        For many parts that each have low consumption, the player could assign crew to a reactor instead of each individual part. Crew would then deliver from that reactor to each associated thruster (IIRC parts already pick out the closest power/ammo source).

        Walt both, with probably supplying the factory's power taking priority?

        ^

        Crew assigned to a weapon could also supply power to the weapon's factory(s) if necessary.

        Walt Does it really make sense for crew to forget their assignment if their quarters is destroyed? I get how that's desirable for gameplay to encourage protecting quarters and discourage ejection, but it's a bit strange.

        I was thinking of it like how ships forget their current move command when the control room is destroyed, and even shut off auto-fired thrusters. Probably not a big deal either way, though I do think it's an elegant solution to prevent crew quarters ejection (and a lot more realistic than having crew straight-up die).

        Walt I don't see why this is necessary, and it conflicts with my plan for the campaign mode where crew will be essentially their own kind of valuable, limited resource that must be hired separately at space stations and such.

        Ah, um, so a bit off topic but I actually don't think that an open world campaign would work very well for cosmoteer, for a number of reasons. Probably not worth discussing now, but that's the perspective I'm coming from with the crew changes.

        Walt Then the question is, how far is too far? Is that something the player can set? I want to make sure it's predictable and understandable when and and why crew will go do an unassigned job.

        That's a good point, and I'm not sure what the best solution is.

        One additional thing to consider is that if a player assigns crew to a shield, they probably want those crew to dedicate themselves to that shield instead of wandering off and being too far away to react quickly when it needs recharging.

        Walt Alternatively, perhaps if crew are given an a specific, they will simply never help out any parts which they aren't specifically assigned to? This is simple and might work fine if you can assign multiple parts, but could be unintuitive (why are my crew just idling in their quarters when there's a fire next door??) and weird.

        One possible idea: maybe do this but have crew wait in their assigned parts when idle. That makes it very clear why the crew are there, and also fixes the weird thing where ships take a while to "warm up" while crew walk from quarters to weapons. A downside to this is that it makes quarters placement less important, since crew no longer have to walk from quarters to weapons (though this downside could be partially made up by making crew lose their targets if their quarters are destroyed).

        Walt Why not allow the player to assign individual crew to different rooms (up to the room's number of beds, via the crew panel) while still having the rooms be the fundamental organizational unit for job assignment?

        I suppose you could, it just feels overly complicated and I'm not sure what it would accomplish. In current multiplayer AFAIK it's not even possible to spawn a ship with non-full quarters, and if there was I doubt anybody would ever use it.

        Walt have red shirts

        ^ expendable space marines

        Keep it as simple as possible, micromanagement is not fun.

        Dalas120 ^ expendable space marines

        That would be the boarding feature already.

          Dalas120 Ah, um, so a bit off topic but I actually don't think that an open world campaign would work very well for cosmoteer, for a number of reasons. Probably not worth discussing now, but that's the perspective I'm coming from with the crew changes.

          Ha, well, obviously I currently disagree, but I'm curious to know your thoughts. (Not in this thread.) I actually just recently put together a design doc for the campaign mode that I've been workshopping with some designer friends of mine, which I'd be happy to share with you and will probably post here at some point to get public feedback on it.

          Dalas120 One possible idea: maybe do this but have crew wait in their assigned parts when idle. That makes it very clear why the crew are there, and also fixes the weird thing where ships take a while to "warm up" while crew walk from quarters to weapons. A downside to this is that it makes quarters placement less important, since crew no longer have to walk from quarters to weapons (though this downside could be partially made up by making crew lose their targets if their quarters are destroyed).

          Another downside is that there could potentially be an unlimited number of crew stacked up on a single part, just idling and waiting for something to do.

          Dalas120 I suppose you could, it just feels overly complicated and I'm not sure what it would accomplish. In current multiplayer AFAIK it's not even possible to spawn a ship with non-full quarters, and if there was I doubt anybody would ever use it.

          Currently there's not any reason to if all your quarters are full. Once crew aesthetic customization is implemented, then I suppose people could want certain crewmembers to do certain things. And if there are ever gameplay differences between crew (which I am still very uncertain about), then it'd definitely be needed.

            Walt I think a good balance would be the use of the proposed crew quarter/bunk targeting system with some changes.

            Firstly, for targeting, there can be different categories, eg:
            1. Operation target: crew operates the target (eg, weapon stations)
            2a. Supply ammo target: crew takes parts/ammo from selected factory/storage
            2b. Stock ammo target: crew stocks ammo/energy of target
            3. Supply energy target: crew takes energy from selected reactor

            After that, add in 0-10 slider options for the crew:

            Damage control: prioritization for crew to fight fires/repair (maybe?) in selected targets and along supply route.
            Servicing: prioritization for crew to supply energy/fight fires in other components nearby (eg, thrusters)
            Pathing: sets how far crew will stray from service path

            A high damage control score will assign more crew for firefighting over supplying energy/ammo and crew assigned to firefighting will path to the closest FE. This might be modified with the pathing score, where a low pathing score would reduce the number of crew assigned to fight the fire if the path distance to the extinguisher is too far.

            A high servicing score will increase the probability of the crew being assigned to assist nearby components from their targeted components or their service path. This is modified by the pathing score.

            Finally , crew quarters with no targets will act as per normal AI and will replace dead crew in other assigned quarters, and will only assist in supplying components with energy/ammo if there are excess slots that are not assigned to the assigned crew (prevents unassigned crew far away from clogging up a slot, eg. Unassigned crew far away to recharge the last battery of a depleted shield generator).

            This way, you can control nearly every aspect of the crew to a great degree without going down to the individual level assignment/customization of crew. Some examples:

            Cannon, factory, reactor
            DC: 3, Servicing: 5, Pathing: 1
            Assigned crew mans cannon, focuses on supplying cannon with ammo, factory with energy, and will only assign 1-2 crew to fight a fire or supply 2-3 crew to components adjacent to its targets or along its supply path.

            Reactor, energy storage
            DC: 10, servicing: 10, pathing: 5
            Crew would drop everything to stop fires in a moderate area, supply components with energy in a moderate area from both reactor and storage, and keep storage topped up.

            Energy storage
            DC: 0, servicing: 0, pathing: 10
            Crew only keeps energy storage topped up with energy from reactors from anywhere they can reach.

            Cannon, reactor
            DC: 5, servicing: 5, pathing: 3
            Crew mans cannon, extra crew supplies ammo from nearby factories/storages, supplies energy to nearby components along the path between reactor and cannon, and up to half of the crew would stop tasks to fight fire.

              Write a Reply...