[Oxyd] [0.18.4] Research progress of current tier shows for next queued tier

This subforum contains all the issues which we already resolved.
Post Reply
Jorn86
Long Handed Inserter
Long Handed Inserter
Posts: 70
Joined: Sun May 01, 2016 7:08 pm
Contact:

[Oxyd] [0.18.4] Research progress of current tier shows for next queued tier

Post by Jorn86 »

If I have multiple tiers of the same research queued, the progress of the current tier will show as a green bar on all the next queued tiers too.
See attached screenshot: Mining prod 6 already has progress while researching mining prod 5.
Attachments
20200209104027_1.jpg
20200209104027_1.jpg (334.11 KiB) Viewed 3325 times

Honktown
Smart Inserter
Smart Inserter
Posts: 1037
Joined: Thu Oct 03, 2019 7:10 am
Contact:

Re: [0.18.4] Research progress of current tier shows for next queued tier

Post by Honktown »

I can't say whether it's right or wrong, but I can explain the (probable) reason:

Research progress is based on force.research_progress, and is stored off somewhere (it's not in the technology).

The values for progress in the tech screen are based on force.research_progress. The infinite researches are based on the same prototype - so their research_progress may refer to the same value across all infinite techs, unless it was removed from each infinite tech's picture (they are sequential, so they should never actually show anything past the first)
hint hint that's probably gonna be the fix
.

When the technology finishes (explicitly finishes) the force.research_unit_count is updated from the research_unit_count_formula, and progress reset to 0, as well as level being incremented and research set to enabled. Bunch of things.

There's a bug with two* mods, and your issue perfectly explains it: one sets force.current_research.enabled when it triggers, instead of modifying force.research_progress. Because the research is enabled, the level cost is recalculated to a fixed-cost, but the progress is not reset. As soon as the first infinite research completes, the progress isn't reset, and each next level happens instantly (progress is 100% or over, research_units_required is fixed by second mod).

Easy way to reproduce:
https://mods.factorio.com/mod/enemytechnology
Edit: Forgot, another mod is needed for the instant research, a fixed-infinite-research cost mod. Just using that mod makes all the completed researches include their previous progress, but it doesn't recalculate the cost unless the research noise is made I think (normally it gets close and skips past).
I have mods! I guess!
Link

Jorn86
Long Handed Inserter
Long Handed Inserter
Posts: 70
Joined: Sun May 01, 2016 7:08 pm
Contact:

Re: [0.18.4] Research progress of current tier shows for next queued tier

Post by Jorn86 »

The progress is still showing incorrectly in 0.18.6

traycer
Inserter
Inserter
Posts: 40
Joined: Fri Jul 07, 2017 5:40 am
Contact:

Re: [Oxyd] [0.18.4] Research progress of current tier shows for next queued tier

Post by traycer »

Discovered this myself today when queuing up a bunch of follower robot count research to stress test my base. 0.18.18.

Image

Rseding91
Factorio Staff
Factorio Staff
Posts: 13923
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [Oxyd] [0.18.4] Research progress of current tier shows for next queued tier

Post by Rseding91 »

Thanks for the report. It's now fixed for the next release.
If you want to get ahold of me I'm almost always on Discord.

Post Reply

Return to “Resolved Problems and Bugs”