Skip to content
Niilo007 edited this page Oct 19, 2021 · 5 revisions

Example of patching items to be a part of a different research project

<?xml version="1.0" encoding="utf-8" ?>
<Patch>

  <!-- Fixing these trenches -->

	<Operation Class="PatchOperationReplace">
		<xpath>/Defs/ThingDef[defName="VFES_Trench"]/researchPrerequisites</xpath>
			<value>
			   <researchPrerequisites><li>ComplexFurniture</li></researchPrerequisites>
			 </value>
	</Operation>

	<Operation Class="PatchOperationReplace">
		<xpath>/Defs/ThingDef[defName="VFES_Platform"]/researchPrerequisites</xpath>
			<value>
			   <researchPrerequisites><li>ComplexFurniture</li></researchPrerequisites>
			 </value>
	</Operation>


</Patch>

Defs / ThingDef

<Defs>
	<ThingDef ParentName="BaseMeleeWeapon_Sharp_Quality">
		<defName>MeleeWeapon_Katana</defName>
		<label>katana</label>
		<description>An ancient sword with a curved blade. Used by great warriors for fast slashing and stabbing attacks.</description>
		<techLevel>Medieval</techLevel> <!-- Medieval | Spacer -->
		<costStuffCount>110</costStuffCount>
		<equippedAngleOffset>-65</equippedAngleOffset>
	</ThingDef>
</Defs>

Defs / ThingDef / stuffCategories

<Defs>
	<ThingDef ParentName="BaseMeleeWeapon_Sharp_Quality">
		<stuffCategories>
			<li>Metallic</li>
			<li>Woody</li>
			<li>Fabric</li>
		</stuffCategories>
	</ThingDef>
</Defs>

Defs / ThingDef / graphicData

<Defs>
	<ThingDef ParentName="BaseMeleeWeapon_Sharp_Quality">
		<graphicData>
			<texPath>Things/Item/Equipment/WeaponMelee/Katana</texPath>
			<graphicClass>Graphic_Single</graphicClass>
			<drawSize>1.00</drawSize>
		</graphicData>
	</ThingDef>
</Defs>

Defs / ThingDef / recipeMaker

<Defs>
	<ThingDef ParentName="BaseMeleeWeapon_Sharp_Quality">
		<recipeMaker>
			<researchPrerequisite>LongBlades</researchPrerequisite>
			<skillRequirements>
				<Crafting>7</Crafting>
			</skillRequirements>
		</recipeMaker>
	</ThingDef>
</Defs>
<?xml version="1.0" encoding="utf-8" ?>
<Defs>

	<!-- ========================== Blank Armor Piece ========================== -->

  <ThingDef ParentName="ArmorMachineableBase">
    <defName>N007_Blank_Armor</defName>
    <label>Cool armor piece</label>
    <description>A piece of armor.</description>
	<techLevel>Spacer</techLevel> <!-- Spacer |  -->
    <recipeMaker>
		<researchPrerequisite>CompositeArmour</researchPrerequisite>
		<unfinishedThingDef>UnfinishedTechArmor</unfinishedThingDef>
		<skillRequirements>
			<Crafting>7</Crafting> <!-- 1 - 20 -->
		</skillRequirements>
    </recipeMaker>
    <graphicData>
		<texPath>Things/Pawn/Humanlike/Apparel/Osprey/Osprey</texPath>
		<graphicClass>Graphic_Single</graphicClass>
		<drawSize>1.00</drawSize>
    </graphicData>
    <thingCategories>
		<li>Apparel</li>
    </thingCategories>
    <statBases>
		<MaxHitPoints>280</MaxHitPoints>
		<WorkToMake>14000</WorkToMake>
		<Mass>12</Mass>
		<Flammability>0.6</Flammability>
		<StuffEffectMultiplierArmor>0.20</StuffEffectMultiplierArmor>
		<StuffEffectMultiplierInsulation_Cold>0.20</StuffEffectMultiplierInsulation_Cold>
		<StuffEffectMultiplierInsulation_Heat>0</StuffEffectMultiplierInsulation_Heat>
		<ArmorRating_Sharp>0.92</ArmorRating_Sharp>
		<ArmorRating_Blunt>0.40</ArmorRating_Blunt>
		<EquipDelay>7</EquipDelay>
    </statBases>
    <equippedStatOffsets>
		<CarryingCapacity>15</CarryingCapacity>
		<MoveSpeed>-0.12</MoveSpeed>
    </equippedStatOffsets>
    <costStuffCount>60</costStuffCount>
    <stuffCategories>
		<li>Fabric</li> <!-- Fabric |  -->
    </stuffCategories>
    <costList>
      <Steel>20</Steel>
      <Plasteel>40</Plasteel>
    </costList>
    <apparel>
      <bodyPartGroups>
        <li>Torso</li>
        <li>Neck</li>
        <li>Shoulders</li>
      </bodyPartGroups>
      <wornGraphicPath>Things/Pawn/Humanlike/Apparel/Osprey/Osprey</wornGraphicPath>
      <layers>
        <li>Middle</li>
        <li>Shell</li>
      </layers>
      <tags>
		<li>IndustrialMilitaryAdvanced</li>
      </tags>
      <defaultOutfitTags>
        <li>Soldier</li>
      </defaultOutfitTags>
    </apparel>
    <colorGenerator Class="ColorGenerator_Options">
      <options>
        <li>
          <weight>2</weight>
          <only>(0.5,0,0.04)</only>
        </li>
        <li>
          <weight>2</weight>
          <only>(0.98,0.99,0.99)</only>
        </li>
        <li>
          <weight>10</weight>
          <only>(0.88,0.78,0.66)</only>
        </li>
        <li>
          <weight>10</weight>
          <only>(0.46,0.58,0.46)</only>
        </li>
      </options>
    </colorGenerator>
  </ThingDef>

</Defs>