Personality Archtypes

I'm not against harmonizing with the team, and its not a matter of being territorial - but where there is no ability to find a middle ground it seems only fair that the original designer has the right to veto what another suggests (or even insists on) unless there is a fair consensus of the rest of the team. So far you've been the only one fighting on this point aside from some commenters supporting the idea in equal ratio to those supporting the personality based AI. I'm not against trying to find a compromise here. Can you accept a compromise?

:)This is indeed what happens. I still hate and would remove the population requirement for buildings if I could. I can't even do it as a mod because Hydro insists on using force override.:p
 
Are you saying you agree with my statement there or not DH? I wasn't quite sure... lol

As an aside... it would be fairly easy to give a game option that turns off the population requirement tags. Might not be a bad idea imo... not everyone would want to play that way. I don't hate them but I'd probably choose not to use them more often than not because I see them as an arbitrary and unnecessary limitation in general (though I can also see a point to them too... so I'm somewhat in the middle here.)


On the original discussion, ls612 and I are probably both right so far as we can attempt to blend the concepts we support. Neither one is the 'best way' to go about it on its own. So it doesn't disturb me to attempt to create a deeper structure as development time permits and as situations that should influence the choices are defined. Basing the choices entirely on situation is, however, a very bad concept for this sort of selection for a number of reasons mentioned.
 
:)This is indeed what happens. I still hate and would remove the population requirement for buildings if I could. I can't even do it as a mod because Hydro insists on using force override.:p

What is this FORCE over ride you speck of?? And if its not necessary lets get rid of it in these cases then??
 
Force override tag says that the version in this mod overwrites any other loaded version of a building (or unit or whatever). It part of the WoC standard for XML and is very useful for modmods and modules. When Hydro first built his stuff, he used this tag rather than removing the original from the core, which is the correct way to do things, however now his stuff is not really modular any more. We (Hydro and I) have gone through and removed most (maybe all) of the items from the core that he is overwriting but the tags are still around on some buildings.

Are you saying you agree with my statement there or not DH? I wasn't quite sure... lol

I was saying that the creator of whatever has final editorial rights. If someone doesn't agree with the final result then let them do the work. :mischief: So I was agreeing with you. You ave seen Hydro and I "discuss" stuff.
 
Ok, so since Ride the Spiral stated he'd be willing to help me here and had a question about how the xml files would look, I figured I'd post some examples.

Keep in mind I have not categorized the tags yet so they aren't quite organized as they would be in the final design, nor have I attempted to present the tags as rational suggested numbers according to the actual Archetype definition given and that this is JUST a bit of an example to help explain the vision.

