thombran
Chieftain
ATTENTION: MAJOR N00BERY FOLLOWS. PLEASE EXCUSE MY IGNORANCE.
The past few days I've been reading a bit into modding Civ 5, and decided to create my own mod. The idea is to create forts and citadels that can be used as bases for missiles and air units much like missile cruisers and carriers. To do this, I thought I would modify the xml files under Improvements and Builds. Early on I discovered the schema under Improvments.xml did not have any commands for <SpecialCargo> and <DomainCargo>. So naturally I thought what I needed to do was modify the schema to add these commands and then reference them under the Citadel Improvement Row under /Improvements. Sadly, something seems to be wrong as I've tested the following modifications and they haven't produced any change in the game
. I'd appreciate so much if one you guys could let me know what's failing here :
This is my attempt to modify the original schema for <Improvements>:
And here are the changes I made to the XML for Improvements and Builds (I wanted citadels to be able to be built on atolls, because I wanted to also change the great admiral to be able to construct them):
Lastly, I tried to create a SQL file to make a great admiral have the BUILD_CITADEL build like the great general. MY knowledge of SQL is horrible and so this is the only thing I could think of, and help would be greatly appreciated!:
As you can see, I tried to add great admiral to the Unit_Builds table and have it be able to use the construct citadel option (on an atoll referenced earlier). But again, this was to no avail.
Anything that anyone can help is welcome. Even if its just pointing to a good guide, etc. I tried kael's guide but it mentioned little on unit/improvement modification.
Thanks again!
The past few days I've been reading a bit into modding Civ 5, and decided to create my own mod. The idea is to create forts and citadels that can be used as bases for missiles and air units much like missile cruisers and carriers. To do this, I thought I would modify the xml files under Improvements and Builds. Early on I discovered the schema under Improvments.xml did not have any commands for <SpecialCargo> and <DomainCargo>. So naturally I thought what I needed to do was modify the schema to add these commands and then reference them under the Citadel Improvement Row under /Improvements. Sadly, something seems to be wrong as I've tested the following modifications and they haven't produced any change in the game

