UPDATE Units
SET CombatClass = 'UNITCOMBAT_VANGUARD'
WHERE Class IN (
'UNITCLASS_GATLINGGUN' ,
'UNITCLASS_MACHINE_GUN' ,
'UNITCLASS_BAZOOKA'
);
[9783.353] MT_Initialize: ERROR: Failed to load CER_End.sql
[9986.591] TechTree: ERROR GetUnitTip UNIT_BAZOOKA CombatClass=UNITCOMBAT_VANGUARD
Is there a fix for this? Any attempted use of a bazooka has made my game crash since 3.1.8 or so. I can't finish a game unless I win before they become relevant.
@stackpointer
Thanks for that. It appears I am still on a previous branch.
However, could you check something for me?
That block of code you pasted, in the version I am working on, should assign the Bazooka, Gatling & Machine Guns to Soldier yet only the Bazooka shows as UNITCOMBAT_SOLDIER.
The other two get reassigned somewhere to UNITCOMBAT_GUN.
Could you see what UNITCOMBAT those two units are in your current setup?
I have a feeling there are code crossovers happening somewhere.
So what you SHOULD have is BAZOOKA, GATLING & MACHINEGUN all as VANGUARD, according to that code.
However in the branch I have, which should not be that different in these files, only the BAZOOKA is reassigned.
Thanks.
PS. I just IMed Thal about something else and he said there should not be any VANGUARD. It should all be RECON instead.![]()
<Units>
<Update>
<Where Class="UNITCLASS_WARRIOR" />
<Set GoodyHutUpgradeUnitClass="NULL" />
</Update>
<Update>
<Where Class="UNITCLASS_PIKEMAN" />
<Set GoodyHutUpgradeUnitClass="UNITCLASS_MUSKETMAN" />
</Update>
<Update>
<Where Class="UNITCLASS_ARCHER" />
<Set GoodyHutUpgradeUnitClass="NULL" />
</Update>
<Update>
<Where Class="UNITCLASS_GUIDED_MISSILE" />
<Set Range="6" />
</Update>
<Update>
<Where Class="UNITCLASS_GATLINGGUN" />
<Set CombatClass="UNITCOMBAT_GUN" />
</Update>
<Update>
<Where Class="UNITCLASS_MACHINE_GUN" />
<Set CombatClass="UNITCOMBAT_GUN" />
</Update>
</Units>
UPDATE Units
SET CombatClass = 'UNITCOMBAT_VANGUARD'
WHERE Class IN (
'UNITCLASS_GATLINGGUN' ,
'UNITCLASS_MACHINE_GUN' ,
'UNITCLASS_BAZOOKA'
);
for row in GameInfo.Unit_FreePromotions{UnitType = unitInfo.Type} do
local promoInfo = GameInfo.UnitPromotions[row.PromotionType]
if promoInfo.Class ~= "PROMOTION_CLASS_ATTRIBUTE_NEGATIVE" then
Please see the following thread for a possible fix: http://forums.civfanatics.com/showthread.php?t=505793
@stackpointer
Thanks for that. I couldn't see it as hard as I tried. Fresh eyes I guess.
I just noticed a weird thing though.
Going back through the history of that file on GitHub I can see a number of changes to the assignment of UNITCOMBAT but I cannot see when the change to VANGUARD was made.
The latest versions going back at least a month or more make no mention, yet the download version clearly has it as VANGUARD. Weird.
I contacted Thal to let him know, I think he has more pressing matters on at the moment, so no word back yet.