SDK Component Requests:

okay never realize it sorry. one more question what about the cities limiting ?

What about mine warfare been included think it is feasible?
 
one more thing, i saw on one of the threads on this subforum, about a petard suicide unit. is it possible to do? or atleast create a more modern version of the Unit, i got the graphical part for the unit just im unsure what will be the xml code for it well what to set 1 and 0 to on the UnitInfos.xml file. I also think i'll put it as hidden nationality and always hostile. ( i want to use the unit to represent a more suicidal guerilla unit) :P

I made something close to it though an Al-Qaeeda militant, but only changes it did was collateral damage against units. Want to be able to activate suicide and for it upon suicide to give well a high amount of damage to the unit. and even to cities. any idea what i need to change or adjust in the xml?

The info.xml file
Spoiler :

<Civ4UnitInfos xmlns="x-schema:alq_CIV4UnitSchema.xml">
<UnitInfos>
<UnitInfo>
<Class>UNITCLASS_GUERRILLA</Class>
<Type>UNIT_ALQ</Type>
<UniqueNames/>
<Special>NONE</Special>
<Capture>NONE</Capture>
<Combat>UNITCOMBAT_GUN</Combat>
<Domain>DOMAIN_LAND</Domain>
<DefaultUnitAI>UNITAI_CITY_DEFENSE</DefaultUnitAI>
<Invisible>NONE</Invisible>
<SeeInvisible>NONE</SeeInvisible>
<Description>TXT_KEY_UNIT_ALQ</Description>
<Civilopedia>TXT_KEY_UNIT_ALQ_PEDIA</Civilopedia>
<Strategy>TXT_KEY_UNIT_ALQ_STRATEGY</Strategy>
<Advisor>ADVISOR_MILITARY</Advisor>
<bAnimal>0</bAnimal>
<bFood>0</bFood>
<bNoBadGoodies>0</bNoBadGoodies>
<bOnlyDefensive>0</bOnlyDefensive>
<bNoCapture>0</bNoCapture>
<bQuickCombat>0</bQuickCombat>
<bRivalTerritory>1</bRivalTerritory>
<bMilitaryHappiness>1</bMilitaryHappiness>
<bMilitarySupport>1</bMilitarySupport>
<bMilitaryProduction>1</bMilitaryProduction>
<bPillage>1</bPillage>
<bSpy>0</bSpy>
<bSabotage>0</bSabotage>
<bDestroy>0</bDestroy>
<bStealPlans>0</bStealPlans>
<bInvestigate>0</bInvestigate>
<bCounterSpy>0</bCounterSpy>
<bFound>0</bFound>
<bGoldenAge>0</bGoldenAge>
<bInvisible>0</bInvisible>
<bFirstStrikeImmune>0</bFirstStrikeImmune>
<bNoDefensiveBonus>0</bNoDefensiveBonus>
<bIgnoreBuildingDefense>0</bIgnoreBuildingDefense>
<bCanMoveImpassable>0</bCanMoveImpassable>
<bCanMoveAllTerrain>0</bCanMoveAllTerrain>
<bFlatMovementCost>0</bFlatMovementCost>
<bIgnoreTerrainCost>1</bIgnoreTerrainCost>
<bNukeImmune>0</bNukeImmune>
<bPrereqBonuses>0</bPrereqBonuses>
<bPrereqReligion>0</bPrereqReligion>
<bMechanized>0</bMechanized>
<bSuicide>0</bSuicide>
<bHiddenNationality>1</bHiddenNationality>
<bAlwaysHostile>1</bAlwaysHostile>
<UnitClassUpgrades/>
<UnitClassTargets/>
<UnitCombatTargets>
<UnitCombatTarget>
<UnitCombatTargetType>UNITCOMBAT_WHEELED</UnitCombatTargetType>
<bUnitCombatTarget>1</bUnitCombatTarget>
</UnitCombatTarget>
<UnitCombatTarget>
<UnitCombatTargetType>UNITCOMBAT_TRACKED</UnitCombatTargetType>
<bUnitCombatTarget>1</bUnitCombatTarget>
</UnitCombatTarget>
<UnitCombatTarget>
<UnitCombatTargetType>UNITCOMBAT_GUN</UnitCombatTargetType>
<bUnitCombatTarget>1</bUnitCombatTarget>
</UnitCombatTarget>
</UnitCombatTargets>
<UnitClassDefenders/>
<UnitCombatDefenders/>
<FlankingStrikes/>
<UnitAIs>
<UnitAI>
<UnitAIType>UNITAI_ATTACK</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_ATTACK_CITY</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_CITY_DEFENSE</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_PILLAGE</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_COUNTER</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
</UnitAIs>
<NotUnitAIs/>
<Builds/>
<ReligionSpreads/>
<CorporationSpreads/>
<GreatPeoples/>
<Buildings/>
<ForceBuildings/>
<HolyCity>NONE</HolyCity>
<ReligionType>NONE</ReligionType>
<StateReligion>NONE</StateReligion>
<PrereqReligion>NONE</PrereqReligion>
<PrereqCorporation>NONE</PrereqCorporation>
<PrereqBuilding>NONE</PrereqBuilding>
<PrereqTech>TECH_GUERRILLA_WARFARE</PrereqTech>
<TechTypes>
<PrereqTech>TECH_AUTOMATIC_WEAPONS</PrereqTech>
</TechTypes>
<BonusType>BONUS_AMMO</BonusType>
<PrereqBonuses/>
<ProductionTraits/>
<Flavors/>
<iAIWeight>0</iAIWeight>
<iCost>80</iCost>
<iHurryCostModifier>0</iHurryCostModifier>
<iAdvancedStartCost>100</iAdvancedStartCost>
<iAdvancedStartCostIncrease>0</iAdvancedStartCostIncrease>
<iMinAreaSize>-1</iMinAreaSize>
<iMoves>2</iMoves>
<bNoRevealMap>0</bNoRevealMap>
<iAirRange>0</iAirRange>
<iAirUnitCap>0</iAirUnitCap>
<iDropRange>0</iDropRange>
<iNukeRange>-1</iNukeRange>
<iWorkRate>0</iWorkRate>
<iBaseDiscover>0</iBaseDiscover>
<iDiscoverMultiplier>0</iDiscoverMultiplier>
<iBaseHurry>0</iBaseHurry>
<iHurryMultiplier>0</iHurryMultiplier>
<iBaseTrade>0</iBaseTrade>
<iTradeMultiplier>0</iTradeMultiplier>
<iGreatWorkCulture>0</iGreatWorkCulture>
<iEspionagePoints>0</iEspionagePoints>
<TerrainImpassables/>
<FeatureImpassables/>
<TerrainPassableTechs/>
<FeaturePassableTechs/>
<iCombat>30</iCombat>
<iCombatLimit>100</iCombatLimit>
<iAirCombat>0</iAirCombat>
<iAirCombatLimit>0</iAirCombatLimit>
<iXPValueAttack>6</iXPValueAttack>
<iXPValueDefense>3</iXPValueDefense>
<iFirstStrikes>0</iFirstStrikes>
<iChanceFirstStrikes>0</iChanceFirstStrikes>
<iInterceptionProbability>0</iInterceptionProbability>
<iEvasionProbability>0</iEvasionProbability>
<iWithdrawalProb>70</iWithdrawalProb>
<iCollateralDamage>30</iCollateralDamage>
<iCollateralDamageLimit>50</iCollateralDamageLimit>
<iCollateralDamageMaxUnits>5</iCollateralDamageMaxUnits>
<iCityAttack>0</iCityAttack>
<iCityDefense>0</iCityDefense>
<iAnimalCombat>0</iAnimalCombat>
<iHillsAttack>0</iHillsAttack>
<iHillsDefense>0</iHillsDefense>
<TerrainNatives/>
<FeatureNatives/>
<TerrainAttacks/>
<TerrainDefenses/>
<FeatureAttacks/>
<FeatureDefenses/>
<UnitClassAttackMods>
<UnitClassAttackMod>
<UnitClassType>UNITCLASS_MACHINE_GUN</UnitClassType>
<iUnitClassMod>60</iUnitClassMod>
</UnitClassAttackMod>
<UnitClassAttackMod>
<UnitClassType>UNITCLASS_ARTILLERY</UnitClassType>
<iUnitClassMod>10</iUnitClassMod>
</UnitClassAttackMod>
</UnitClassAttackMods>
<UnitClassDefenseMods/>
<UnitCombatMods>
<UnitCombatMod>
<UnitCombatType>UNITCOMBAT_TRACKED</UnitCombatType>
<iUnitCombatMod>10</iUnitCombatMod>
</UnitCombatMod>
<UnitCombatMod>
<UnitCombatType>UNITCOMBAT_GUN</UnitCombatType>
<iUnitCombatMod>60</iUnitCombatMod>
</UnitCombatMod>
<UnitCombatMod>
<UnitCombatType>UNITCOMBAT_WHEELED</UnitCombatType>
<iUnitCombatMod>20</iUnitCombatMod>
</UnitCombatMod>
</UnitCombatMods>
<UnitCombatCollateralImmunes/>
<DomainMods/>
<BonusProductionModifiers/>
<iBombRate>0</iBombRate>
<iBombardRate>0</iBombardRate>
<SpecialCargo>NONE</SpecialCargo>
<DomainCargo>NONE</DomainCargo>
<iCargo>0</iCargo>
<iConscription>0</iConscription>
<iCultureGarrison>10</iCultureGarrison>
<iExtraCost>0</iExtraCost>
<iAsset>5</iAsset>
<iPower>60</iPower>
<UnitMeshGroups>
<iGroupSize>3</iGroupSize>
<fMaxSpeed>1.75</fMaxSpeed>
<fPadTime>1</fPadTime>
<iMeleeWaveSize>3</iMeleeWaveSize>
<iRangedWaveSize>0</iRangedWaveSize>
<UnitMeshGroup>
<iRequired>3</iRequired>
<EarlyArtDefineTag>ART_DEF_UNIT_ALQ</EarlyArtDefineTag>
</UnitMeshGroup>
</UnitMeshGroups>
<FormationType>FORMATION_TYPE_RANGED</FormationType>
<HotKey/>
<bAltDown>0</bAltDown>
<bShiftDown>0</bShiftDown>
<bCtrlDown>0</bCtrlDown>
<iHotKeyPriority>0</iHotKeyPriority>
<FreePromotions>
<FreePromotion>
<PromotionType>PROMOTION_AMBUSH</PromotionType>
<bFreePromotion>1</bFreePromotion>
</FreePromotion>
</FreePromotions>
<LeaderPromotion>NONE</LeaderPromotion>
<iLeaderExperience>0</iLeaderExperience>
</UnitInfo>
</UnitInfos>
</Civ4UnitInfos>
 