This is my attempt to modify the original schema for <Improvements>:
Spoiler :
<?xml version="1.0" encoding="utf-8"?>
<!-- Created by ModBuddy on 10/11/2012 12:47:30 AM -->
<GameData>
<!-- Schema-->
<!-- Table definition -->
<Table name="Improvements">
<Column name="ID" type="integer" primarykey="true" autoincrement="true"/>
<Column name="Type" type="text" notnull="true" unique="true"/>
<Column name="Description" type="text"/>
<Column name="Civilopedia" type="text"/>
<Column name="Help" type="text"/>
<Column name="ArtDefineTag" type="text"/>
<Column name="WorldSoundscapeAudioScript" type="text"/>
<Column name="ImprovementPillage" type="text" reference="Improvements(Type)" default="NULL"/>
<Column name="ImprovementUpgrade" type="text" reference="Improvements(Type)" default="NULL"/>
<Column name="SpecificCivRequired" type="boolean" default="false"/>
<Column name="CivilizationType" type="text" reference="Civilizations(Type)" default="NULL"/>
<Column name="HillsMakesValid" type="boolean" default="false"/>
<Column name="FreshWaterMakesValid" type="boolean" default="false"/>
<Column name="RiverSideMakesValid" type="boolean" default="false"/>
<Column name="NoFreshWater" type="boolean" default="false"/>
<Column name="RequiresFlatlands" type="boolean" default="false"/>
<Column name="RequiresFlatlandsOrFreshWater" type="boolean" default="false"/>
<Column name="RequiresFeature" type="boolean" default="false"/>
<Column name="Coastal" type="boolean" default="false"/>
<Column name="Water" type="boolean" default="false"/>
<Column name="DestroyedWhenPillaged" type="boolean" default="false"/>
<Column name="BuildableOnResources" type="boolean" default="false"/>
<Column name="BarbarianCamp" type="boolean" default="false"/>
<Column name="Goody" type="boolean" default="false"/>
<Column name="Permanent" type="boolean" default="false"/>
<Column name="OutsideBorders" type="boolean" default="false"/>
<Column name="GraphicalOnly" type="boolean" default="false"/>
<Column name="CreatedByGreatPerson" type="boolean" default="false"/>
<Column name="Culture" type="integer" default="0"/>
<Column name="CultureAdjacentSameType" type="integer" default="0"/>
<Column name="TilesPerGoody" type="integer" default="0"/>
<Column name="GoodyRange" type="integer" default="0"/>
<Column name="FeatureGrowth" type="integer" default="0"/>
<Column name="UpgradeTime" type="integer" default="0"/>
<Column name="RiverSideUpgradeMod" type="integer" default="0"/>
<Column name="CoastalLandUpgradeMod" type="integer" default="0"/>
<Column name="HillsUpgradeMod" type="integer" default="0"/>
<Column name="FreshWaterUpgradeMod" type="integer" default="0"/>
<Column name="DefenseModifier" type="integer" default="0"/>
<Column name="NearbyEnemyDamage" type="integer" default="0"/>
<Column name="PillageGold" type="integer" default="0"/>
<Column name="ResourceExtractionMod" type="integer" default="0"/>
<Column name="GoldMaintenance" type="integer" default="0"/>
<Column name="PortraitIndex" type="integer" default="-1"/>
<Column name="IconAtlas" type="text" default="NULL" reference="IconTextureAtlases(Atlas)"/>
<Column name="SpecialCargo" type="text" reference="SpecialUnits(Type)" default="NULL"/>
<Column name="DomainCargo" type="text" reference="Domains(Type)" default="NULL"/>
</Table>
<Table name="Improvement_Flavors">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="FlavorType" type="text" reference="Flavors(Type)"/>
<Column name="Flavor" type="integer" notnull="true"/>
</Table>
<Table name="Improvement_Yields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_AdjacentCityYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_CoastalLandYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_FreshWaterYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_HillsYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_AdjacentMountainYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_PrereqNatureYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_RiverSideYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_ValidTerrains">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TerrainType" type="text" reference="Terrains(Type)"/>
</Table>
<Table name="Improvement_ValidFeatures">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="FeatureType" type="text" reference="Features(Type)"/>
</Table>
<Table name="Improvement_ResourceTypes">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="ResourceType" type="text" reference="Resources(Type)"/>
<Column name="ResourceMakesValid" type="boolean" default="true"/>
<Column name="ResourceTrade" type="boolean" default="true"/>
<Column name="DiscoveryRand" type="integer" default="0"/>
<Column name="QuantityRequirement" type="integer" default="0"/>
</Table>
<Table name="Improvement_ResourceType_Yields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="ResourceType" type="text" reference="Resources(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_RouteYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="RouteType" type="text" reference="Routes(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechNoFreshWaterYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechFreshWaterYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<!-- Table data -->
<!-- Created by ModBuddy on 10/11/2012 12:47:30 AM -->
<GameData>
<!-- Schema-->
<!-- Table definition -->
<Table name="Improvements">
<Column name="ID" type="integer" primarykey="true" autoincrement="true"/>
<Column name="Type" type="text" notnull="true" unique="true"/>
<Column name="Description" type="text"/>
<Column name="Civilopedia" type="text"/>
<Column name="Help" type="text"/>
<Column name="ArtDefineTag" type="text"/>
<Column name="WorldSoundscapeAudioScript" type="text"/>
<Column name="ImprovementPillage" type="text" reference="Improvements(Type)" default="NULL"/>
<Column name="ImprovementUpgrade" type="text" reference="Improvements(Type)" default="NULL"/>
<Column name="SpecificCivRequired" type="boolean" default="false"/>
<Column name="CivilizationType" type="text" reference="Civilizations(Type)" default="NULL"/>
<Column name="HillsMakesValid" type="boolean" default="false"/>
<Column name="FreshWaterMakesValid" type="boolean" default="false"/>
<Column name="RiverSideMakesValid" type="boolean" default="false"/>
<Column name="NoFreshWater" type="boolean" default="false"/>
<Column name="RequiresFlatlands" type="boolean" default="false"/>
<Column name="RequiresFlatlandsOrFreshWater" type="boolean" default="false"/>
<Column name="RequiresFeature" type="boolean" default="false"/>
<Column name="Coastal" type="boolean" default="false"/>
<Column name="Water" type="boolean" default="false"/>
<Column name="DestroyedWhenPillaged" type="boolean" default="false"/>
<Column name="BuildableOnResources" type="boolean" default="false"/>
<Column name="BarbarianCamp" type="boolean" default="false"/>
<Column name="Goody" type="boolean" default="false"/>
<Column name="Permanent" type="boolean" default="false"/>
<Column name="OutsideBorders" type="boolean" default="false"/>
<Column name="GraphicalOnly" type="boolean" default="false"/>
<Column name="CreatedByGreatPerson" type="boolean" default="false"/>
<Column name="Culture" type="integer" default="0"/>
<Column name="CultureAdjacentSameType" type="integer" default="0"/>
<Column name="TilesPerGoody" type="integer" default="0"/>
<Column name="GoodyRange" type="integer" default="0"/>
<Column name="FeatureGrowth" type="integer" default="0"/>
<Column name="UpgradeTime" type="integer" default="0"/>
<Column name="RiverSideUpgradeMod" type="integer" default="0"/>
<Column name="CoastalLandUpgradeMod" type="integer" default="0"/>
<Column name="HillsUpgradeMod" type="integer" default="0"/>
<Column name="FreshWaterUpgradeMod" type="integer" default="0"/>
<Column name="DefenseModifier" type="integer" default="0"/>
<Column name="NearbyEnemyDamage" type="integer" default="0"/>
<Column name="PillageGold" type="integer" default="0"/>
<Column name="ResourceExtractionMod" type="integer" default="0"/>
<Column name="GoldMaintenance" type="integer" default="0"/>
<Column name="PortraitIndex" type="integer" default="-1"/>
<Column name="IconAtlas" type="text" default="NULL" reference="IconTextureAtlases(Atlas)"/>
<Column name="SpecialCargo" type="text" reference="SpecialUnits(Type)" default="NULL"/>
<Column name="DomainCargo" type="text" reference="Domains(Type)" default="NULL"/>
</Table>
<Table name="Improvement_Flavors">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="FlavorType" type="text" reference="Flavors(Type)"/>
<Column name="Flavor" type="integer" notnull="true"/>
</Table>
<Table name="Improvement_Yields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_AdjacentCityYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_CoastalLandYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_FreshWaterYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_HillsYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_AdjacentMountainYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_PrereqNatureYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_RiverSideYields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_ValidTerrains">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TerrainType" type="text" reference="Terrains(Type)"/>
</Table>
<Table name="Improvement_ValidFeatures">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="FeatureType" type="text" reference="Features(Type)"/>
</Table>
<Table name="Improvement_ResourceTypes">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="ResourceType" type="text" reference="Resources(Type)"/>
<Column name="ResourceMakesValid" type="boolean" default="true"/>
<Column name="ResourceTrade" type="boolean" default="true"/>
<Column name="DiscoveryRand" type="integer" default="0"/>
<Column name="QuantityRequirement" type="integer" default="0"/>
</Table>
<Table name="Improvement_ResourceType_Yields">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="ResourceType" type="text" reference="Resources(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer" default="0"/>
</Table>
<Table name="Improvement_RouteYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="RouteType" type="text" reference="Routes(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechNoFreshWaterYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<Table name="Improvement_TechFreshWaterYieldChanges">
<Column name="ImprovementType" type="text" reference="Improvements(Type)"/>
<Column name="TechType" type="text" reference="Technologies(Type)"/>
<Column name="YieldType" type="text" reference="Yields(Type)"/>
<Column name="Yield" type="integer"/>
</Table>
<!-- Table data -->
And here are the changes I made to the XML for Improvements and Builds (I wanted citadels to be able to be built on atolls, because I wanted to also change the great admiral to be able to construct them):
Spoiler :
<Improvements>
<Row>
<Type>IMPROVEMENT_CITADEL</Type>
<Description>TXT_KEY_IMPROVEMENT_CITADEL</Description>
<Civilopedia>TXT_KEY_CIV5_IMPROVEMENTS_CITADEL_TEXT</Civilopedia>
<ArtDefineTag>ART_DEF_IMPROVEMENT_CITADEL</ArtDefineTag>
<BuildableOnResources>true</BuildableOnResources>
<DefenseModifier>100</DefenseModifier>
<CreatedByGreatPerson>true</CreatedByGreatPerson>
<NearbyEnemyDamage>3</NearbyEnemyDamage>
<PortraitIndex>35</PortraitIndex>
<IconAtlas>TERRAIN_ATLAS</IconAtlas>
<YieldType>YIELD_PRODUCTION</YieldType>
<Yield>2</Yield>
<CityLoad>true</CityLoad>
<Water>true</Water>
<SpecialCargo>SPECIALUNIT_MISSILE</SpecialCargo>
<DomainCargo>DOMAIN_AIR</DomainCargo>
</Row>
<Update>
<Set SpecialCargo="SPECIALUNIT_MISSILE, SPECIALUNIT_FIGHTER"/>
<Set DomainCargo="DOMAIN_AIR"/>
<Set YieldType="YIELD_PRODUCTION"/>
<Set CityLoad="true"/>
<Set Yield="2"/>
<Where Type="IMPROVEMENT_CITADEL"/>
</Update>
<Update>
<Set SpecialCargo="SPECIALUNIT_MISSILE, SPECIALUNIT_FIGHTER"/>
<Set DomainCargo="DOMAIN_AIR"/>
<Set YieldType="YIELD_PRODUCTION"/>
<Set CityLoad="true"/>
<Set Yield="1"/>
<Where Type="IMPROVEMENT_FORT"/>
</Update>
<Update>
<Set Water="true"/>
<Where Type="IMPROVEMENT_CITADEL"/>
</Update>
</Improvements>
<Builds>
<Row>
<BuildType>BUILD_CITADEL</BuildType>
<FeatureType>FEATURE_ATOLL/</FeatureType>
<PrereqTech>TECH_SAILING</PrereqTech>
<Remove>true</Remove>
</Row>
<Update>
<Set FeatureType="FEATURE_ATOLL"/>
<Set PrereqTech="SAILING"/>
<Where BuildType="BUILD_CITADEL" FeatureType="FEATURE_JUNGLE"/>
</Update>
</Builds>
</GameData>
<Row>
<Type>IMPROVEMENT_CITADEL</Type>
<Description>TXT_KEY_IMPROVEMENT_CITADEL</Description>
<Civilopedia>TXT_KEY_CIV5_IMPROVEMENTS_CITADEL_TEXT</Civilopedia>
<ArtDefineTag>ART_DEF_IMPROVEMENT_CITADEL</ArtDefineTag>
<BuildableOnResources>true</BuildableOnResources>
<DefenseModifier>100</DefenseModifier>
<CreatedByGreatPerson>true</CreatedByGreatPerson>
<NearbyEnemyDamage>3</NearbyEnemyDamage>
<PortraitIndex>35</PortraitIndex>
<IconAtlas>TERRAIN_ATLAS</IconAtlas>
<YieldType>YIELD_PRODUCTION</YieldType>
<Yield>2</Yield>
<CityLoad>true</CityLoad>
<Water>true</Water>
<SpecialCargo>SPECIALUNIT_MISSILE</SpecialCargo>
<DomainCargo>DOMAIN_AIR</DomainCargo>
</Row>
<Update>
<Set SpecialCargo="SPECIALUNIT_MISSILE, SPECIALUNIT_FIGHTER"/>
<Set DomainCargo="DOMAIN_AIR"/>
<Set YieldType="YIELD_PRODUCTION"/>
<Set CityLoad="true"/>
<Set Yield="2"/>
<Where Type="IMPROVEMENT_CITADEL"/>
</Update>
<Update>
<Set SpecialCargo="SPECIALUNIT_MISSILE, SPECIALUNIT_FIGHTER"/>
<Set DomainCargo="DOMAIN_AIR"/>
<Set YieldType="YIELD_PRODUCTION"/>
<Set CityLoad="true"/>
<Set Yield="1"/>
<Where Type="IMPROVEMENT_FORT"/>
</Update>
<Update>
<Set Water="true"/>
<Where Type="IMPROVEMENT_CITADEL"/>
</Update>
</Improvements>
<Builds>
<Row>
<BuildType>BUILD_CITADEL</BuildType>
<FeatureType>FEATURE_ATOLL/</FeatureType>
<PrereqTech>TECH_SAILING</PrereqTech>
<Remove>true</Remove>
</Row>
<Update>
<Set FeatureType="FEATURE_ATOLL"/>
<Set PrereqTech="SAILING"/>
<Where BuildType="BUILD_CITADEL" FeatureType="FEATURE_JUNGLE"/>
</Update>
</Builds>
</GameData>
Lastly, I tried to create a SQL file to make a great admiral have the BUILD_CITADEL build like the great general. MY knowledge of SQL is horrible and so this is the only thing I could think of, and help would be greatly appreciated!:
Spoiler :
- GREAT_ADMIRAL
INSERT INTO "main"."Unit_Builds" ("UnitType","BuildType") VALUES ('UNIT_GREAT_ADMIRAL','BUILD_CITADEL')
INSERT INTO "Unit_Builds" (UNIT_GREAT_ADMIRAL,BUILD_CITADEL)
INSERT INTO Unit_Builds ["UnitType", "BuildType"] VALUES("29", "UNIT_GREAT_ADMIRAL", "BUILD_CITADEL")
INSERT INTO "main"."Unit_Builds" ("UnitType","BuildType") VALUES ('UNIT_GREAT_ADMIRAL','BUILD_CITADEL')
INSERT INTO "Unit_Builds" (UNIT_GREAT_ADMIRAL,BUILD_CITADEL)
INSERT INTO Unit_Builds ["UnitType", "BuildType"] VALUES("29", "UNIT_GREAT_ADMIRAL", "BUILD_CITADEL")
As you can see, I tried to add great admiral to the Unit_Builds table and have it be able to use the construct citadel option (on an atoll referenced earlier). But again, this was to no avail.
Anything that anyone can help is welcome. Even if its just pointing to a good guide, etc. I tried kael's guide but it mentioned little on unit/improvement modification.
Thanks again!