So an ArchetypeInfos.xml file entry might look something like this:
Spoiler :
Code:
		<ArchetypeInfo>
			<Type>ARCHETYPE_AGGRESSIVE</Type>
			<iWonderConstructRand>0</iWonderConstructRand>
			<iBaseAttitude>0</iBaseAttitude>
			<iBasePeaceWeight>8</iBasePeaceWeight>
			<iPeaceWeightRand>3</iPeaceWeightRand>
			<iWarmongerRespect>0</iWarmongerRespect>
			<iEspionageWeight>120</iEspionageWeight>
			<iRefuseToTalkWarThreshold>12</iRefuseToTalkWarThreshold>
			<iNoTechTradeThreshold>5</iNoTechTradeThreshold>
			<iTechTradeKnownPercent>80</iTechTradeKnownPercent>
			<iMaxGoldTradePercent>5</iMaxGoldTradePercent>
			<iMaxGoldPerTurnTradePercent>10</iMaxGoldPerTurnTradePercent>
			<iCultureVictoryWeight>25</iCultureVictoryWeight>
			<iSpaceVictoryWeight>25</iSpaceVictoryWeight>
			<iConquestVictoryWeight>25</iConquestVictoryWeight>
			<iDominationVictoryWeight>10</iDominationVictoryWeight>
			<iDiplomacyVictoryWeight>65</iDiplomacyVictoryWeight>
			<iMaxWarRand>200</iMaxWarRand>
			<iMaxWarNearbyPowerRatio>130</iMaxWarNearbyPowerRatio>
			<iMaxWarDistantPowerRatio>0</iMaxWarDistantPowerRatio>
			<iMaxWarMinAdjacentLandPercent>4</iMaxWarMinAdjacentLandPercent>
			<iLimitedWarRand>200</iLimitedWarRand>
			<iLimitedWarPowerRatio>100</iLimitedWarPowerRatio>
			<iDogpileWarRand>100</iDogpileWarRand>
			<iMakePeaceRand>120</iMakePeaceRand>
			<iDeclareWarTradeRand>40</iDeclareWarTradeRand>
			<iDemandRebukedSneakProb>20</iDemandRebukedSneakProb>
			<iDemandRebukedWarProb>10</iDemandRebukedWarProb>
			<iRazeCityProb>20</iRazeCityProb>
			<iBuildUnitProb>35</iBuildUnitProb>
			<iBaseAttackOddsChange>4</iBaseAttackOddsChange>
			<iAttackOddsChangeRand>8</iAttackOddsChangeRand>
			<iWorseRankDifferenceAttitudeChange>0</iWorseRankDifferenceAttitudeChange>
			<iBetterRankDifferenceAttitudeChange>0</iBetterRankDifferenceAttitudeChange>
			<iCloseBordersAttitudeChange>-4</iCloseBordersAttitudeChange>
			<iLostWarAttitudeChange>-1</iLostWarAttitudeChange>
			<iAtWarAttitudeDivisor>-5</iAtWarAttitudeDivisor>
			<iAtWarAttitudeChangeLimit>5</iAtWarAttitudeChangeLimit>
			<iAtPeaceAttitudeDivisor>60</iAtPeaceAttitudeDivisor>
			<iAtPeaceAttitudeChangeLimit>1</iAtPeaceAttitudeChangeLimit>
			<iSameReligionAttitudeChange>1</iSameReligionAttitudeChange>
			<iSameReligionAttitudeDivisor>10</iSameReligionAttitudeDivisor>
			<iSameReligionAttitudeChangeLimit>2</iSameReligionAttitudeChangeLimit>
			<iDifferentReligionAttitudeChange>0</iDifferentReligionAttitudeChange>
			<iDifferentReligionAttitudeDivisor>-5</iDifferentReligionAttitudeDivisor>
			<iDifferentReligionAttitudeChangeLimit>-1</iDifferentReligionAttitudeChangeLimit>
			<iBonusTradeAttitudeDivisor>50</iBonusTradeAttitudeDivisor>
			<iBonusTradeAttitudeChangeLimit>2</iBonusTradeAttitudeChangeLimit>
			<iOpenBordersAttitudeDivisor>25</iOpenBordersAttitudeDivisor>
			<iOpenBordersAttitudeChangeLimit>2</iOpenBordersAttitudeChangeLimit>
			<iDefensivePactAttitudeDivisor>12</iDefensivePactAttitudeDivisor>
			<iDefensivePactAttitudeChangeLimit>2</iDefensivePactAttitudeChangeLimit>
			<iShareWarAttitudeChange>1</iShareWarAttitudeChange>
			<iShareWarAttitudeDivisor>8</iShareWarAttitudeDivisor>
			<iShareWarAttitudeChangeLimit>4</iShareWarAttitudeChangeLimit>
			<iFavoriteCivicAttitudeChange>1</iFavoriteCivicAttitudeChange>
			<iFavoriteCivicAttitudeDivisor>10</iFavoriteCivicAttitudeDivisor>
			<iFavoriteCivicAttitudeChangeLimit>2</iFavoriteCivicAttitudeChangeLimit>
			<DemandTributeAttitudeThreshold>ATTITUDE_CAUTIOUS</DemandTributeAttitudeThreshold>
			<NoGiveHelpAttitudeThreshold>ATTITUDE_CAUTIOUS</NoGiveHelpAttitudeThreshold>
			<TechRefuseAttitudeThreshold>ATTITUDE_ANNOYED</TechRefuseAttitudeThreshold>
			<StrategicBonusRefuseAttitudeThreshold>ATTITUDE_ANNOYED</StrategicBonusRefuseAttitudeThreshold>
			<HappinessBonusRefuseAttitudeThreshold>ATTITUDE_FURIOUS</HappinessBonusRefuseAttitudeThreshold>
			<HealthBonusRefuseAttitudeThreshold>ATTITUDE_FURIOUS</HealthBonusRefuseAttitudeThreshold>
			<MapRefuseAttitudeThreshold>ATTITUDE_FURIOUS</MapRefuseAttitudeThreshold>
			<DeclareWarRefuseAttitudeThreshold>ATTITUDE_PLEASED</DeclareWarRefuseAttitudeThreshold>
			<DeclareWarThemRefuseAttitudeThreshold>ATTITUDE_ANNOYED</DeclareWarThemRefuseAttitudeThreshold>
			<StopTradingRefuseAttitudeThreshold>ATTITUDE_CAUTIOUS</StopTradingRefuseAttitudeThreshold>
			<StopTradingThemRefuseAttitudeThreshold>ATTITUDE_ANNOYED</StopTradingThemRefuseAttitudeThreshold>
			<AdoptCivicRefuseAttitudeThreshold>ATTITUDE_CAUTIOUS</AdoptCivicRefuseAttitudeThreshold>
			<ConvertReligionRefuseAttitudeThreshold>ATTITUDE_CAUTIOUS</ConvertReligionRefuseAttitudeThreshold>
			<OpenBordersRefuseAttitudeThreshold>ATTITUDE_ANNOYED</OpenBordersRefuseAttitudeThreshold>
			<DefensivePactRefuseAttitudeThreshold>ATTITUDE_PLEASED</DefensivePactRefuseAttitudeThreshold>
			<PermanentAllianceRefuseAttitudeThreshold>ATTITUDE_PLEASED</PermanentAllianceRefuseAttitudeThreshold>
			<VassalRefuseAttitudeThreshold>ATTITUDE_PLEASED</VassalRefuseAttitudeThreshold>
			<iVassalPowerModifier>50</iVassalPowerModifier>
			<iFreedomAppreciation>10</iFreedomAppreciation>
			<FavoriteTrait>TRAIT_AGGRESSIVE</FavoriteTrait>
			<Flavors>
				<Flavor>
					<FlavorType>FLAVOR_MILITARY</FlavorType>
					<iFlavor>5</iFlavor>
				</Flavor>
				<Flavor>
					<FlavorType>FLAVOR_GROWTH</FlavorType>
					<iFlavor>2</iFlavor>
				</Flavor>
			</Flavors>
			<ContactRands>
				<ContactRand>
					<ContactType>CONTACT_RELIGION_PRESSURE</ContactType>
					<iContactRand>500</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_CIVIC_PRESSURE</ContactType>
					<iContactRand>1000</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_JOIN_WAR</ContactType>
					<iContactRand>20</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_STOP_TRADING</ContactType>
					<iContactRand>50</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_GIVE_HELP</ContactType>
					<iContactRand>1000</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_ASK_FOR_HELP</ContactType>
					<iContactRand>1000</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_DEMAND_TRIBUTE</ContactType>
					<iContactRand>25</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_OPEN_BORDERS</ContactType>
					<iContactRand>20</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_DEFENSIVE_PACT</ContactType>
					<iContactRand>80</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_PERMANENT_ALLIANCE</ContactType>
					<iContactRand>80</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_PEACE_TREATY</ContactType>
					<iContactRand>20</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_TRADE_TECH</ContactType>
					<iContactRand>10</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_TRADE_BONUS</ContactType>
					<iContactRand>10</iContactRand>
				</ContactRand>
				<ContactRand>
					<ContactType>CONTACT_TRADE_MAP</ContactType>
					<iContactRand>20</iContactRand>
				</ContactRand>
			</ContactRands>
			<ContactDelays>
				<ContactDelay>
					<ContactType>CONTACT_RELIGION_PRESSURE</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_CIVIC_PRESSURE</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_JOIN_WAR</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_STOP_TRADING</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_GIVE_HELP</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_ASK_FOR_HELP</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_DEMAND_TRIBUTE</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_OPEN_BORDERS</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_DEFENSIVE_PACT</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_PERMANENT_ALLIANCE</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_PEACE_TREATY</ContactType>
					<iContactDelay>10</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_TRADE_TECH</ContactType>
					<iContactDelay>30</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_TRADE_BONUS</ContactType>
					<iContactDelay>20</iContactDelay>
				</ContactDelay>
				<ContactDelay>
					<ContactType>CONTACT_TRADE_MAP</ContactType>
					<iContactDelay>50</iContactDelay>
				</ContactDelay>
			</ContactDelays>
			<MemoryDecays>
				<MemoryDecay>
					<MemoryType>MEMORY_GIVE_HELP</MemoryType>
					<iMemoryRand>200</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_REFUSED_HELP</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_ACCEPT_DEMAND</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_REJECTED_DEMAND</MemoryType>
					<iMemoryRand>150</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_ACCEPTED_RELIGION</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_DENIED_RELIGION</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_ACCEPTED_CIVIC</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_DENIED_CIVIC</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_ACCEPTED_JOIN_WAR</MemoryType>
					<iMemoryRand>150</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_DENIED_JOIN_WAR</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_ACCEPTED_STOP_TRADING</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_DENIED_STOP_TRADING</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_STOPPED_TRADING_RECENT</MemoryType>
					<iMemoryRand>30</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_MADE_DEMAND_RECENT</MemoryType>
					<iMemoryRand>20</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_CANCELLED_OPEN_BORDERS</MemoryType>
					<iMemoryRand>10</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_TRADED_TECH_TO_US</MemoryType>
					<iMemoryRand>100</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_RECEIVED_TECH_FROM_ANY</MemoryType>
					<iMemoryRand>20</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_VOTED_AGAINST_US</MemoryType>
					<iMemoryRand>10</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_VOTED_FOR_US</MemoryType>
					<iMemoryRand>10</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_EVENT_GOOD_TO_US</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_EVENT_BAD_TO_US</MemoryType>
					<iMemoryRand>50</iMemoryRand>
				</MemoryDecay>
				<MemoryDecay>
					<MemoryType>MEMORY_INQUISITION</MemoryType>
					<iMemoryRand>25</iMemoryRand>
				</MemoryDecay>
			</MemoryDecays>
			<MemoryAttitudePercents>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DECLARED_WAR</MemoryType>
					<iMemoryAttitudePercent>-300</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DECLARED_WAR_ON_FRIEND</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_HIRED_WAR_ALLY</MemoryType>
					<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_NUKED_US</MemoryType>
					<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_NUKED_FRIEND</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_RAZED_CITY</MemoryType>
					<iMemoryAttitudePercent>-250</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_RAZED_HOLY_CITY</MemoryType>
					<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_SPY_CAUGHT</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_GIVE_HELP</MemoryType>
					<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_REFUSED_HELP</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_ACCEPT_DEMAND</MemoryType>
					<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_REJECTED_DEMAND</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_ACCEPTED_RELIGION</MemoryType>
					<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DENIED_RELIGION</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_ACCEPTED_CIVIC</MemoryType>
					<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DENIED_CIVIC</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DENIED_JOIN_WAR</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_ACCEPTED_STOP_TRADING</MemoryType>
					<iMemoryAttitudePercent>50</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_DENIED_STOP_TRADING</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_STOPPED_TRADING</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_HIRED_TRADE_EMBARGO</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_MADE_DEMAND</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_TRADED_TECH_TO_US</MemoryType>
					<iMemoryAttitudePercent>5</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_VOTED_AGAINST_US</MemoryType>
					<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_VOTED_FOR_US</MemoryType>
					<iMemoryAttitudePercent>200</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_EVENT_GOOD_TO_US</MemoryType>
					<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_EVENT_BAD_TO_US</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_LIBERATED_CITIES</MemoryType>
					<iMemoryAttitudePercent>150</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
				<MemoryAttitudePercent>
					<MemoryType>MEMORY_INQUISITION</MemoryType>
					<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
				</MemoryAttitudePercent>
			</MemoryAttitudePercents>
			<NoWarAttitudeProbs>
				<NoWarAttitudeProb>
					<AttitudeType>ATTITUDE_ANNOYED</AttitudeType>
					<iNoWarProb>50</iNoWarProb>
				</NoWarAttitudeProb>
				<NoWarAttitudeProb>
					<AttitudeType>ATTITUDE_CAUTIOUS</AttitudeType>
					<iNoWarProb>90</iNoWarProb>
				</NoWarAttitudeProb>
				<NoWarAttitudeProb>
					<AttitudeType>ATTITUDE_PLEASED</AttitudeType>
					<iNoWarProb>100</iNoWarProb>
				</NoWarAttitudeProb>
				<NoWarAttitudeProb>
					<AttitudeType>ATTITUDE_FRIENDLY</AttitudeType>
					<iNoWarProb>100</iNoWarProb>
				</NoWarAttitudeProb>
			</NoWarAttitudeProbs>
			<UnitAIWeightModifiers>
				<UnitAIWeightModifier>
					<UnitAIType>UNITAI_CITY_DEFENSE</UnitAIType>
					<iWeightModifier>100</iWeightModifier>
				</UnitAIWeightModifier>
			</UnitAIWeightModifiers>
			<ImprovementWeightModifiers/>
			<DiplomacyIntroMusicPeace>
				<DiploMusicPeaceEra>
					<EraType>ERA_PREHISTORIC</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_ANCIENT</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_CLASSICAL</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_MEDIEVAL</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_RENAISSANCE</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_INDUSTRIAL</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_MODERN</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_TRANSHUMAN</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_GALACTIC</EraType>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_FUTURE</EraType>
				</DiploMusicPeaceEra>
			</DiplomacyIntroMusicPeace>
			<DiplomacyMusicPeace>
				<DiploMusicPeaceEra>
					<EraType>ERA_PREHISTORIC</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_EARLY</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_ANCIENT</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_EARLY</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_CLASSICAL</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_EARLY</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_MEDIEVAL</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_MIDDLE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_RENAISSANCE</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_MIDDLE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_INDUSTRIAL</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_LATE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_MODERN</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_LATE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_TRANSHUMAN</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_LATE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_GALACTIC</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_LATE</DiploScriptId>
				</DiploMusicPeaceEra>
				<DiploMusicPeaceEra>
					<EraType>ERA_FUTURE</EraType>
					<DiploScriptId>AS2D_DIPLO_GERONIMO_LATE</DiploScriptId>
				</DiploMusicPeaceEra>
			</DiplomacyMusicPeace>
			<DiplomacyIntroMusicWar>
				<DiploMusicWarEra>
					<EraType>ERA_PREHISTORIC</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_ANCIENT</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_CLASSICAL</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_MEDIEVAL</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_RENAISSANCE</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_INDUSTRIAL</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_MODERN</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_TRANSHUMAN</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_GALACTIC</EraType>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_FUTURE</EraType>
				</DiploMusicWarEra>
			</DiplomacyIntroMusicWar>
			<DiplomacyMusicWar>
				<DiploMusicWarEra>
					<EraType>ERA_PREHISTORIC</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_EARLY</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_ANCIENT</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_EARLY</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_CLASSICAL</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_EARLY</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_MEDIEVAL</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_MIDDLE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_RENAISSANCE</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_MIDDLE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_INDUSTRIAL</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_LATE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_MODERN</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_LATE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_TRANSHUMAN</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_LATE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_GALACTIC</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_LATE</DiploScriptId>
				</DiploMusicWarEra>
				<DiploMusicWarEra>
					<EraType>ERA_FUTURE</EraType>
					<DiploScriptId>AS2D_DIPLO_WARDRUMS_LATE</DiploScriptId>
				</DiploMusicWarEra>
			</DiplomacyMusicWar>
		</ArchetypeInfo>
