https://rimworldwiki.com/api.php?action=feedcontributions&user=Adaput163&feedformat=atomRimWorld Wiki - User contributions [en]2024-03-28T14:41:45ZUser contributionsMediaWiki 1.35.8https://rimworldwiki.com/index.php?title=Modding_Tutorials&diff=74694Modding Tutorials2020-09-06T02:56:48Z<p>Adaput163: </p>
<hr />
<div><!--Top Nav Box--><br />
{| align=center<br />
| {{Mods_Nav}}<br />
|}<br />
<hr><br />
<br />
This is the table of contents for the modding tutorial. Here, you'll learn step by step how to create mods of gradually increasing complexity.<br />
<br />
In light of little official documentation, most of the knowledge here was gained by experience, trial-and-error, decompiling and learning from the source. Keep in mind that RimWorld is a big game that underwent substantial code changes during its alphas. While most of this wiki was updated for 1.0, some information you find may be outdated. <br />
<br />
-----<br />
<br />
==What's a mod?==<br />
A mod is a folder containing data the game reads/loads. Mods can add, remove or alter the content of other mods (including the Core mod) in the broadest sense of the word. For more info, see also [[Modding]].<br />
<br />
==Introduction to modding==<br />
# [[Modding Tutorials/First Steps|First Steps and Some Links]]<br />
# [[Modding Tutorials/Essence| Essence of Modding]]<br />
# [[Modding Tutorials/Folder structure|Exploring the Folder Structure]]<br />
# [[Modding Tutorials/Mod folder structure|Mod Folder Structure]]<br />
#* [[Modding Tutorials/Mod folder structure#The About folder|About folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Defs folder|Defs folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Source and Assemblies folders|Assemblies folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Languages folder|Languages folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Textures and Sounds folders|Textures folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Textures and Sounds folders|Sounds folder]]<br />
#* [[Modding Tutorials/Mod folder structure#The Patches folder|Patches folder]]<br />
# [[Modding Tutorials/Recommended software|Recommended Software]]<br />
<br />
==General modding==<br />
<br />
* [[Modding Tutorials/Testing mods|Testing Mods]]<br />
** [[Modding Tutorials/Testing mods#Development mode|Development Mode]]<br />
* [[Modding Tutorials/Sounds|Adding and Testing Sounds]]<br />
* [[Modding Tutorials/Assets|Decompiling Texture/Sound Assets]]<br />
* [[Modding Tutorials/Compatibility|Compatibility]]<br />
* [[Modding_Tutorials/Distribution|Distribution]]</br><br />
<br />
==Must-knows==<br />
* [[Modding_Tutorials/Modifying defs|Modifying Defs]]<br />
* [[Modding_Tutorials/Troubleshooting|Troubleshooting mods]]<br />
<br />
==XML tutorials==<br />
<br />
# [[Modding Tutorials/XML file structure|XML File Structure]]<br />
# [[Modding Tutorials/XML Defs|Introduction to XML Defs]]<br />
#* [[Modding Tutorials/Compatibility with defs|XML Def Compatibility]]<br />
# In-depth XML Def tutorials<br />
#* [[Modding Tutorials/ThingDef|ThingDef explained]]<br />
#* [[Modding Tutorials/Weapons Guns|Weapons_Guns.xml explained]]. Slightly dated.<br />
# [[Modding Tutorials/PatchOperations|PatchOperations]], replace specific xml elements of core files while keeping the rest untampered. Uses xpath.<br />
<br />
<br />
[[zzobxhichbadsiohcgwedoihcedaoihcbeadiohvbfeaoihvbfhoieabvoihaebfdiobdaefihobdaehiofbadeoihfdaeihobfceaiohbfhioceabfdeaoihbfoihdeabfhiodesbfoihdesbfoihadboicdebfhiobdewofihdesbhiovdbewvhiobfewvhoifbewvoihbfewhivbfewoihvbffhibvwfeihovbwefoihbvoihdewbvhoifewbvoihfeabvihofewbvoihfdwbvihocdwbvihofebvohebdhiovbdweoihvbwefoihbvfwoihebffiheowbvfihewovbiheofwbvhiofewbvoiwbfeihovbfewbhivfebwoihvfeabhoivbfewihovbfwehiobvvfweohibffweihfvboihfewvbihowfebihofewvboihfewbfohifewbfoihfewbfphifewbvhpibfwevihpbpihefvbhiobfevhioabefvoihwefhivbowebvhifaebowfihefbvhewhkbfsbkshfbdwkhfbdeihfbidhebfiudebfidebfihdebfihdebhifdbsfihrebfkhdebfhkdebfhkrebfkhrebfhkebdfihfbdehivbdefibediufbedhkcbmhfssbjhfbjlhdbflihdewvbljhedwvbliuwreboihffepiugwvewfoihvbuwelifrf en.wikimedia.org]]<br />
<br />
==C# tutorials==<br />
# [[Modding_Tutorials/Setting up a solution|Setting up]]<br />
# [[Modding_Tutorials/Hello World|Hello World]]<br />
# [[Modding_Tutorials/Decompiling source code|Decompiling Source Code]]<br />
# [[Modding_Tutorials/Writing custom code|Writing Custom Code]]<br />
# [[Modding Tutorials/Linking XML and C#|Linking XML and C#]]<br />
# [[Modding_Tutorials/Harmony | Alter Code at Runtime with Harmony]] - this is a best practice for modifying game code, replacing C# code injection to reduce Mod Conflicts<br />
# The wonderful things you will want to do with C#<br />
#* [[Modding_Tutorials/Modifying classes|Adding fields and methods to classes]]<br />
# Useful things:<br />
#* [[Modding Tutorials/ModSettings|Mod settings]] - Add settings to your mod<br />
#* [[Modding Tutorials/DefModExtension|Def mod extensions]] - Add (custom) fields to Defs<br />
#* [[Modding Tutorials/Custom Comp Classes|Custom Comp Classes]] - A quick overview of what types of Comps there are, and what they're suited for.<br />
#** [[Modding_Tutorials/ThingComp|ThingComp]] - Learn all there is to know about ThingComps.<br />
#** [[Modding Tutorials/GameComponent|Components]] - GameComponents, WorldComponents, and MapComponents<br />
#* [[Modding_Tutorials/Def classes|Introduction to Def Classes]]<br />
#* [[Modding_Tutorials/Compatibility_with_DLLs|Using Harmony to optionally patch other mods for the sake of compatibility]]<br />
#* [[Modding Tutorials/TweakValue|TweakValues]] - Change values on the fly (handy for quick iteration!)<br />
#* [[Modding Tutorials/ExposeData|ExposeData]] - Save stuff<br />
#* [[Modding Tutorials/BigAssListOfUsefulClasses|The big ass list of useful classes]] - A non-exhaustive list of classes you'll use most<br />
#* [[Modding Tutorials/GrammarResolver|Grammar Resolver]] - PAWN_objective, PAWN_possessive? Find out what it all means here.<br />
#* [https://github.com/Mehni/ExampleJob/wiki ExampleJob] - Mehni's top to bottom breakdown of Jobs.<br />
<br />
==Art Tutorials==<br />
* [https://spdskatr.github.io/RWModdingResources/artstyle Artstyle] - Officially unofficial guide to RimWorld's Artstyle<br />
* [https://www.reddit.com/r/RimWorld/comments/5tn1pi/rimworldstyle_sprite_tutorials/ Ekksu's guide to creating RimWorld animals]<br />
* [https://steamcommunity.com/sharedfiles/filedetails/?id=1114369188 ChickenPlucker's guide to creating apparel]<br />
* [https://github.com/seraphile/rimshare/wiki/Colouring-in-Images Seraphile's guide to masks]<br />
<br />
<br/><br/><br />
==Examples==<br />
* [[Modding Tutorials/Assembly Modding Example|Assembly Modding]]<br />
* [[Plague Gun/Introduction|The Plague Gun]] based on the Plague Gun tutorial by Jecrell, updated for 1.0. {{LudeonThread|33219}}.<br />
# [[Plague Gun/Required Items|Required Items]]<br />
# [[Plague Gun/XML Stage|XML Stage]]<br />
# [[Plague Gun/Connecting XML and Csharp|Connecting XML and C#]]<br />
# [[Plague Gun/Csharp Assembly Setup|C# Assembly Setup]]<br />
# [[Plague Gun/Csharp Coding|C# Coding]]<br />
# [[Plague Gun/Localisation|Localisation]]<br />
<br />
===Dangerously Outdated===<br />
* https://rimworldwiki.com/wiki/Modding_Tutorials/Smelter<br />
* https://rimworldwiki.com/wiki/Modding_Tutorials/Items<br />
* https://rimworldwiki.com/wiki/Modding_Tutorials/Weapons<br />
<br />
==See also==<br />
* [https://github.com/roxxploxx/RimWorldModGuide/wiki Roxxploxx's set of modding tutorials]<br />
* [https://spdskatr.github.io/RWModdingResources/ RimWorld Modding Resources - A hub for guides, modders, practical tips]<br />
<br />
[[Category:Modding]]<br />
[[Category:Modding tutorials]]</div>Adaput163https://rimworldwiki.com/index.php?title=Corn&diff=74693Corn2020-09-06T02:53:41Z<p>Adaput163: </p>
<hr />
<div>{{Define|Raw Food<br />
| always haulable = true<br />
| def name = RawCorn<br />
| description = Raw corn.<br />
| draw gui overlay = true<br />
| graphic class = Graphic_Single<br />
| graphic path = Things/Item/Resource/PlantFoodRaw/Corn<br />
| label = corn<br />
| parent name = RawFoodBase<br />
| path cost = 15<br />
| resource readout priority = Middle<br />
| rotatable = false<br />
| selectable = true<br />
| social properness matters = true<br />
| sound drop = Food_Drop<br />
| sound interact = Food_Drop<br />
| stack limit = 75<br />
| thing class = ThingWithComps<br />
| ticker type = Rare<br />
| eat effect = EatVegetarian<br />
| nutrition = 0.05<br />
| sound eat = RawVegetable_Eat<br />
| taste = Raw<br />
| preferability = Raw<br />
| use hit points = true<br />
| deterioration rate base = 10<br />
| days to rot = 60<br />
| flammability base = 1.0<br />
| market value base = 1.1<br />
| max hit points base = 100<br />
|mass = 0.03<br />
}}<br />
'''Corn''' is a [[Plants#Domesticated Plants|domesticated plant]], a single harvest yields 22 units per plant at 100% growth. Requires 19.52 full days at optimal light and temperature range to reach maturity.<br />
{{nav|Food|wide}}<br />
<br />
<br />
<br />
<br />
[[Special:Run query <Mojopahit>]]</div>Adaput163