Give it a new promotion by default, similar to the kamikaze promotion.
 
Is it possible to make the following ...

1. Buildings that require one building OR another building? Such as a weaver requires a sheep farm OR a goat farm, etc?

2. Buildings that limit the city size. Such as a city cannot grow beyond X size.

3. Buildings that cannot be built until the city reaches a certain size. Such as no skyscrapers until size 10.

4. Buildings that cannot be built until a specific value is met? Such as x number of food or x number of happiness.

5. Give buildings a new value "type" like how happiness or health work. One that you could set +/- values. For instance a new value could be people with homes vs people without homes. Or people with jobs vs people without jobs.
 
1. ) Already exists. See the latest example files and schema

2. ) Quick question, If I had two buildings in a city, one that limited the city to size 5 and one to size 10; which would be correct? Size 5 or size 10?

3.) Sure

4.) Would that be NET happiness or TOTAL happiness? Big distinction.

5. ) I can; but can != will.
 
1. ) Already exists. See the latest example files and schema

2. ) Quick question, If I had two buildings in a city, one that limited the city to size 5 and one to size 10; which would be correct? Size 5 or size 10?

3.) Sure

4.) Would that be NET happiness or TOTAL happiness? Big distinction.

5. ) I can; but can != will.

1. Oh good. I suspected It might.

