OpenXcom Forum

Modding => OXCE Suggestions NEW => OpenXcom Extended => OXCE Suggestions Rejected => Topic started by: Delian on August 16, 2022, 12:38:06 pm

Title: [Rejected] Research Progress based on actual project cost
Post by: Delian on August 16, 2022, 12:38:06 pm
Rejection reason: after long discussions, it was decided that this is an unwanted feature (not even as optional feature!)


Currently, the research progress of a research project can show 6 values:

NONE - no scientists are assigned to the project
UNKNOWN - the scientist-days spent on the research project is less or equal to 33.3% of base research project cost
POOR - the amount of assigned scientists is less or equal to 7% of the base research project cost
AVERAGE - the amount of assigned scientists is over 7% and less or equal to 13% of the base research project cost
GOOD: Shown if the amount of assigned scientists is over 13% and less or equal to 25% of the base research project cost
EXCELLENT: Shown if the amount of assigned scientists is over 25% of the base research project cost

Note that the "base research project cost" isn't the same as "actual research project cost", which is base cost modified by RNG (+/- 50%).

This is how it's always been, however, I have a reason to believe that this is actually a bug in the original game. I believe that the original developers intended for the progress to be based on the actual cost, but due to a bug (perhaps a late addition of the rng element), the progress uses base cost instead.
The reasoning is obvious: the progress shown is more or less useless because of how incorrect the information it provides is. A project with "poor" progress can finish in 1 day, and a project with "excellent" progress can take forever to finish. It's impossible to use it to predict how long the research will take, so any player trying to rely on it has only ever ended up confused. Players that try to be efficient are forced to split research into several projects.

Therefore, I suggest that a new option is added to the game that would change how research progress is shown:
"Actual Research Progress"
"Show progress of research projects based on actual (RNG-modified) research costs"

I've already made the required code changes, but I have a few questions:
1. Should I make a pull request for OXCE, or for OXC? (Option under Geoscape or Extended?)
2. What to do with localization?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 16, 2022, 12:54:14 pm
This was already discussed in the past and (overwhelmingly) rejected.

Neither OXC nor OXCE will accept such PR.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 16, 2022, 01:13:07 pm
Discussed (and overwhelmingly rejected) where?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 16, 2022, 01:15:52 pm
on Discord
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 16, 2022, 01:35:06 pm
Ok. What were the findings and conclusions of that discussion? Pros and cons of such a user option? Who was for it and who was against it?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 16, 2022, 01:50:49 pm
The discussion was very long (2+ weeks) and I don't remember much, so just to recap the (for me) important results from the discussions:

1. show progress based on remaining effort (instead of number of assigned scientists), rejected because:
- not realistic (vast majority of real-world discoveries happen without being able to say when they happen)
- immersion-breaking (whatever that means)
- players would know exactly how much remains, which destroys the point of random (more about that in point 2.)

2. show progress based on actual project cost (instead of base project cost), rejected because:
- allows players to cheat RNG (not super effectively, but still way more than acceptable)

Example:
"Back to school" needs 1000 mandays.
Game rolls 1500 mandays.
The player invests 334 mandays.
At this point, the player would be able to extrapolate the real cost to 1500 md.
The player cancels the whole project and starts it again, because statistically he still has a better chance to roll low and spend less time in total (only 834 md in the best case = 334 + 500).

The feature was rejected by all devs, all major modders present on Discord at that time, and by many players alike.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: mutantlord on August 16, 2022, 02:10:00 pm
I will add my rejection to this feature. Pointless.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Juku121 on August 16, 2022, 03:06:47 pm
How exactly does the above example show 'cheating RNG'? The average cost for a 'cheater' is going to be ((500+1000)/2 + (334+1000))/2 = 1042 > 1000. Plus all the time wasted on the extra effort. There's a number of scenarios where this does pay off, but they're a definite minority and I don't see how said 'cheater' is going to distinguish between actual costs of 1335 (where it's likely to give a minuscule profit) and 1003 (where they lose out considerably).

