RimWorld

RimWorld

Expanded Materials - Metals (old version)
McLenwe 23 Jun, 2021 @ 12:14pm
Additional patches for VFE Mechanoids
Additional Patches for VFE Mechanoid Factory buildings. Mainly to automate alloy production. While I tried to stay true to the original smelter recipes, I will not guarantee that all patches are balanced. If someone is wondering about the haygrass in the recipes, for some reasons all inputs of the factories have to be filled in the recipes or the game will throw an error. So I used Hay as dummy-input. (Hay is actually not needed ingame!)

https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2329011599&searchtext=vanilla+faction+expanded

<Patch>

<!-- Expanded Materials - Metals & VFE Mechanoids -->

<!-- Ressource Automation -->
<Operation Class="PatchOperationFindMod">
<mods>
<li>Expanded Materials - Metals</li>
<li>Vanilla Factions Expanded - Mechanoids</li>
</mods>
<match Class="PatchOperationSequence">
<success>Always</success>
<operations>

<!-- Rename Steel extractor to Metal extractor -->
<li Class="PatchOperationReplace">
<xpath>/Defs/ThingDef [defName = "VFEM_ElectronicsFabricationFactory_SteelExtractor"]/label</xpath>
<value>
<label>Metal extractor</label>
</value>
</li>

<!-- Rename Plasteel forge to Alloy forge -->
<li Class="PatchOperationReplace">
<xpath>/Defs/ThingDef [defName = "VFEM_MasonryAndMetallicsFactory_PlasteelForge"]/label</xpath>
<value>
<label>Alloy forge</label>
</value>
</li>


<!-- Bronze Automation -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoAlloyBronze</defName>
<building>VFEM_MasonryAndMetallicsFactory_PlasteelForge</building>
<items>
<li>VMEu_Tin</li>
</items>
<secondItems>
<li>VMEu_Copper</li>
</secondItems>
<thirdItems>
<li>Hay</li>
</thirdItems>
<amount>
<li>170</li>
<li>150</li>
<li>0</li>
</amount>
<result>VMEu_Bronze</result>
<yield>160</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.2</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- Steel Automation -->

<!-- with Coal -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoAlloySteelwithCoal</defName>
<building>VFEM_MasonryAndMetallicsFactory_PlasteelForge</building>
<items>
<li>VMEu_Iron</li>
</items>
<secondItems>
<li>VMEu_Coal</li>
</secondItems>
<thirdItems>
<li>Hay</li>
</thirdItems>
<amount>
<li>65</li>
<li>30</li>
<li>0</li>
</amount>
<result>Steel</result>
<yield>75</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.2</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- with Charcoal -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoAlloySteelwithCharCoal</defName>
<building>VFEM_MasonryAndMetallicsFactory_PlasteelForge</building>
<items>
<li>VMEu_Iron</li>
</items>
<secondItems>
<li>VMEu_Charcoal</li>
</secondItems>
<thirdItems>
<li>Hay</li>
</thirdItems>
<amount>
<li>65</li>
<li>50</li>
<li>0</li>
</amount>
<result>Steel</result>
<yield>75</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.2</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- StainlessSteel Automation -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoAlloyStainlessSteel</defName>
<building>VFEM_MasonryAndMetallicsFactory_PlasteelForge</building>
<items>
<li>Steel</li>
</items>
<secondItems>
<li>VMEu_Chromium</li>
</secondItems>
<thirdItems>
<li>VMEu_Tungsten</li>
</thirdItems>
<amount>
<li>70</li>
<li>10</li>
<li>10</li>
</amount>
<result>VMEu_StainlessSteel</result>
<yield>75</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.2</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- Concrete Automation -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoAlloyConcrete</defName>
<building>VFEM_MasonryAndMetallicsFactory_PlasteelForge</building>
<items>
<li>VMEu_RockPowder</li>
</items>
<secondItems>
<li>VMEu_Iron</li>
</secondItems>
<thirdItems>
<li>Hay</li>
</thirdItems>
<amount>
<li>75</li>
<li>30</li>
<li>0</li>
</amount>
<result>VMEu_Concrete</result>
<yield>100</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.1</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- RockPowder Automation -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>VFEM_MasonryAndMetallicsFactory_MasonrySaw_RockPowder</defName>
<building>VFEM_MasonryAndMetallicsFactory_MasonrySaw</building>
<items>
<li>StoneChunks</li>
</items>
<amount>
<li>1</li>
</amount>
<result>VMEu_RockPowder</result>
<yield>75</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<isCategoryRecipe>true</isCategoryRecipe>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.1</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

<!-- Charcoal Automation -->
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>EMMAutoCharCoal</defName>
<building>VFEM_ProvisionsPackagingFactory_ConveyorOven</building>
<items>
<li>WoodLog</li>
</items>
<secondItems>
<li>Hay</li>
</secondItems>
<amount>
<li>150</li>
<li>0</li>
</amount>
<result>VMEu_Charcoal</result>
<yield>150</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.1</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>

</operations>
</match>
</Operation>
</Patch>

If you want to automate the whole chain for stainless steel and plasteel, you will need additional extractor recipes. I made one for Tungsten as an example. (You have to balance them yourself)


<Patch>
<!--Tungsten Extraction-->

<Operation Class="PatchOperationFindMod">
<mods>
<li>Expanded Materials - Metals</li>
<li>Vanilla Factions Expanded - Mechanoids</li>
</mods>
<match Class="PatchOperationSequence">
<success>Always</success>
<operations>
<li Class="PatchOperationAdd">
<xpath>/Defs</xpath>
<value>
<ItemProcessor.CombinationDef>
<defName>VFEM_ElectronicsFabricationFactory_SteelExtractor_ChunksRecipe_Tungsten</defName>
<building>VFEM_ElectronicsFabricationFactory_SteelExtractor</building>
<items>
<li>StoneChunks</li>
</items>
<amount>
<li>1</li>
</amount>
<result>VMEu_Tungsten</result>
<yield>7</yield>
<outputLimitControlled>true</outputLimitControlled>
<maxTotalOutput>300</maxTotalOutput>
<isCategoryRecipe>true</isCategoryRecipe>
<useQualityIncreasing>false</useQualityIncreasing>
<singleTimeIfNotQualityIncreasing>0.1</singleTimeIfNotQualityIncreasing>
</ItemProcessor.CombinationDef>
</value>
</li>
</operations>
</match>
</Operation>
</Patch>
< >
Showing 1-1 of 1 comments
Argón  [developer] 28 Jun, 2021 @ 7:43am 
Nice patches, though I thank you for giving me the idea of adding hay and make it cost 0 in a recipe to get rid of one slot, I was struggling a lot to patch some recipes because I had one or two slots more than I needed, so thank u for the idea. Hopefully, I'll implement an automatic alloy facility someday, my idea is to daw it myself and add a brand new facility, so it may take some time, this mod was one of the hardest ones to patch as they are very limited to the vanilla game and the defs aren't flexible enough either.
< >
Showing 1-1 of 1 comments
Per page: 1530 50