2. Hmm that's a good question. I think probably the larger number should give the effect. So in your example if it had 5 and 10 then the effect would be 10.

3. Yay!

4. I mean the "actual" amount that shows up. Such as ...

+1 :)
+2 :mad:
+2 :)
+1 :)
+1 :mad:
----------
+1 :) = "Actual" Amount

5. Will you? And is it difficult to do?
 
not sure where this belongs here but i didn't want to open a new thread for this detail:

[...]

also, i can't find the regenerate map option upon reloading the initial autosave. i'll try to start another game. it's just a huge hassle to open up 50 slots when starting a game :p

would it be much work to add a text box to set the number of civs you want to play with directly instead of the of opening and closing slots method?
 
would it be much work to add a text box to set the number of civs you want to play with directly instead of the of opening and closing slots method?

Yes. The entire menu before the game starts is in the EXE. I can't mod it at all. :sad:
 
Afforess, did you include the PromotionOverride property? i just ask because i was going to reorganize all the fighting system & xp system for myself and wanted to use it (to prevent having too many promotions showing up for an experienced unit).

next thing i wanted to change is to use your make some promotions only available trough your automatic-combat promotions system (as a mean to prevent players to breed overpowered units... and some realizm maybe). so question here: is it enough to give these promotions the TECH_SPECIAL_PROMOTION tech prerequisite or will they be considered as not available with your system?