We need to figure out what categories to use and when rebuilding the schema for Archetypes we can keep the tags in various categories all together, perhaps even denoted by <!-- Trade Category tags --> statements to indicate we're moving into the tags for the next labeled category.

And this would allow us to shave down our leader entries (though not absolutely necessary - it'd help a lot with additional leaders to come though!) to look something like this:
Spoiler :
Code:
		<LeaderHeadInfo>
			<Type>LEADER_RED_CLOUD</Type>
			<Description>TXT_KEY_LEADER_RED_CLOUD</Description>
			<Civilopedia>TXT_KEY_LEADER_RED_CLOUD_PEDIA</Civilopedia>
			<ArtDefineTag>ART_DEF_LEADER_RED_CLOUD</ArtDefineTag>
			<PrimaryArchetype>ARCHETYPE_AGGRESSIVE</PrimaryArchetype>
			<WarArchetype>ARCHETYPE_NATURALIST</WarArchetype>
			<DiplomacyArchetype>ARCHETYPE_PROTECTIVE</DiplomacyArchetype>
			etc... the tags in the archetypes files would be categorized to fall into various archetype categories above that would blend with the primary archetype
			<FavoriteCivic>CIVIC_ENVIRONMENTALISM</FavoriteCivic>
			<FavoriteReligion>RELIGION_SHAMAN</FavoriteReligion>
			<Traits>
				<Trait>
					<TraitType>TRAIT_NOMAD</TraitType>
					<bTrait>1</bTrait>
				</Trait>
				<Trait>
					<TraitType>TRAIT_HUMANITARIAN</TraitType>
					<bTrait>1</bTrait>
				</Trait>
				<Trait>
					<TraitType>TRAIT_HUNTER_GATHERER</TraitType>
					<bTrait>1</bTrait>
				</Trait>
				<Trait>
					<TraitType>TRAIT_NOMAD1</TraitType>
					<bTrait>1</bTrait>
				</Trait>
				<Trait>
					<TraitType>TRAIT_HUMANITARIAN1</TraitType>
					<bTrait>1</bTrait>
				</Trait>
				<Trait>
					<TraitType>TRAIT_HUNTER_GATHERER1</TraitType>
					<bTrait>1</bTrait>
				</Trait>
			</Traits>
		</LeaderHeadInfo>
And any tags you want the leader to outright override the archetype on would also be defined individually on a leader if you wish such an override so that we aren't a slave to the archetype method.


Now, ls612 was asking in code how it would look.
So we'd establish a new class in the info files for the Archetypes. They'd share almost all the same tags as the leaders currently have (only a few exceptions such as Favorite Religion, Favorite Civic and Traits, though would have a new one for Favorite Trait.)

We'd also add the Archetype tags to the leader infos. (Primary Archetype, and then all the sub-categories)

Then, in the CvInfos.cpp we'd manipulate the values that return whenever a leader's tag value is called for, thus something like this:

Currently we have:
Spoiler :
Code:
int CvLeaderHeadInfo::getWonderConstructRand() const
{
	return m_iWonderConstructRand; 
}

And after the change it would go something like this:
Spoiler :
Code:
int CvLeaderHeadInfo::getWonderConstructRand() const
{
	if (m_iWonderConstructRand == 0)//only use archetype references if not already defined on the leader
	{
		if (getPrimaryArchetype() != NO_ARCHETYPE) //Make sure the leader has one defined - this way we don't HAVE to define archetypes for all leaders yet
		{
			int iTotal = 0;
			iTotal += getArchetypeInfo(getPrimaryArchetype()).getWonderConstructRand();
			if (getProductionArchetype() != NO_ARCHETYPE) //Make sure the leader has this subcategory Archetype defined - this is how the system successfully splits up the one large archetype file into separate pieces for subcategories without requiring tags to define those categories or separate archetype files
			{
				iTotal += getArchetypeInfo(getProductionArchetype()).getWonderConstructRand();
				iTotal /= 2;
			}
		return iTotal;
	}
	return m_iWonderConstructRand; 
}
If needbe, we can cache the result and if cached always return the calculated value, but since we're not doing any loop searches in here, this'd come across pretty fast as is I think, given that the data is retrieved pretty directly and the calculation is fairly simple. Sure a game's going to call it a lot so if it becomes a noticeable lag then it can be easily cached. The option method I've built caches in this way so that's not tough to develop either.

Anyhow, does this help y'all see what I'm getting at here?
 
Thanks for putting that into a visual for me, I do much better with that. I may not understand all of this but I'm getting there. I like the look of the leaderheadinfo.xml. Wouldn't it be possible to reduce what all is listed in the ArchetypeInfos.xml file down to categories instead of listed almost everything that is normally in the leaderhead file?
For example, the military archetype would only include lines pertaining to military stuff, and etc. Do you know what I'm trying to say?
 
Yes, but that would necessitate having more classes (more archetype files) and this way we only need to have the one ArchetypeInfos.xml file. As stated though, we can break up and reorganize the tags into categories within the Archetype entries too. And figuring out what tags go under what subcategories is our first task.

This way we have somewhere around 60 Archetype entries and that's it. Then we can have a lot more leaders defined without so much data buildup. The archetypes become a reference library for the leader infos.
 
Whatever makes sense upon going through the list of leader tags and grouping them into sensible groups. I haven't done that effort yet and that's the first part of the help I'm asking for, some suggestion as to how to group these into effective subcategories. Some of those tags may well be applicable categories of their own, like Flavors or Audio for example (since they have so many multiple entries as is.)
 
Yeah, sorry... I checked and the original upload onto mediafire was deleted a while back... oops!

Here's a new download link!

And again, this is just so you can get the headers of the Archetype entries themselves at the moment. And see if you feel there's more that should be included.
 
Thunderbrd I'm going to post the subcategories for the Archetype files. Hopefully I will be posting a list of Archetype types later.

Game Strategy
Spoiler :
<iWonderConstructRand>0</iWonderConstructRand>
<iBasePeaceWeight>0</iBasePeaceWeight>
<iPeaceWeightRand>0</iPeaceWeightRand>
<iWarmongerRespect>0</iWarmongerRespect>
<iEspionageWeight>0</iEspionageWeight>
<iNoTechTradeThreshold>0</iNoTechTradeThreshold>
<iTechTradeKnownPercent>70</iTechTradeKnownPercent>
<!-- BBAI Victory Strategy -->
<iCultureVictoryWeight>0</iCultureVictoryWeight>
<iSpaceVictoryWeight>0</iSpaceVictoryWeight>
<iConquestVictoryWeight>0</iConquestVictoryWeight>
<iDominationVictoryWeight>0</iDominationVictoryWeight>
<iDiplomacyVictoryWeight>0</iDiplomacyVictoryWeight>
<!-- BBAI Victory Strategy -->
<ImprovementWeightModifiers/>


Warfare
Spoiler :
<iMaxWarRand>0</iMaxWarRand>
<iMaxWarNearbyPowerRatio>0</iMaxWarNearbyPowerRatio>
<iMaxWarDistantPowerRatio>0</iMaxWarDistantPowerRatio>
<iMaxWarMinAdjacentLandPercent>0</iMaxWarMinAdjacentLandPercent>
<iLimitedWarRand>0</iLimitedWarRand>
<iLimitedWarPowerRatio>0</iLimitedWarPowerRatio>
<iDogpileWarRand>0</iDogpileWarRand>
<iMakePeaceRand>0</iMakePeaceRand>
<iDeclareWarTradeRand>0</iDeclareWarTradeRand>
<iDemandRebukedSneakProb>0</iDemandRebukedSneakProb>
<iDemandRebukedWarProb>0</iDemandRebukedWarProb>
<iRazeCityProb>10</iRazeCityProb>
<iBuildUnitProb>50</iBuildUnitProb>
<iBaseAttackOddsChange>0</iBaseAttackOddsChange>
<iAttackOddsChangeRand>16</iAttackOddsChangeRand>
<iWorseRankDifferenceAttitudeChange>0</iWorseRankDifferenceAttitudeChange>
<iBetterRankDifferenceAttitudeChange>0</iBetterRankDifferenceAttitudeChange>
<iCloseBordersAttitudeChange>0</iCloseBordersAttitudeChange>
<iLostWarAttitudeChange>0</iLostWarAttitudeChange>
<iAtWarAttitudeDivisor>0</iAtWarAttitudeDivisor>
<NoWarAttitudeProbs/>
<UnitAIWeightModifiers/>
<ContactRands>
<ContactRand>
<ContactType>CONTACT_JOIN_WAR</ContactType>
<iContactRand>20</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_DEMAND_TRIBUTE</ContactType>
<iContactRand>250</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_DEFENSIVE_PACT</ContactType>
<iContactRand>80</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_PERMANENT_ALLIANCE</ContactType>
<iContactRand>80</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_PEACE_TREATY</ContactType>
<iContactRand>20</iContactRand>
</ContactRand>
<ContactDelay>
<ContactType>CONTACT_JOIN_WAR</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_DEMAND_TRIBUTE</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_DEFENSIVE_PACT</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_PERMANENT_ALLIANCE</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_PEACE_TREATY</ContactType>
<iContactDelay>10</iContactDelay>
</ContactDelay>






Diplomacy

Spoiler :
<iRefuseToTalkWarThreshold>0</iRefuseToTalkWarThreshold>
<iAtPeaceAttitudeDivisor>0</iAtPeaceAttitudeDivisor>
<iAtPeaceAttitudeChangeLimit>0</iAtPeaceAttitudeChangeLimit>
<iShareWarAttitudeChange>0</iShareWarAttitudeChange>
<iShareWarAttitudeDivisor>0</iShareWarAttitudeDivisor>
<iShareWarAttitudeChangeLimit>0</iShareWarAttitudeChangeLimit>
<iFavoriteCivicAttitudeChange>0</iFavoriteCivicAttitudeChange>
<iFavoriteCivicAttitudeDivisor>0</iFavoriteCivicAttitudeDivisor>
<iFavoriteCivicAttitudeChangeLimit>0</iFavoriteCivicAttitudeChangeLimit>
<DemandTributeAttitudeThreshold>NONE</DemandTributeAttitudeThreshold>
<NoGiveHelpAttitudeThreshold>NONE</NoGiveHelpAttitudeThreshold>
<DeclareWarRefuseAttitudeThreshold>NONE</DeclareWarRefuseAttitudeThreshold>
<DeclareWarThemRefuseAttitudeThreshold>NONE</DeclareWarThemRefuseAttitudeThreshold>
<AdoptCivicRefuseAttitudeThreshold>NONE</AdoptCivicRefuseAttitudeThreshold>
<OpenBordersRefuseAttitudeThreshold>NONE</OpenBordersRefuseAttitudeThreshold>
<DefensivePactRefuseAttitudeThreshold>NONE</DefensivePactRefuseAttitudeThreshold>
<PermanentAllianceRefuseAttitudeThreshold>NONE</PermanentAllianceRefuseAttitudeThreshold>
<VassalRefuseAttitudeThreshold>NONE</VassalRefuseAttitudeThreshold>
<iVassalPowerModifier>0</iVassalPowerModifier>
<iFreedomAppreciation>0</iFreedomAppreciation>
<ContactRands/>
<ContactRand>
<ContactType>CONTACT_CIVIC_PRESSURE</ContactType>
<iContactRand>1000</iContactRand>
</ContactRand>
<ContactType>CONTACT_GIVE_HELP</ContactType>
<iContactRand>500</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_ASK_FOR_HELP</ContactType>
<iContactRand>100</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_OPEN_BORDERS</ContactType>
<iContactRand>20</iContactRand>
</ContactRand>
<ContactDelay>
<ContactType>CONTACT_CIVIC_PRESSURE</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactDelay>
<ContactType>CONTACT_STOP_TRADING</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_GIVE_HELP</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_ASK_FOR_HELP</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_OPEN_BORDERS</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<MemoryDecays>
<MemoryDecay>
<MemoryType>MEMORY_GIVE_HELP</MemoryType>
<iMemoryRand>200</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_REFUSED_HELP</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_ACCEPT_DEMAND</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_REJECTED_DEMAND</MemoryType>
<iMemoryRand>150</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_ACCEPTED_CIVIC</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_DENIED_CIVIC</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_ACCEPTED_JOIN_WAR</MemoryType>
<iMemoryRand>150</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_DENIED_JOIN_WAR</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_ACCEPTED_STOP_TRADING</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_DENIED_STOP_TRADING</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_STOPPED_TRADING_RECENT</MemoryType>
<iMemoryRand>30</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_MADE_DEMAND_RECENT</MemoryType>
<iMemoryRand>20</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_CANCELLED_OPEN_BORDERS</MemoryType>
<iMemoryRand>10</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_TRADED_TECH_TO_US</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_RECEIVED_TECH_FROM_ANY</MemoryType>
<iMemoryRand>20</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_VOTED_AGAINST_US</MemoryType>
<iMemoryRand>10</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_VOTED_FOR_US</MemoryType>
<iMemoryRand>10</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_EVENT_GOOD_TO_US</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_EVENT_BAD_TO_US</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryAttitudePercents>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DECLARED_WAR</MemoryType>
<iMemoryAttitudePercent>-300</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DECLARED_WAR_ON_FRIEND</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_HIRED_WAR_ALLY</MemoryType>
<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_NUKED_US</MemoryType>
<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_NUKED_FRIEND</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_RAZED_CITY</MemoryType>
<iMemoryAttitudePercent>-250</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_SPY_CAUGHT</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_GIVE_HELP</MemoryType>
<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_REFUSED_HELP</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_ACCEPT_DEMAND</MemoryType>
<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_REJECTED_DEMAND</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_ACCEPTED_CIVIC</MemoryType>
<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DENIED_CIVIC</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DENIED_JOIN_WAR</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_ACCEPTED_STOP_TRADING</MemoryType>
<iMemoryAttitudePercent>50</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DENIED_STOP_TRADING</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_STOPPED_TRADING</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_HIRED_TRADE_EMBARGO</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_MADE_DEMAND</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_TRADED_TECH_TO_US</MemoryType>
<iMemoryAttitudePercent>5</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_VOTED_AGAINST_US</MemoryType>
<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_VOTED_FOR_US</MemoryType>
<iMemoryAttitudePercent>200</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_EVENT_GOOD_TO_US</MemoryType>
<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_EVENT_BAD_TO_US</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_LIBERATED_CITIES</MemoryType>
<iMemoryAttitudePercent>150</iMemoryAttitudePercent>
</MemoryAttitudePercent>
</MemoryAttitudePercents>
<NoWarAttitudeProbs>
<NoWarAttitudeProb>
<AttitudeType>ATTITUDE_ANNOYED</AttitudeType>
<iNoWarProb>10</iNoWarProb>
</NoWarAttitudeProb>
<NoWarAttitudeProb>
<AttitudeType>ATTITUDE_CAUTIOUS</AttitudeType>
<iNoWarProb>50</iNoWarProb>
</NoWarAttitudeProb>
<NoWarAttitudeProb>
<AttitudeType>ATTITUDE_PLEASED</AttitudeType>
<iNoWarProb>90</iNoWarProb>
</NoWarAttitudeProb>
<NoWarAttitudeProb>
<AttitudeType>ATTITUDE_FRIENDLY</AttitudeType>
<iNoWarProb>100</iNoWarProb>
</NoWarAttitudeProb>
</NoWarAttitudeProbs>
(All Diplomacy Music)


Trade
Spoiler :
<iMaxGoldTradePercent>0</iMaxGoldTradePercent>
<iMaxGoldPerTurnTradePercent>0</iMaxGoldPerTurnTradePercent>
<iBonusTradeAttitudeDivisor>0</iBonusTradeAttitudeDivisor>
<iBonusTradeAttitudeChangeLimit>0</iBonusTradeAttitudeChangeLimit>
<iOpenBordersAttitudeDivisor>0</iOpenBordersAttitudeDivisor>
<iOpenBordersAttitudeChangeLimit>0</iOpenBordersAttitudeChangeLimit>
<TechRefuseAttitudeThreshold>NONE</TechRefuseAttitudeThreshold>
<StrategicBonusRefuseAttitudeThreshold>NONE</StrategicBonusRefuseAttitudeThreshold>
<HappinessBonusRefuseAttitudeThreshold>NONE</HappinessBonusRefuseAttitudeThreshold>
<HealthBonusRefuseAttitudeThreshold>NONE</HealthBonusRefuseAttitudeThreshold>
<MapRefuseAttitudeThreshold>NONE</MapRefuseAttitudeThreshold>
<StopTradingRefuseAttitudeThreshold>NONE</StopTradingRefuseAttitudeThreshold>
<StopTradingThemRefuseAttitudeThreshold>NONE</StopTradingThemRefuseAttitudeThreshold>
<ContactRand>
<ContactType>CONTACT_STOP_TRADING</ContactType>
<iContactRand>50</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_TRADE_TECH</ContactType>
<iContactRand>10</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_TRADE_BONUS</ContactType>
<iContactRand>10</iContactRand>
</ContactRand>
<ContactRand>
<ContactType>CONTACT_TRADE_MAP</ContactType>
<iContactRand>20</iContactRand>
</ContactRand>
<ContactType>CONTACT_TRADE_TECH</ContactType>
<iContactDelay>30</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_TRADE_BONUS</ContactType>
<iContactDelay>20</iContactDelay>
</ContactDelay>
<ContactDelay>
<ContactType>CONTACT_TRADE_MAP</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
</ContactDelays>




Religion
Spoiler :
<iSameReligionAttitudeChange>0</iSameReligionAttitudeChange>
<iSameReligionAttitudeDivisor>0</iSameReligionAttitudeDivisor>
<iSameReligionAttitudeChangeLimit>0</iSameReligionAttitudeChangeLimit>
<iDifferentReligionAttitudeChange>0</iDifferentReligionAttitudeChange>
<iDifferentReligionAttitudeDivisor>0</iDifferentReligionAttitudeDivisor>
<iDifferentReligionAttitudeChangeLimit>0</iDifferentReligionAttitudeChangeLimit>
<ConvertReligionRefuseAttitudeThreshold>NONE</ConvertReligionRefuseAttitudeThreshold>
<ContactRands>
<ContactRand>
<ContactType>CONTACT_RELIGION_PRESSURE</ContactType>
<iContactRand>500</iContactRand>
</ContactRand>
<ContactDelays>
<ContactDelay>
<ContactType>CONTACT_RELIGION_PRESSURE</ContactType>
<iContactDelay>50</iContactDelay>
</ContactDelay>
<MemoryDecay>
<MemoryType>MEMORY_ACCEPTED_RELIGION</MemoryType>
<iMemoryRand>100</iMemoryRand>
</MemoryDecay>
<MemoryDecay>
<MemoryType>MEMORY_DENIED_RELIGION</MemoryType>
<iMemoryRand>50</iMemoryRand>
</MemoryDecay>
<MemoryAttitudePercent>
<MemoryType>MEMORY_RAZED_HOLY_CITY</MemoryType>
<iMemoryAttitudePercent>-200</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_ACCEPTED_RELIGION</MemoryType>
<iMemoryAttitudePercent>100</iMemoryAttitudePercent>
</MemoryAttitudePercent>
<MemoryAttitudePercent>
<MemoryType>MEMORY_DENIED_RELIGION</MemoryType>
<iMemoryAttitudePercent>-100</iMemoryAttitudePercent>
</MemoryAttitudePercent>



*Still trying to decide were iBaseAttitude should go
 
:thumbsup::hatsoff::woohoo:

THANK YOU! I'll analyze these in a bit but your timing is great! What tags are in the leaderhead files that aren't here though? Are there any? Some of those may need their own category so to speak.

This looks really well done so far.

Keep in mind I'll need an Archetype for each Trait type. I'm thinking Progressist and Hunter/Gatherer will still need one since they're being used extensively in the current trait sets and I may yet figure out a way to include them in mine.
 
All of the tags should be in their. A couple of them (like diplomacy music and memory decays) are generalized into one line in my lists. Most of those categories are very long.

I think I'm still confused on why we are making the archetypes based of off traits. A lot of the traits wouldn't have anything to do with the options available in the leaderhead files. Am I missing something? I feel like it makes more sense to have a dozen or so types for each of those subcategories that could be mixed bad matched to make diverse leaders.

I don't have my list complete yet. Unfortunately I got distracted yesterday as I had to take my wife to the doctor unexpectedly. It ended up being muscle spasms in her neck so she is a little drugged up lol.
 
I just figured it would make for Archetypes that made sense. If you have an alternative scheme that you feel would be able to cut down on the amount of archetypes without reducing variation much, I'm open to alternative suggestions. It'd just mean that the Favorite Trait tag wouldn't work quite as planned is all. Could still work fine being defined by individual leader though.
 
I'm going to put some info here on how I imagine this working. I will fill in more detail later whenvim not at work.

The main goal here is to allow leader creation to be easier and faster will to supplying the same diversity. How I would like to accomplish this is by defining several archetype types per leader, keeping flavor tags defined per leader, and keep in mind that variable can be overridden in the leader head file. The leader head file would look very similar to what you had posted but with more archetype references. To me having a archetype for each trait causes confusion because a lot of the variables don't correlate with the leader trait options. The archetypes would be as I listed above with the addition of victory weights being a separate category. So... Game Strategy, Victory Weights, Diplomacy, Trade, Religion.

Posted below are some examples (will add details later). Note that I would like see 10-12 per category.

Game Strategy
The main differences would be wonder build rate, peace and warmonger attitude changes, espionage rate, and base attitude towards other players.
Spoiler :
Isolationist (high wonder build, high peace rate, unlikely to trade techs)
Peacekeeper (moderate wonder, very high peace, more likely to trade techs, low espionage)
Warmonger (low wonder , low peace rate, moderate espionage, high warmonger)
Builder(very high wonder, moderate peace rating, may trade techs, low espionage)
Spy (moderate wonder, moderate peace rating, low trade, very high espionage)
Indifferent (moderate across the board)
Utopian (moderate wonder, very high peace, will trade techs almost always, very low espionage)

Chivalrous (moderate wonder, low peace, high warmonger respect, likely to trade techs, very low espionage)


Victory Weights
This one is pretty obvious.
Spoiler :
Cultural
Diplomacy
Military
Space
Conquest
Domination
Balanced
Etc


Religion
Main differences are Conversion likelihood, attitude change for same religion and different religion.
Spoiler :
Devout(unlikely to convert, moderate change different, high change same)
Crusader(no convert, high change different, moderate change same)
Diest (may convert, low change different, low change same)
Zealot (no convert, very high change different, very high change same)
Free Spirit (more likely convert, very low change different, very low same)



Diplomacy
Mostly involved with attitude change severity for diplomatic actions and how long the player remembers the action. This one may have more categories than the rest due to the number of variables.
Spoiler :
Unforgiving
Forgiving
Persistent
Loner
Reserved
Prideful


Military
Everything with military, war probability, dogpile likelihood, attack odd change, etc.
Spoiler :
Warlord(very likely to attack, high unit build, hates losing, high attack odds)
Protective(not likely attack, moderate unit build, high odds for close borders)
Reckless(fights at any chance, raze likely, insane attack odds)
Strategic(attacks when likely to win, nearby opponents)
Opportunist(attacks when odds highly in their favor, demands tributes often)
Peaceful(hardly attacks, does not like aggressive leaders, etc)



Trade
Has to do with how much of their wealth they are willing to trade and attitude thresholds for trading various things. Looking over the current leaderhead files has shown me this will be the category with the least diversity/game impact. A lot of the variables are the same for every leader.

Spoiler :
Frivolous(trade more gold, likely to trade anything)
PennyPincher(will hardly trade any gold, relatively normal attitude thresholds)
Active (most likely to trade anything)
Exporter(most likely to trade strategic resources)
Conservative (will only trade at high attitudes)


Example using Julius Caesar...

<LeaderheadInfo>
<Type>LEADER_JULIUSCAESAR</Type>
<Description>TXT_KEY_LEADER_JULIUSCAESAR</Description>
<Civilopedia>TXT_KEY_LEADER_JULIUSCAESAR_PEDIA</Civilopedia>
<ArtDefineTag>ART_DEF_LEADER_JULIUSCAESAR</ArtDefineTag>
<GameStrategyArchetypeInfo>WARMONGER_ARCHETYPE</GameStrategyArchetypeInfo>
<VictoryWeightsArchetypeInfo>CONQUEST_ARCHETYPE</VictoryWeightsArchetypeInfo>
<MilitaryArchetypeInfo>STRATEGIC_ARCHETYPE</MilitaryArchetypeInfo>
<DiplomacyArchetypeInfo>STOIC_ARCHETYPE</DiplomacyArchetypeInfo>
<TradeArchetypeInfo>CONSERVATIVE_ARCHETYPE</TradeArchetypeInfo>
<ReligionArchetypeInfo>PIOUS_ARCHETYPE</ReligionArchetypeInfo>
Flavors
Favorite Traits
Etc
 
Ah. I see why you want differing files for the different archetype categories - because you would have them broken down in different groupings. That doesn't gel with the concept of having one archetype definition define all the tags then having the tags grouped into differing categories, then having a primary archetype that blends with the sub-archetype categories.

The way it was going to work was that if you had say, ARCHETYPE_AGGRESSIVE as your primary, then say, ARCHETYPE_PROTECTIVE as your diplomatic archetype, you'd actually have an average between the two values in all those diplomatic archetype tags.

In some ways, the changes to the structure that you're suggesting do make some sense... just makes it impossible to have this averaging blend that further tweaks the final results. But there could be a compromise here...

I'm thinking the Favorite Traits and Flavors could at least be an Archetype category in and of itself. There's only one flavors tag... all the flavors then are defined within that one tag. THIS could be a master Archetype page where almost all the leader tags are defined for the primary archetype category, which could then be blended with the sub-categories. I realize not all of them would have well established causes for definition under every Trait type Archetype definition, and in such cases, it could be valid to not include a tag there... and if its not included, I can program it so that it doesn't average but rather defaults to the sub-category definition.

Thus, the 'Primary Archetype' could either blend with the tag's definition in the sub-category OR find a given tag irrelevant to its definition entirely.

Does this make sense? I'm thinking this blending of our concepts could be the best approach in the end. Makes for a few more files to work with but overall not problematic. And it could still cut down on the amount of data necessary to maintain a lot of leaders significantly.
 
I'm glad we are both getting a clearer picture on our respective solutions. Your idea could for sure work, and yeah a compromise could be the best solution. Would there really be a need for the averaging of the files? Couldn't the extra archetype file labeled as a trait just include the Flavors and favorite traits, not the entirety of the leader head info variables?

Edit
Also is there a list of all the traits somewhere? That would really be helpful. If we are going to base any archetypes on traits they need to be finalized. Traits need to be separated into positive and negative traits or all traits have a positive and a negative. I would prefer the former. It doesn't make sense to me that any two agressive leaders (as an example) would have the same flaws. I know pure traits are a game option but how will that translate if we are basing leader head variables on traits that have positive and negative?
 
I'm glad we are both getting a clearer picture on our respective solutions. Your idea could for sure work, and yeah a compromise could be the best solution. Would there really be a need for the averaging of the files? Couldn't the extra archetype file labeled as a trait just include the Flavors and favorite traits, not the entirety of the leader head info variables?
The purpose of the averaging mechanism would be to create an enormous amount of diversity potential with minimal data so that no two leaders, almost regardless of how many leaders we had defined, would ever end up with the same exact personality data. Creates exponential complexity with a very fair degree of simplicity.

If that's not of value enough to worry about it, then yes, the last statement could be utilized as such.
Edit
Also is there a list of all the traits somewhere? That would really be helpful. If we are going to base any archetypes on traits they need to be finalized. Traits need to be separated into positive and negative traits or all traits have a positive and a negative. I would prefer the former. It doesn't make sense to me that any two agressive leaders (as an example) would have the same flaws. I know pure traits are a game option but how will that translate if we are basing leader head variables on traits that have positive and negative?
To some extent that list is still potentially growing here. The document I uploaded for you shows all of the ones I intend on and I will most likely attempt to include even those I did not initially intend to that we currently have and a few more that have been discussed and conceived of since.

I believe that with any positive aspect of anything there's also some negative sides of that coin. But then, I'm a yin/yang based thinker and don't believe in absolute dichotomies much. With negative traits themselves in play, however, not ALL of a leader's negative aspects come from the downside of their positives, and thus very few Aggressive leaders WOULD have all the same maluses, just some few in common as a result of the same leadership style.

As to how pure traits would interact with the flavor structure of the trait itself and how that matches up to the corresponding Archetype, yes, it'd create a little bit of a flaw in the reality of the flavor evaluation. However, since the trait's flavor settings would not differ due to the use of Pure Traits in play, the corresponding Archetype would still match that trait absolutely.

The negative aspects of a positive trait and the positive aspects of a negative trait when running without Pure Traits would probably be best to be somewhere around 1/5th or less of the overall influence from that trait. Thus a positive trait is almost entirely about positive effects with one or two very minor negative side effects. This is not always adhered to in the present trait scheme and should see some improvement in my next traits proposal/structure. Thus, playing with Pure Traits should not vastly alter a game since the impure elements would be a very minor aspect of a trait in the first place. My first traits proposal gave the impurities 7 out of 27 analysis points. I'd seek for it to mean even less in the next round of proposals.
 
Back
Top Bottom