Great Scientists Behaving Badly....

sman1975

Emperor
Joined
Aug 27, 2016
Messages
1,370
Location
Dallas, TX
I'm seeing an odd situation in my World at War mod. It involves using Great Scientists to discover techs.

This mod adds a bunch of techs to the Industrial and later Eras, plus adds another "Future War" Era at the end of the game.

The situation: Say you're researching a tech, e.g. Ecology. You're a few turns away for finishing research. You have 4000 beakers already completed, needing about 1000 to discover the tech.

Then you get a Great Scientist and decide to use his "Discover Technology" bulb to speed things along.

In our example, the bulb will yield 2000 beakers of science - enough to discover Ecology, with 1000 beakers left over. You hit the bulb, then viola! The tech is discovered. You clear the popup, then open the Tech Tree.....


The problem: the game subsequently applies these 1000 left-over beakers to EVERY non-discovered tech on the tech tree! Every single, unresearched tech now shows "Progress: 1000 out of XXXX Science"

Before the bulb popped, these techs showed no progress at all...


This can easily be exploited - by saving any GS until the turn before tech discovery, then all the left-over beakers get added to ALL techs left to discover. After a few of these exploits, even the latest tech only needs a couple of turns to complete.

I've done a lot of research on tech overflow, but most of this is dated and seems to have been patched.

Does anyone have any ideas what might be causing the bogus award of free research? Or do I just disable the "Discover Tech" bulb on the GS?

Thanks!
 
Last edited:
An update for clarity.....

Here are the before/after screengrabs:

upload_2019-1-19_11-36-9.jpeg upload_2019-1-19_11-36-25.jpeg

Now, I know that when a GS pops (heck, even when you normally research a tech) - there are "left-over" beakers of science. And normal Tech Tree bevahiour shows these left-over beakers as "progress" in all undiscovered techs - for the remainder of that turn. No issues so far.

So, I would select the next tech to research and hit "Next Turn"...

The problem is that I was seeing was that those left-over beakers didn't disappear the next turn. They still showed as "progress" in all undiscovered techs.

Developed a debug script, and the odd thing I was noticing? When I looked at tech progress before the GS popped (LUA using TeamTechs:GetResearchProgress() ) - and immediately after the GS popped: the numbers is showed for each tech were correct! It was the Tooltip showing incorrect information.

I looked at TechTree.lua and TechHelpInclude.lua but didn't notice them doing much differently than me (except they used ActivePlayer where I used the Players[iplayerID] pointers, but didn't figure this made much difference).


Anyways, to make a long story longer.... I'm not entirely certain I have an "incorrect data" issue rather than an "incorrect display" issue...

Has anyone seen anything like this before - where the TT tooltips were off-base?

Thanks!
 
Top Bottom