3rd thing is another question: how did you change the max and min withdrawal chances? is it still the old system or do i not need care about going over 100% or under 0%?

last but not least: my main motivation is to prevent fighting to be so deadly (most fights attacker or defender dies - retreat only possible for attacker and is rather rare... all those fanatics...). so could you make something possible like withdrawal for defenders? it should work similar to attackers retreat: if a defender will die at the end of a battle he gets a chance for defensive withdrawal instead if -and only if- there are other defending units on that tile with sufficient health. i suppose this time requires some SDK work. it's not so important right now but if you find it easy to implement i'd really appreciate if you could do that.

this is all to make the experience system work better with the fighting mechanics which -as they are now- make it quite frustrating as it is very easy to lose highly experienced units (98% survival probability means that the 2% can just occur in this fight - and statistically in one out of 50 battles i will not just loose, no i will die!).
 
Afforess, did you include the PromotionOverride property? i just ask because i was going to reorganize all the fighting system & xp system for myself and wanted to use it (to prevent having too many promotions showing up for an experienced unit).

It never worked properly. I could probably fix it, given an hour or two, but I never had any reason to go back and do so.

next thing i wanted to change is to use your make some promotions only available trough your automatic-combat promotions system (as a mean to prevent players to breed overpowered units... and some realizm maybe). so question here: is it enough to give these promotions the TECH_SPECIAL_PROMOTION tech prerequisite or will they be considered as not available with your system?

Only valid promotions (promotions that would appear when the unit levels up) are available to BattleField Promotions. I could add an exception list to get around that, but it would certainly break saves, so it would have to be part of 1.74

3rd thing is another question: how did you change the max and min withdrawal chances? is it still the old system or do i not need care about going over 100% or under 0%?

