AND2 and SVN Bug Reports - A New Dawn 2 ONLY

Please watch your language. You are not going to get the changes you want by sounding hysterical at best and openly insulting at worst.

I have deliberately chosen some civics to have Can Hurry With Gold and some not so that it is a decision the player has to take into account, rather than an ability that the player always has, in which case it shouldn't even be part of the civics at all. I will concede that BTS' limiting of this ability to Universal Suffrage is the wrong civic category and far too limited, but I also thought that the previous setup was far too generous. Every economy civic between Coinage and Regulated had the ability. I consider "realism" one tool in the box, not the be-all and end-all.

If you want to edit your own copy of the mod, I certainly can't stop that. You can edit CIV4CivicInfos.xml by replacing <Hurrys/> with this
Code:
            <Hurrys>
                <Hurry>
                    <HurryType>HURRY_GOLD</HurryType>
                    <bHurry>1</bHurry>
                </Hurry>
            </Hurrys>
for any civic that you want to grant Can Hurry With Gold to.
 
Please watch your language. You are not going to get the changes you want by sounding hysterical at best and openly insulting at worst.

:agree: Not the first time you've been told this, dreifels.
 
SVN 1041 Strike fighters auto upgrade

Strike fighters ARE upgradeable to Stealth fighters, but they don't AUTOMATICALLY upgrade to stealth fighters in you build lists. It will continue to build strike fighters, and give you the option to build both.

It maybe because they can upgrade to both stealth fighters and modern fighters, and defaults to modern fighters in build queue?? haven't gotten that far yet.

in Civ4Unitinfos.xml

Spoiler :

<UnitClassUpgrades>
<UnitClassUpgrade>
<UnitClassUpgradeType>UNITCLASS_STEALTH_FIGHTER</UnitClassUpgradeType>
<bUnitClassUpgrade>1</bUnitClassUpgrade>
</UnitClassUpgrade>
<UnitClassUpgrade>
<UnitClassUpgradeType>UNITCLASS_MODERN_FIGHTER</UnitClassUpgradeType>
<bUnitClassUpgrade>1</bUnitClassUpgrade>
</UnitClassUpgrade>
</UnitClassUpgrades>


Seems to work fine?? found this?? error??
Spoiler :

<FormationType>FORMATION_TYPE_MACHINE</FormationType>
<HotKey/>
<bAltDown>0</bAltDown>
<bShiftDown>0</bShiftDown>
<bCtrlDown>0</bCtrlDown>
<iHotKeyPriority>0</iHotKeyPriority>
<FreePromotions/>
<LeaderPromotion>NONE</LeaderPromotion>
<iLeaderExperience>0</iLeaderExperience>
<bDCMAirBomb1>1</bDCMAirBomb1>
<bDCMAirBomb2>0</bDCMAirBomb2>
<bDCMAirBomb3>0</bDCMAirBomb3>STRIKE_FI
<bDCMAirBomb4>1</bDCMAirBomb4>
<bDCMAirBomb5>0</bDCMAirBomb5>
<bDCMFighterEngage>1</bDCMFighterEngage>
<CivilizationNames>

Incomplete name?? dunno deleted it, might have been me looking for that string??

*Edit - I deleted the text, and saved and rebooted the game, no recalculation of modifiers needed, and strike fighters are removed from being buildable units. Still in ALL BUILD AVAILABILITY
 
Last edited:
SVN 1041 Strike fighters auto upgrade

Strike fighters ARE upgradeable to Stealth fighters, but they don't AUTOMATICALLY upgrade to stealth fighters in you build lists. It will continue to build strike fighters, and give you the option to build both.

It maybe because they can upgrade to both stealth fighters and modern fighters, and defaults to modern fighters in build queue?? haven't gotten that far yet.

in Civ4Unitinfos.xml

Spoiler :

<UnitClassUpgrades>
<UnitClassUpgrade>
<UnitClassUpgradeType>UNITCLASS_STEALTH_FIGHTER</UnitClassUpgradeType>
<bUnitClassUpgrade>1</bUnitClassUpgrade>
</UnitClassUpgrade>
<UnitClassUpgrade>
<UnitClassUpgradeType>UNITCLASS_MODERN_FIGHTER</UnitClassUpgradeType>
<bUnitClassUpgrade>1</bUnitClassUpgrade>
</UnitClassUpgrade>
</UnitClassUpgrades>


Seems to work fine?? found this?? error??
Spoiler :