Edit: Okay, by only rolling back from costs extrapolated to be 1335+? So average savings of about 5% at the cost of a lot of min-maxing micro? Doesn't sound game-breaking to me./edit

Not to mention that if one were to change the 'can see progress' threshold to 1/3 of actual progress, said trick would lose a lot of its usefulness.

Was that the only 'objective' argument against the "progress speed based on actual cost" version?

I mean, "nobody but Delian wants it" is a much stronger line of reasoning. I don't want it, because a lot of the issues raised in Meridian's post also apply to the vanilla formula to one degree or another, and getting that chucked is a no-go.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: howareyou32ny on August 16, 2022, 03:12:53 pm
Made sense- randomness is fun in this game
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 16, 2022, 03:19:43 pm
I didn't say anything about average costs.
I gave a specific example of cheating RNG by 666 mandays (1500-834).
(Average costs are btw. irrelevant, because the players are not going to restart every time, only when it's actually beneficial.)

And don't start on me with "time wasted on extra effort"... half the piratez player base will sacrifice a leg and an arm for 1 manday saved by micromanagement.

This topic is closed and dead for me.
I'm not going to waste another 2+ weeks going through everything again.

Feel free to continue the discussion without me though.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 16, 2022, 03:20:10 pm
The player invests 334 mandays.
I was thinking it would have to be 500 mandays, since if the game rolled 1500, then 500 would be needed to pass the unknown and make an estimate, and then cheating wouldn't be possible.

Well, in either case, the players would be able to make a lot better estimation of how long a project takes. Which may or may not be realistic. I think that all the necessary realism is already included in that RNG roll that happens. And that people being able to give you good estimates on how long research takes isn't exactly unrealistic, but ok.

Hmm. As a player, I don't particularly care about whether I'm able to make a good estimate of a project or not. It's more about not wasting any scientist-days.
So here's a question. Do you remember anything said about a... research rollover feature? If a project rolls 40 and I put 50 on it, could those 10 wasted roll over to the next project?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Juku121 on August 16, 2022, 03:35:09 pm
@Meridian: And your example was cherry-picked to be the most advantageous possible.

I was wrong in my initial assessment, but averages still matter because no matter what the player does, the second roll is still random and not a guaranteed -50% roll.

If Piratez wants do disable such a relatively meager advantage (even 834/1000 ~= 17% is not a gigantic advantage for that amount of micromanagement hassle), Piratez can always lock that option to disabled.

Edit2: I think the actual problem here is not the ability to get some relatively mild research savings (~5% on average without reloading, and once you're savescumming the whole issue goes out of the window anyway), but the fact that a player will be able to intuit the actual cost and remove any and all uncertainty from the process at will (and nominally without cheating). /edit


@Delian: Genuine, ground-breaking research doesn't really work that way. People can give you estimates, but unless they've already done the research (a practice of quite a few scientists, sadly), that is going to be pretty useless for anything other than project management ("You said you'd be done two years ago! You're fired!" >:( ).

The current formula is a compromise between having a certain measure of uncertainty while being very simple and easy to grasp. Obviously, most people here, myself included, seem to be of the opinion that giving the player any more control over this state of affairs would tip it too far away from a 'desirable' amount of uncertainty.

I don't see much harm in this being an option, but then again I'm not the person who has to maintain this whole thing. :-\

Edit: As to scientist roll-over, I imagine that discussion was done to death when the original bug was squashed (or not re-implemented) when moving forward with OpenXcom. That is certainly going to raise some immersion issues - so 499 scientists collectively managed to come up with the bright idea of blasting alien alloys with EM radiation, and then the other 335 went back in time, saw that they weren't needed to finish the project and decided to redo their day and study laser pistols instead? :P
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Vakrug on August 17, 2022, 10:55:20 am
I have an alternative proposal:
remove that research progress (NONE, UNKNOWN, ...) completely!
This "research progress" has no meaning since player already knows project's base cost in the upper left corner.
This values now and always was totally misleading. When I played original X-COM many years ago, I was confident that this "POOR" means "too little scientists are assigned, so an output from each individual scientist is reduced". Because what else could that mean realistically?

I think this value should be replaced with number how many scientist-days already spent on this project.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: krautbernd on August 17, 2022, 02:07:59 pm
I have an alternative proposal:
remove that research progress (NONE, UNKNOWN, ...) completely!
I have a somewhat different proposal:

Don't do this.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: yergnoor on August 17, 2022, 07:35:06 pm
I have an alternative proposal:
remove that research progress (NONE, UNKNOWN, ...) completely!
The authors of mods can easily remove these evaluation inscriptions, for example, by replacing ALL of the relevant lines with just "Exploring". Since the inscription will always be the same, the player will not be able to assess the progress of the study.
Except that the number of man-days will not be shown in this way.
Such a mod is very easy to make and for personal use, if someone does not like these inscriptions.
True, I'm not sure that these same strings are not used in some other places in the game.
Forcing everyone to use just this weird research option is a departure from the UFO game behavior that OXCE developers probably won't go for. Who needs it - let them use mods, that's what OpenXcom Extended was created for.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 17, 2022, 09:57:05 pm
Genuine, ground-breaking research doesn't really work that way.
What? No? Research isn't done by shooting in the dark lol, only kids think that way. Sure, sometimes a rare eureka comes flying by coincidentally, but those are exceptions.
Normally, science is done by obtaining data, analyzing data, and then interpreting the data to come to some conclusions or discoveries. Sometimes it's just interpreting existing data. But almost always, it's done with a set goal. If you do research for a living, then you're able to make very good predictions (again, because you do research for a living) for how long each step of the scientific method will take (it's more of a science than art). Not all scientific work yields useful results, but in xcom it does heh.
You can check out the history of semiconductor manufacturing. Process nodes shrink every 2-3 years like a clockwork. Hardly any randomness there.

Anyway, it's fine.

499 scientists collectively managed to come up with the bright idea of blasting alien alloys with EM radiation, and then the other 335 went back in time, saw that they weren't needed to finish the project and decided to redo their day and study laser pistols instead? :P
That's also not... how anything works at all. You don't just... think hard for 24 hours and then at the end of day come up with "an idea", as if you had to wait until the end of the day before you were able to put the idea onto the paper.
No. You work on something, and when you finish it, you start working on the next thing. Even if it's *gasp* in the middle of the day. That's realistic. The scientists are paid to do research, not to sit around.

I've searched the forums for a research roll over feature, but couldn't find any discussion on it, so perhaps this would be a good solution to the problem then.
When a research project is done and there's overflow, you get a popup window to select which other project to overflow into. The overflow would be added to that project's mandays spent.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 17, 2022, 10:07:10 pm
Dude, this borders on trolling.

You can't be serious.

There are no hard rules against trolling on this forum, so I can't give you a warning, but if you want to be taken seriously in the future, you'll need to stop grasping at straws.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 17, 2022, 10:34:42 pm
Just to be clear, I've given up on the "show progress based on remaining effort" and "show progress based on actual project cost" features, because your explanation made sense.
However, the research roll over is an entirely different issue.

Do you remember anything said about a... research rollover feature?

I've asked you about it, but you didn't reply, so what am I to assume?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 17, 2022, 11:05:45 pm
You can follow the scientific method rigorously, obtain and analyze a crapton of data, even come to conclusions... but guess what, the conclusion is usually that you didn't discover "cold fusion" yet (replace "cold fusion" with your favourite research goal).

Nobody can estimate that cold fusion will be researched in 2 years, 4 months and 13 days.

And certainly nobody will work on the cold fusion for 2 years, 4 months, 12 days and when finally researched at 3:14pm the next day... immediately switch to researching the cure for cancer or something.

Is that enough of an answer to your question?
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 17, 2022, 11:16:21 pm
If you want a more practical answer: we have already established that the player doesn't know and shouldn't know the true research cost of a project.
That means the player cannot possibly know if any research time was "wasted" or not.
If it helps ease your mind, just convince yourself that the game rolled a higher project cost (higher exactly by the amount of the theoretically "wasted" time).
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Delian on August 18, 2022, 12:34:37 am
Right. So in conclusion, players have to choose to either be effective or efficient.
Effective - doing the right thing - focus on a single research topic you need, but waste research by overshooting
Efficient - doing it the right way - spread research over multiple topics, but not be able to quickly research the thing you need

For players who wanted to have both, well, they will have to live with the frustration.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Juku121 on August 18, 2022, 01:16:22 am
You confusing the R and the D in R&D. Doing all the menial parts of a scientific project is no guarantee of success. Unless you're after a specific, well-founded application of existing theory, in which case you're already in the D camp.

X-Com (the game) doesn't really distinguish between these two, so I suppose you're right to a degree.


As to there being two substantially different choices you can make regarding research, that's what games are all about, are they not? Making interesting choices.


Anyway, if your quality of life suffers so much from this, just peek into the save.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Meridian on August 18, 2022, 09:14:15 am
Right. So in conclusion, players have to choose to either be effective or efficient.
Effective - doing the right thing - focus on a single research topic you need, but waste research by overshooting
Efficient - doing it the right way - spread research over multiple topics, but not be able to quickly research the thing you need

For players who wanted to have both, well, they will have to live with the frustration.

Yes, absolutely.

(Infinitely) scalable efficiency is anyway just theoretical. If 1 scientist is able to discover a COVID vaccine in 200 days, 400 scientists are not going to do it in half a day (not even a million scientists are going to do it in half a day).

And I repeat again, the frustration is SELF-INFLICTED. If you couldn't look into the save file (which is cheating = looking into the future) and if you couldn't reload older saves (which is also cheating = time traveling into the past), you wouldn't be able to know that in the background you're overshooting some arbitrary number you're not even supposed to know about. As they say, you don't wanna know how the sausage is made.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: mutantlord on August 18, 2022, 10:27:02 am
Jesus Christ, Meridian,  the amount of time you spend in replying of these posts are astronomical.  I wonder if your time could be better utilised elsewhere than to catch up in these troll fights,  if I might classify them from my observation.
The usage of your personal time efficiently is very important to you? If I am not mistaken?
Title: Re: [Suggestion] Research Progress display improvement
Post by: Delian on August 18, 2022, 12:45:06 pm
you don't wanna know how the sausage is made.
Right. To keep things realistic, information on the actual research project cost should never be revealed to the player.

Let me, umm, circle back a bit to the topic of research progress ratings.
I think most players would agree that the existing research progress ratings are... lackluster to say the least. But how to improve them without giving the player any new information?

Currently, after a research project passes the unknown phase, the player can use the progress ratings to estimate the project's base cost. Just the base cost, not the actual cost. The base cost doesn't tell the player much, but it's still useful information. So let's assume that, if a project passes the unknown phase, it's not considered cheating for the player to know the project's base cost at that point, or for the game to use the base cost information.

With that in mind, I propose the following QoL feature:
In the Current Research window, add a new column (or modify the PROGRESS column) to include information on "chance to finish the project".

A few examples:
Base cost=100, spent=0, allocated=50: Chance to finish shows: UNKNOWN
Base cost=100, spent=34 allocated=10: Chance to finish shows: 0% - POOR
Base cost=100, spent=50, allocated=10: Chance to finish shows: 10% - AVERAGE
Base cost=100, spent=50, allocated=50: Chance to finish shows: 50% - EXCELLENT
Base cost=100, spent=100, allocated=10: Chance to finish shows: 20% - GOOD
Base cost=100, spent=100, allocated=50: Chance to finish shows: 100% - EXCELLENT

This is something that the player can already calculate on their own, no new information is revealed to them. It would simply make it more convenient due to the calculations happening automatically.

If, for instance, the player knows that the base cost is 20, then they can calculate that the actual cost is between 10 and 30. So if they spent 10, then each subsequently allocated scientist would give them a 5% chance to finish the project. If they spent 20, but the project hasn't finished yet, then they can calculate that the actual cost must be between 21 and 30, and each allocated scientist at that point would provide a 10% chance to finish the project. Again, any player can already calculate this, but it would be nice if it was more convenient.
Title: Re: [Suggestion] Research Progress based on actual project cost
Post by: Juku121 on August 18, 2022, 01:30:02 pm
While that is all true, this '%' is not an actual probability (since the actual project cost is already fixed) and will mislead players into thinking it is. We already have accuracy percentages that aren't, no need to double down on that.

Also, what's the supposed benefit to the player here? Are they going to try gaming these 'odds' to reduce wasted scientist-days? That's basically enticing them to gamble while the cards are rigged.

Jesus Christ, Meridian,  the amount of time you spend in replying of these posts are astronomical.
Meridian secretly likes to be wall-of-texted by argumentative internetizens. :P
Title: Re: [Suggestion] Research Progress display improvement
Post by: Delian on August 18, 2022, 02:21:30 pm
this '%' is not an actual probability

The % is the actual probability, both theoretical and practical.

In case base cost=100, spent=50, allocated=50, the chance to finish is 50% - what else would it be? There's exactly a 50% chance that the actual cost was rolled between 51 and 100, and a 50% chance that the actual cost was rolled 101-150.
If the cost was rolled to be 100 or under, then the project is finished.
If the cost was rolled to be above 100, then the project doesn't finish. In that case, the next day you'd be shown a 100% chance to finish with 50 scientists allocated.

The benefits to the player are:
- practicality in a sense that they wouldn't need to do the calculations manually
- it would allow the player to easily spot any projects with too many assigned scientists (spent + assigned > 150% base cost)
- it would make the progress ratings more informative
Title: Re: [Suggestion] Research Progress display improvement
Post by: R1dO on August 18, 2022, 02:56:27 pm
Right. To keep things realistic, information on the actual research project cost should never be revealed to the player.

I believe you've misinterpreted the paragraph the quote (.. sausage ..) originated from. This is not about having realistic changes to that screen.
It is about the lack of desire to deviate from vanilla representation/behavior just to cater to a subset of players that want absolute efficiency when it comes to scientist resource allocation.
Especially since there already is an information source available indicating to a player it would be wise to assign lots (or as few as possible) scientists for a given project: The tech viewer difficulty indicator upon middle-mouse click on a (allocated) topic, just in case you were not aware.

...
I think most players would agree that the existing research progress ratings are... lackluster to say the least. But how to improve them without giving the player any new information?
...
This is probably the core of frustration for this topic. You're so invested in this idea that you're even assuming this is something everybody struggles with. The first (and 5th) reaction on you're opening post already stated this is not the case (or at least not to the level you are assuming).

Luckily in the opening post you've already indicated being capable of altering the source code to change behavior to your liking.
There is no shame in compiling your own OXCE flavor that includes those changes (on the contrary: it shows programming skills). I would recommend to keep a separate branch around though, for easy rebase (or merge, depending on your preferred git branch management style) when a new OXCE version comes around. That way even if this topic leads to a OXCE inclusion rejection you can still enjoy your personal play style.
Title: Re: [Suggestion] Research Progress display improvement
Post by: Juku121 on August 18, 2022, 07:34:33 pm
The % is the actual probability, both theoretical and practical.
It's the probability of you being in a situation described by the estimate. But your situation will not vary no matter how you allocate your scientists. Many (perhaps most) players will think the probability is the probability of finishing next day, which it is not. Since the actual cost is already fixed.

It doesn't help your case that you're calling it 'chance to finish' yourself.

Benefits 1 and 3 are still in the 'self-inflicted' box for me. Benefit 2 is something I could get behind if everything else wasn't stacked against the feature request.