There is no minimum (negative values probably do strange things, don't mess with them. Firaxis is notorious for not sanitizing input.), and the maximum is controlled via a GlobalDefine.

last but not least: my main motivation is to prevent fighting to be so deadly (most fights attacker or defender dies - retreat only possible for attacker and is rather rare... all those fanatics...). so could you make something possible like withdrawal for defenders? it should work similar to attackers retreat: if a defender will die at the end of a battle he gets a chance for defensive withdrawal instead if -and only if- there are other defending units on that tile with sufficient health. i suppose this time requires some SDK work. it's not so important right now but if you find it easy to implement i'd really appreciate if you could do that.

You do know that Defenders can already withdraw in AND, correct?
 
It never worked properly. I could probably fix it, given an hour or two, but I never had any reason to go back and do so.

well, it's nothing really important; rather a design issue (having 1 promotion instead of 5 e.g. like for strength is just easier to look at).

Only valid promotions (promotions that would appear when the unit levels up) are available to BattleField Promotions. I could add an exception list to get around that, but it would certainly break saves, so it would have to be part of 1.74

There is no minimum (negative values probably do strange things, don't mess with them. Firaxis is notorious for not sanitizing input.), and the maximum is controlled via a GlobalDefine.

is the maximum a cut off or just a condition to check if promotion is valid and deactivate it if it goes over? e.g. if i have a unit with 90% retreat chance, max is 95% and i give my unit a +10% promotion will it have 95% or still 90% chance as promotion was invalid?

You do know that Defenders can already withdraw in AND, correct?

huh? rly? i didn't see any kind of defensive retreat so far. sure we think of the same thing? what i mean is that if a defender would die in combat he'd force withdrawal the attacker so both units survive the fight. and if it exists how are the chances determinated?


ah.. this hole experience system is a cool thing but it just don't work with the fighting mechanics for me. so make it simple: can you add an option that reintroduces the xp bug form 1.73A so units don't get any xp anymore (it's not a bug, it's a feature! ;)). actually the game was much more fun with that... or maybe tell me how to make following walkaround by myself: set the xp required to gain level 1 to 1000 points - so no promotions except form your random system.
 
Is there a tag that would reduce Culture? Just as certain buildings increase culture, some would decrease it... Certain civic choices could have the same effect, such as slavery. perhaps a -1 culture globally throughout your culture. Although there are several types of slavery, so that may not be a universal application to the civic.
 
Bridge--I've been over at the Subdue Animals mod for RoM Thread, and came up w this.
Question: what would it take to compose some random Events which are tied specifically to hunter units and hunting lodge type buildings. The affect would be the discovery and collection of various animals. Fowl, small game, medium game. etc. These events would pop up as a hunter passes by, regularly, and 'temporary' animal resources would appear on the spot. The duration of the animal resource would not be revealed, only that it is there, it increases trade and food and possibly production on the tile when worked. But sooner or later, it disappears. Petered out. Used up. Or migrated. Many animals follow such patterns, and in modern times we work to make the habitate inviting to such animals, to prolong the game's presence in that location.
EDIT-They would be a fully workable, fully tradeable resource while they last.
 
Bridge--
Also, there are buildings in AND which double a resource. Such as coal, etc. So you have the resource in the city work area, and the building gives you 2. It shouldn't be difficult to create a building to sustain an animal resource in a city, even after its originating resource tile has gone. Such as Deer Preserve, Apiary, Aviary, Wetland Preserve, etc... Though a random chance should exist to reduce the resource for a time, or wipe it out in the city. Such is the way of nature and disease.
 
Is there a tag that would reduce Culture? Just as certain buildings increase culture, some would decrease it... Certain civic choices could have the same effect, such as slavery. perhaps a -1 culture globally throughout your culture. Although there are several types of slavery, so that may not be a universal application to the civic.

Just use a negative number. ;)

Bridge--I've been over at the Subdue Animals mod for RoM Thread, and came up w this.
Question: what would it take to compose some random Events which are tied specifically to hunter units and hunting lodge type buildings. The affect would be the discovery and collection of various animals. Fowl, small game, medium game. etc. These events would pop up as a hunter passes by, regularly, and 'temporary' animal resources would appear on the spot. The duration of the animal resource would not be revealed, only that it is there, it increases trade and food and possibly production on the tile when worked. But sooner or later, it disappears. Petered out. Used up. Or migrated. Many animals follow such patterns, and in modern times we work to make the habitate inviting to such animals, to prolong the game's presence in that location.
EDIT-They would be a fully workable, fully tradeable resource while they last.
You can do that with a random event; with XML. Ask Dancing Hoskuld in one of his threads, I generally don't take random event requests.
 
You can do that with a random event; with XML. Ask Dancing Hoskuld in one of his threads, I generally don't take random event requests.
I don't know how to do random events either. If I did there would be plagues of locusts. I have the unit I just can't get them to appear in game!
 
I don't know how to do random events either. If I did there would be plagues of locusts. I have the unit I just can't get them to appear in game!

I can do them... I just hate to. What exactly is the problem with your random event?
 
Back
Top Bottom