<FormationType>FORMATION_TYPE_MACHINE</FormationType>
<HotKey/>
<bAltDown>0</bAltDown>
<bShiftDown>0</bShiftDown>
<bCtrlDown>0</bCtrlDown>
<iHotKeyPriority>0</iHotKeyPriority>
<FreePromotions/>
<LeaderPromotion>NONE</LeaderPromotion>
<iLeaderExperience>0</iLeaderExperience>
<bDCMAirBomb1>1</bDCMAirBomb1>
<bDCMAirBomb2>0</bDCMAirBomb2>
<bDCMAirBomb3>0</bDCMAirBomb3>STRIKE_FI
<bDCMAirBomb4>1</bDCMAirBomb4>
<bDCMAirBomb5>0</bDCMAirBomb5>
<bDCMFighterEngage>1</bDCMFighterEngage>
<CivilizationNames>

Incomplete name?? dunno deleted it, might have been me looking for that string??

*Edit - I deleted the text, and saved and rebooted the game, no recalculation of modifiers needed, and strike fighters are removed from being buildable units. Still in ALL BUILD AVAILABILITY

Your first explanation was correct. Units with multiple upgrade paths don't disappear off the build lists until all their upgrade units are available. This is standard behavior. I don't think it is necessary to fix. There are a couple places where I have used <ForceObsoleteTech> to make a unit go obsolete as soon as one of its upgrades was available, but that's normally for national units that I don't want to see reappear if the upgrade is exhausted (so you can't build Traders again if you max out on Caravans).

That incomplete string must be in your version of the mod, because I looked in my copy and couldn't find it. I think anything in the XML that isn't inside a tag will be ignored.
 
This is not a bug, but something I would like to request. In CvGameTextMgr.cpp, lines 13285-13313 are the lines that generate the text for the buildings/Wonders that cause other buildings to generate commerce. An example would be Bolshoi's +3 culture to all Opera House.

This text is being generated before just about any other text, and it looks very out-of-place. I think it should be moved to line 14573. This would put additional commerce from buildings just after additional commerce from specialists.

Can this be done in the next DLL build?
 
This is not a bug, but something I would like to request. In CvGameTextMgr.cpp, lines 13285-13313 are the lines that generate the text for the buildings/Wonders that cause other buildings to generate commerce. An example would be Bolshoi's +3 culture to all Opera House.

This text is being generated before just about any other text, and it looks very out-of-place. I think it should be moved to line 14573. This would put additional commerce from buildings just after additional commerce from specialists.

Can this be done in the next DLL build?

Sure, no problem.
 
SVN 1041 - Three gorges dam

The Three gorges dam, doesn't replace all your previous power generating buildings, ie Coal plants, Oil power plants, Hydro plants and nuclear plants.

IF the Three gorges dam is going to provide power to the continent, it should replace all there other building, and remove the ill health, the employed citizen, but NOT the hammer bonus.

Fusion power plants, probably works the same, it won't replace the previous power plants, even though it provides continental wide power production.!!

Solution - Building of these wonders, should replace/obsolete the other power plants.

Another bug is Rebels getting Explorers as the top unit in that line, when I have Jeeps available. They do get copies of all the other top units, but NO siege. They use Mobile Sams as siege??

Bolter infantry has sound of Machine gun unit such as Marines/Infantry?? deliberate or not changed to a more laser sound??
 
Last edited:
SVN 1041 - Three gorges dam

The Three gorges dam, doesn't replace all your previous power generating buildings, ie Coal plants, Oil power plants, Hydro plants and nuclear plants.

IF the Three gorges dam is going to provide power to the continent, it should replace all there other building, and remove the ill health, the employed citizen, but NOT the hammer bonus.

Fusion power plants, probably works the same, it won't replace the previous power plants, even though it provides continental wide power production.!!

Solution - Building of these wonders, should replace/obsolete the other power plants.

Wonders do not work that way. There is no tag that can remove buildings. The power tags just specify whether a building provides dirty power to its city, clean power to its city, or clean power to a continent.
 
It's a valid concern though.
By the time ThreeGorgesDam comes around, most if not all the cities on that continent should have their own power plants. Once the wonder is completed, the non-obsoletion of the individual power plants results in one citizen per city being "employed" without any benefit (and on larger maps, this is a considerable number).
 
It's a valid concern though.
By the time ThreeGorgesDam comes around, most if not all the cities on that continent should have their own power plants. Once the wonder is completed, the non-obsoletion of the individual power plants results in one citizen per city being "employed" without any benefit (and on larger maps, this is a considerable number).

You're right and I'm thinking about a solution for this, but I haven't come up with anything yet.
 
You're right and I'm thinking about a solution for this, but I haven't come up with anything yet.

I don't think it's impossible to do. You would probably need two routines; one to dismantle all existing power plants on the same continent (checking buildings for <bPower> or <bDirtyPower>) and one to prevent power plant building if the city is receiving clean power from somewhere else (requiring a new XML tag). You could combine the first routine into the routine that establishes the area clean power.
 
Here is something else I would like to request in CvGameTextMgr.cpp.

The code to add the text for a building with a minimum population is at lines 15915-15923. It reads like this.
Code:
        int iPrereqPopulation = std::max(kBuilding.getPrereqPopulation(), (pCity != NULL ? pCity->getNumPopulationEmployed() + 1 : 0) + kBuilding.getNumPopulationEmployed());
        if (iPrereqPopulation > 0)
        {
            if (pCity == NULL || pCity->getPopulation() < iPrereqPopulation)
            {
                szBuffer.append(NEWLINE);
                szBuffer.append(gDLL->getText("TXT_KEY_BUILDING_REQUIRES_POPULATION", iPrereqPopulation));
            }
        }

As I understand it, this assigns the text Requires at least a city of size %d1 to any building that either has a <iNumPopulationEmployed> greater than 0 or an <iPrereqPopulation> greater than 0, or to all buildings if all your citizens are currently employed. I tested this with a size-1 city given a Foundry in WorldBuilder. The city couldn't build any other buildings and they all said requires a city of at least size 2.

The problem is that this puts an unnecessary line of text on buildings that employ 1 citizen and have no minimum population. The text is Requires at least a city of size 1, which is meaningless because cities can't be smaller than size 1.

Would it be possible to change to iPrereqPopulation > 0 to iPrereqPopulation > 1 at line 15916? It should hide the unnecessary text for Foundry and Workhouse, and for any other building we might make that employs citizens, without interfering with the text for any other building.
 
It actually works at population 1, it will hide ALL buildings that require an employed citizen, and will only allow the building of units.

I had an existing city, that I had taken, starved down to population 1, and it hid all the builds, but still ran a few other existing buildings.

Whether this is different for new cities??, but existing it hid all the buildings until I got to size 2 via a food caravan.

Though, from memory, it employed 1 citizen, or something, because it wouldn't grow or work a food tile, hence the food caravan.
 
It's a valid concern though.
By the time ThreeGorgesDam comes around, most if not all the cities on that continent should have their own power plants. Once the wonder is completed, the non-obsoletion of the individual power plants results in one citizen per city being "employed" without any benefit (and on larger maps, this is a considerable number).

You're right.On the other hand, you're not obliged to build power plants in every city until ThreeGorgesDam comes around.My strategy first of all is to build only Hydro plants where it's possible of course and then wait for TGD wonder to provide power for the rest cities on a continent.My goal is to not deteriorate the unhealthiness of cities by building any sort of plant(oil/coal plant).
 
Systematic crash on next turn.
Build 1043, brand new game. Minidump is empty.

Classical age, Mongols, custom scenario on Earth with 26 preset civs. Hundreds of turns ago I used World Builder to give some more powerful units to other civs but I doubt that's the reason.
 

Attachments

  • Genghis Khan - RoMAND.CivBeyondSwordSave
    3.1 MB · Views: 105
Systematic crash on next turn.
Build 1043, brand new game. Minidump is empty.

Classical age, Mongols, custom scenario on Earth with 26 preset civs. Hundreds of turns ago I used World Builder to give some more powerful units to other civs but I doubt that's the reason.

Mmm, it crashes for me too, but I don't have a clue on what might be. I've checked the minidump generated by the crash, but I can't debug it. Strange crash, but unfortunately nothing I can do I fear.
 
Religions are not spreading naturally with time, with only a few of them moving outside the holy city (when the AIs use missionaries).

Build 1043, after 2 clean installs, holds true for any game I start with any option set. I'll include my longest run game for reference.
 

Attachments

  • Churchill BC-0352.CivBeyondSwordSave
    3.1 MB · Views: 56
Religions are not spreading naturally with time, with only a few of them moving outside the holy city (when the AIs use missionaries).

Build 1043, after 2 clean installs, holds true for any game I start with any option set. I'll include my longest run game for reference.
Do you have Multiply Religion Spread ON?
 
Top Bottom