Author Topic: [DONE][Suggestion] Allow manufacture queueing  (Read 1679 times)

Offline Xilmi

  • Commander
  • *****
  • Posts: 605
    • View Profile
[DONE][Suggestion] Allow manufacture queueing
« on: March 05, 2023, 11:14:15 am »
Producing many different items can be a bit of nuisance due to them reserving their workshop-space as soon as they are queued.
Currently the only way to make it work without losing effiicency is to only queue them one after the other. Which requires you to keep in mind what you still wanted to produce.

It would be a nice QoL-improvement if just queuing the item doesn't count as having started yet and it wouldn't take away that workshop-space already. So that stuff with no assigned engineers is more of a backlog than an already started project. Only when either at least one engineer is already working on the item or there's some progress made on it, should the workshop-space for the item itself be used.
Then I could queue everything I want and just bump up the engineers whenever something gets done.

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8617
    • View Profile
1. What should happen when you try to assign some engineers, but you cannot, because of lack of workshop space?

For example "Engineers available: 50", "Workshop space available: 20"... but you can't add even +1 engineer, because this would require 31 workshop space (30 for project + 1 for engineer) and only 20 is available.

a/ Error message?
b/ Just ignore?
c/ Something else? e.g. change numbers communicated to the player on the GUI somehow?

2. @players: Any feedback? Yay? Nay?

Offline R1dO

  • Colonel
  • ****
  • Posts: 437
    • View Profile
Personally I think this would indeed be a nice QoL feature (especially for a manufacture heavy mods).

The description from the original post leaves me with an additional question though:
1) Some manufacture projects might require an input item that gets destroyed upon starting (or completion?) what would be the desired action in the following cases:
 A) Player has queued the project, never assigned an engineer and now wants to stop the project. What should happen with the input item?
 B) Player has started a project that should run 20 times. After project has run 15 times player decides to cancel production (but some hours were already put in for round 16), what should happen with the 16th input item.
 C) Similar to B, but player decides to stop between finish of 15th round and 1 hour later (e.g. no man hours were put into round 16 yet).

I must admit, B and C might be outside the scope of the original question (since it is something that could happen already).
Reason i asked them anyway is because I believe it is important from a player perspective the behavior between A-C is consistent.

As for Meridian's question on the lack of workspace behavior.
I would rate them in the following order:
1> Show an error message, something akin to:
     "This project requires X workspace to start, only Y is available".
     Where X is required workspace + 1 and Y is the amount available.
2> Whenever entering a GUI, or hovering over a project in overview screens, where one can assign engineers to a project:
     Subtract the required workspace from available as is visible on screen (and thus allow negative numbers for "workspace available").
3> Ignore (do not like that one but I went for an ordered list ... so ...)

Offline Juku121

  • Commander
  • *****
  • Posts: 1621
  • We're all mad here.
    • View Profile
I am all for it. If this was implemented, I might reconsider deleting all workshop space requirements, since the convenience of a manufacturing queue far outweighs whatever bits of game balance may result from these.

As to feedback, I would prefer something less intrusive than an error message, like maybe colouring the item red or grey, and skipping it in the processing until all requirements are met (new workshops built, rare ingredients collected, enough alchemists recruited or whatever the roadblocks may be).

As to R1dO's questions, I imagine it would be ideal if the projects never did anything until their turn in the queue comes and there's nothing blocking them (space, no engineers, no items, etc). No items consumed, no workshop space reserved, no nothing. Don't know if that'd require too much of a reworking of the current system, though.


Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8617
    • View Profile
Personally I think this would indeed be a nice QoL feature (especially for a manufacture heavy mods).

Manufacture-heavy mods already solved that by not requiring workshop space for majority of their projects.
As far as I know.
But I haven't played any bigger mods for well over a year, so dunno.

I guess this is probably mostly about vanilla-ish mods.

Personally I think this would indeed be a nice QoL feature (especially for a manufacture heavy mods).

The description from the original post leaves me with an additional question though:
1) Some manufacture projects might require an input item that gets destroyed upon starting (or completion?) what would be the desired action in the following cases:
 A) Player has queued the project, never assigned an engineer and now wants to stop the project. What should happen with the input item?
 B) Player has started a project that should run 20 times. After project has run 15 times player decides to cancel production (but some hours were already put in for round 16), what should happen with the 16th input item.
 C) Similar to B, but player decides to stop between finish of 15th round and 1 hour later (e.g. no man hours were put into round 16 yet).

I must admit, B and C might be outside the scope of the original question (since it is something that could happen already).
Reason i asked them anyway is because I believe it is important from a player perspective the behavior between A-C is consistent.

