BULL hover popup text "Speeds Up ..." on F6 is not shown

gavenkoa

Prince
Joined
Jun 11, 2019
Messages
470
Location
Ukraine
BUG Mod options => Advisor => Technology [F6] => Speeds Up ... is checked. But when I hover over a tech in F6 advisor I don't see the text about which tech will be speed up by extra pre-requisite.

BULL 1.2 from https://sourceforge.net/projects/civ4bull/ is working because other features, like pre-chop are also working. I installed BULL by replacing original DLL. Other BUG options have effect.

I always played with BULL 1.2 and afraid that cost reduction on extra pre-requisites is not working for me... The popup text never changes the cost of a tech if I add extra pre-requisite with SHIFT-key queue commands...

Some code digging didn't show any contradictions:

Code:
My Games/Beyond the Sword/CustomAssets/XML/Text/BULL Misc Hovers Options.xml

<Tag>TXT_KEY_BUG_OPT_MISCHOVER__SPEDUPTECHS_TEXT</Tag>
<English>Speeds Up ...</English>

My Games/Beyond the Sword/CustomAssets/Python/BUG/Tabs/BugAdvisorOptionsTab.py
self.addCheckbox(screen, center, "MiscHover__SpedUpTechs")

civ4/bull/SDK/CvGameTextMgr.cpp
// BUG - Show Sped-Up Techs - start
if (bPlayerContext && getBugOptionBOOL("MiscHover__SpedUpTechs", true, "BUG_SPED_UP_TECHS_HOVER"))

How can I verify 20% tech reduction cost is applied? And fix BULL?
 
The bPlayerContext variable that you've quoted is not true for the Tech Advisor (nor for Civilopedia). I don't see the speeds-up info when hovering on the Diplo screen either. But it works in the tech choice popup and on the tech buttons that get shown at the top of the screen when clicking the research bar. The Tech Advisor consistently does not reflect the current game state apart from the known and queued status of techs. E.g. once Buddhism has been founded, the hover text on the Tech Advisor will still say that Meditation founds Buddhism. This info will be omitted by the tech choice popup. I think it's a deliberate decision by the original designers to make the Tech Advisor a largely static source of information.

Should an exception be made for the speeds-up info? On the one hand, it's just the kind of structural info that the Tech Advisor is intended for; on the other hand, the arrows already convey the speed-up relationships pretty directly (if one is aware of the rules). The Tech Advisor also omits "leads to" and "requires" text – (presumably) because that's already displayed graphically. Maybe coloring an arrow when acquiring the tech at its tail will speed up the tech at its head would be the approach most consistent with the current design. Mock-up attached; draws too much attention.
 

Attachments

  • speeds-up_mockup.jpg
    speeds-up_mockup.jpg
    145 KB · Views: 5
But it works in the tech choice popup and on the tech buttons that get shown at the top of the screen when clicking the research bar
Great! I see it in the research bar. Text like:

Pottery
Sped up by Fish
Speeds up Writing
I almost never used the bar, because I don't remember tech tree by heart. F6 advisor is more helpful to plan ahead.

When I added Fish as a tech (in WorldBuilder) the line "Sped up by Fish" has been disappeared. But the original cost of Pottery is still displayed both in F6 & the bar...

Basic cost of Pottery is 80B (from Civilopedia). My difficulty is IMM so iResearchPercent=125 from CIV4HandicapInfo.xml & my map is STANDARD so iResearchPercent=130 CIV4WorldInfo.xml. So the bar & F6 advisor show: 80*1.25*1.3 = 130B.

My 19bpt converted into 28 beakers of progress. But 28/19 = 1.4736 tells me nothing... Without Fish (but with Agriculture) with 19Bpt the game reports increase by 24Bpt, 24/19 = 1.2631. So I see ~20% difference but what about 6%? Never mind))

The problem that game's UI don't show actual progress with all included bonuses, because the report of F2 (Financial advisor?) tells only half truth... Also it is not clear AI resulting performance (does it respect map size or game difficulty or extra prerequisite tech). That confuses, implying you build intuition about AI performance to win, because rules are hidden from a payer.
 
Maybe coloring an arrow when acquiring the tech at its tail will speed up the tech at its head would be the approach most consistent with the current design. Mock-up attached; draws too much attention
Actually that is what I expected ))

I played with another option - "Show era" - it adds additional rectangle as shade to the tech rectangle in F6 advisor. Quite useful for those who don't remember and want to avoid AI era's bonus by postponing era.

So I thought "Speeds up..." is also in F6 advisor...
 
My 19bpt converted into 28 beakers of progress. But 28/19 = 1.4736 tells me nothing... Without Fish (but with Agriculture) with 19Bpt the game reports increase by 24Bpt, 24/19 = 1.2631. So I see ~20% difference but what about 6%? Never mind))
I've got answer. There is hidden +1Bpt, so advisor or research slider tells by performance is 19bpt, but in reality it is 20bpt. And then 28/20 = 1.4 (40% bonus with both Fishing & Agri) and 24/20 = 1.2 (20% bonus with only Agri).

 
When I added Fish as a tech (in WorldBuilder) the line "Sped up by Fish" has been disappeared. But the original cost of Pottery is still displayed both in F6 & the bar...
I guess it's only shown for tech not yet researched ... yes, there's a canResearch check in the code. Only intended as a short-term hint, I suppose - "seeing that you already have Agriculture, if you research Fishing now, that'll speed up Pottery," or "if you're considering to research Pottery now, you might want to do Fishing first."

The speed-up is implemented in CvPlayer::calculateResearchModifier along with the tech diffusion effect (TECH_COST_KNOWN_PREREQ_MODIFIER, TECH_COST_TOTAL_KNOWN_TEAM_MODIFIER in GlobalDefines). Just to be clear that it doesn't affect the tech cost.

The hidden free beaker (not included in the research rate shown on the upper left) comes from BASE_RESEARCH_RATE in GlobalDefines.
 
Back
Top Bottom