Militaristic City-States only gifting Settlers?

Joined
Sep 22, 2010
Messages
667
Is there any kind of xml tomfoolery that would result in this instance, as is happening right now in my games? I figured that it might be referring to the Boer's unique settler, but nope, they're just normal settlers and every militaristic city-state seems to want to gift them as allies. It kind of defeats the point of allying with them.

For a little background on how this probably cropped up, I did a bit of modmodding on LastSword's Japan pack so that it meshes nicely with some other Japan mods. This meant replacing LS' samurai unit in one of them with the vanilla one, which is impacted by Chrisy's Japan changes. After that, I noticed all militaristic city-states wanted to gift samurai when allied. So I figured LS' samurai not having a home was causing that, so I deleted the code. Looks like settlers replaced it, and I don't know why.

Edit: I do suppose recounting what I did might help.
Spoiler :
Mods used in this process:
http://steamcommunity.com/sharedfiles/filedetails/?id=305690589
http://steamcommunity.com/sharedfiles/filedetails/?id=567838891
http://steamcommunity.com/sharedfiles/filedetails/?id=683402704

JFD's Meiji is standalone and doesn't mess with vanilla Japan like these three do.

For Chrisy's Japan buff, I only have the samurai and zero changes enabled. For the Gaijin pack, Meiji and Jimmu's folders are commented out so the game does not load them. All the fiddly parts come from trying to mesh all these separate Oda elements together.

So I made the Gaijin pack depend on Tojo, because I use JFD's Dojo instead of LS'. That's just simply changing the name of the building. No problems here. Now the weird part comes in. LastSword sets the usual Oda as unplayable and makes his own. That would break a lot of mod support, so I simply removed that and updated Oda to include the new trait, building, and unit. Takauji's Japan gets the Samurai and the Dojo, but LastSword uses UNIT_LS_ASJ_SAMURAI. Chrisy's buff modifies UNIT_JAPANESE_SAMURAI. So I replace LS' samurai here with the vanilla one. So I figured all of the militaristic city-states offering samurai only was because the game detected the UNIT_LS_ASJ_SAMURAI sitting there all by its lonesome, but commenting out that file just makes things settlers instead...

Specific changes:
Code:
<Civilization_BuildingClassOverrides>
	<Row>
		<CivilizationType>CIVILIZATION_LS_ASJ_JAPAN</CivilizationType>
		<BuildingClassType>BUILDINGCLASS_ARMORY</BuildingClassType>
		<BuildingType>BUILDING_JFD_DOJO</BuildingType>
	</Row>
</Civilization_BuildingClassOverrides>
<Civilization_UnitClassOverrides>
	<Row>
		<CivilizationType>CIVILIZATION_LS_ASJ_JAPAN</CivilizationType>
		<UnitClassType>UNITCLASS_LONGSWORDSMAN</UnitClassType>
		<UnitType>UNIT_JAPANESE_SAMURAI</UnitType>
	</Row>
</Civilization_UnitClassOverrides>

Code:
<Leader_Traits>
	<Delete LeaderType="LEADER_ODA_NOBUNAGA"/>
	<Row>
		<LeaderType>LEADER_ODA_NOBUNAGA</LeaderType>
		<TraitType>TRAIT_LS_SJ_JAPAN</TraitType>
	</Row>
</Leader_Traits>
<Traits>
	<Row>
		<Type>TRAIT_LS_SJ_JAPAN</Type>
		<Description>TXT_KEY_TRAIT_LS_SJ_JAPAN</Description>
	<ShortDescription>TXT_KEY_TRAIT_LS_SJ_JAPAN_SHORT</ShortDescription>
	</Row>
</Traits>
<Civilization_BuildingClassOverrides>
	<Update>
		<Where CivilizationType="CIVILIZATION_JAPAN"/>
		<Set>
			<BuildingClassType>BUILDINGCLASS_CASTLE</BuildingClassType>
			<BuildingType>BUILDING_LS_SJ_JAPAN_TENCHU</BuildingType>
		</Set>
	</Update>
</Civilization_BuildingClassOverrides>
<Civilization_UnitClassOverrides>
	<Update>
		<Where CivilizationType="CIVILIZATION_JAPAN"/>
		<Set>
			<UnitClassType>UNITCLASS_PIKEMAN</UnitClassType>
			<UnitType>UNIT_LS_SJ_JAPAN_YARI</UnitType>
		</Set>
	</Update>
</Civilization_UnitClassOverrides>
 
How can you use Not for filthy Gaijin if you want samurai to build fishing boats, filthy gaijin.

Open ASJJapanLSUnitCode.lua and delete lines looking like that (at the bottom):
Code:
--citystate

for i,v in pairs(Players) do
	if v:IsMinorCiv() then
		if v:IsEverAlive() then
			if v:GetMinorCivUniqueUnit() == oSamurai then
				v:SetMinorCivUniqueUnit(uSamurai)
			end
		end
	end
end

Current version is 5, it would fix that.
 
I don't care about the fishing boats, but I do care about the samurai not obsoleting rather soon. And of course it would be a hidden feature that confounds me. Thanks for the quick fix.
 
Top Bottom