There is an option for modders to allow refunds (per item). By default turned off.
It applies to all three cases A, B and C.

Offline Juku121

  • Commander
  • *****
  • Posts: 1621
  • We're all mad here.
    • View Profile
Manufacture-heavy mods already solved that by not requiring workshop space for majority of their projects.
XCF isn't exactly manufacture-light, and there are maybe half a dozen projects there that don't require workshop space. Never been different, as far as I remember.

FMP is probably similar, what with it being vanilla-ish. Haven't touched it in years, though.

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8617
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #6 on: December 08, 2023, 05:12:01 pm »
Done: https://github.com/MeridianOXC/OpenXcom/commit/3ea637d279885b7b94b4d4906d9ad81c2fde61df


1. What should happen when you try to assign some engineers, but you cannot, because of lack of workshop space?

For example "Engineers available: 50", "Workshop space available: 20"... but you can't add even +1 engineer, because this would require 31 workshop space (30 for project + 1 for engineer) and only 20 is available.

a/ Error message?
b/ Just ignore?
c/ Something else? e.g. change numbers communicated to the player on the GUI somehow?

As for user-friendliness, I decided to communicate the problem to the player via an error message, but only in one specific case:
- when there is not enough available workspace
- and there is at least one available engineer
- and the production is queued (i.e. not in progress and zero engineers assigned)
- and the production requires non-zero workspace
- and the player is in the Detail-GUI (i.e. not on Overview-GUI, using scroll buttons)
« Last Edit: December 08, 2023, 05:15:24 pm by Meridian »

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 466
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #7 on: December 16, 2023, 06:17:33 pm »
Too late to the thread but here is my thought on manufacture space reservation.

I don't see any point in it from game strategy perspective. Fine, each item requires some extra workshop space. What normal player does? Build some extra workshop or hire less technicians per workshop reserving this extra space. One can build +10 extra workshops and don't bother with queueing manufactures. What does it really equates to? Extra cost of workshop construction and maintenance + extra tile used at base. Nothing freaking else!!! No strategic decision here as there is no other option.
If this is an only intention then just set reserved space for all manufactures at 0 and increase workshop cost/maintenance some for the equal outcome. Equally, all manufacture efforts can be proportionally increased for about the same outcome.

What is that fixed extra space anyway? Why is it fixed??? Is it a reserved space for "assembly line" or something? This does not make sense too. What, one engineer needs one "engineer cubicle" to work in + 20 space for assembly line to assemble a tank? Why then a thousand engineers need thousand cubicles but still same 20 space for a single assembly line? How they manage to fit all there? How they manage to produce it faster with same single assembly line? If anything, it should be proportional to number of engineers (every one needs a space to work would it be a personal space or part of assembly line) and the rest of materials can reside in storage as they should.

If you think this way, the same concept can be transferred to research. Indeed, each scientist need a place to reside + some space where actual thing is getting researched. Yet, designers wisely factored this extra space into personal scientist space. More scientists require more laboratory space = build more laboratories to hire more scientists. Simple and intuitive. We should do the same with manufacture.

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8617
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #8 on: December 16, 2023, 06:27:53 pm »
Just to clarify, I am not here to judge what's correct or what's wrong.
Or what's realistic and what's not... heck, practically nothing in this game is realistic.

Xcom designer did it this way and OXC/E's goal is to recreate Xcom.
With all its glory and all its flaws (in game mechanics).

If I wanted to change Xcom (which I don't!), I would have joined Xenonauts, or some of the (many) failed xcom clones.
The only reason OpenXcom is where it is today (i.e. actually done), is because it had a clear and simple goal.

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 466
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #9 on: December 16, 2023, 06:40:05 pm »
I didn't intend to criticize you or OXC/E. I think this is the best decision you stuck to the original design!

What I am saying is that it is very damn easy to set all reserved manufacturing space to zero for all items and don't bother with queueing for those modders who wants to queue them. Or just let players to build more workshops. Or whatever else that is clearly can be done in game to make it work.

I am saying you should not please people with extra "QoL" feature when they can achieve this with extra workshop (or zeroing item work space in ruleset).

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8617
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #10 on: December 16, 2023, 06:46:47 pm »
I actually agree with you on this point :)

But many don't... proven by the very existence of this thread.

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 466
    • View Profile
Re: [DONE][Suggestion] Allow manufacture queueing
« Reply #11 on: December 16, 2023, 07:03:41 pm »
I think you should hold your ground and don't let users to dictate what should be there. I mean: listen but do not blindly obey.
You did rejected my requests multiple times and, I guess, many others.
😢

Otherwise, you are defeating your own "implement vanilla functionality" stance!