Modding Tutorials - RimWorld Wiki (2024)

BasicsMenusGameCreationGameplayPawnsPlantsResourcesGearMods
ModdingModding Tutorials

This is the hub page for tutorials, guides, and reference materials for creating mods for RimWorld. If you are looking for instructions on how to use RimWorld, please check out the general Modding hub.

As RimWorld does not have a formal modding API, nearly all of the information here has been gathered and maintained by the modding community.

NEW: RimWorld 1.5 Mod_Updates - A work-in-progress list of changes datamined by the modding community in the current unstable version of RimWorld 1.5. THERE MAY BE ANOMALY SPOILERS, YOU HAVE BEEN WARNED.

Contents

  • 1 About RimWorld
    • 1.1 XML Tutorials
    • 1.2 C# Guides
    • 1.3 Slightly Outdated
    • 1.4 Uploading to Steam Workshop
  • 2 Outdated / Under Review
    • 2.1 XML tutorials
    • 2.2 C# tutorials
    • 2.3 Art Tutorials
    • 2.4 Under Construction
    • 2.5 Dangerously Outdated
  • 3 External Links

About RimWorld[edit]

RimWorld is a multi-platform game written on Unity 2019.4. However, the Unity Editor is not used for creating mods unless you are creating new shaders.

  • Recommended Software - Editors and other useful software for mod development
  • Mod Folder Structure - Explore the basic folder structure of a mod
    • About.xml - About.xml identifies and describes your mod to RimWorld so that it can be loaded properly
  • Defs - XML Definitions are used to define and configure content in a way that does not require compiling code
    • MayRequire - MayRequire and MayRequireAnyOf are used to conditionally load Defs and list entries based on whether a DLC or other mod is loaded
  • Localization - Define text strings used for translations and word lists used in name and text generation
  • PatchOperations - PatchOperations are used to modify XML Defs without overwriting them directly
  • Sounds - (Needs Rewriting) Adding sound files for mods
  • Textures - How to create and add textures to mods

XML Tutorials[edit]

The following are step-by-step tutorials for creating basic content mods.

Basic Tutorials:

  • Basic Melee Weapon - How to create a basic melee weapon with a texture mask
  • Basic Ranged Weapon - How to create a basic ranged weapon with custom sound effects
  • Basic Plant - How to create a custom plant with both a cultivated and wild variant
  • Custom Animal (Upcoming)
  • Simple Building (Upcoming)
  • Custom Workbench (Upcoming)
  • Custom Drug (Upcoming)

Advanced Tutorials:

  • Custom Faction (Upcoming)
  • Custom Culture (Upcoming)
  • Custom Trader Type (Upcoming)

C# Guides[edit]

C# is used to create and define custom game behaviors

  • Decompiling Source Code - How to set up and use a decompiler to read vanilla game code
  • Setting up a Solution - How to set up a solution for compiling a custom mod assembly
  • Application Startup - Describes the application startup process and the order in which game data is loaded
  • Custom Consumable (Upcoming)
  • Custom Overlays (Upcoming)

Slightly Outdated[edit]

  • Plague Gun - This tutorial was created for RimWorld 1.0 but updated for 1.4. While the exact content is obsolete as you can now accomplish the same result with purely vanilla XML, it is still useful as a crash course for end-to-end mod creation and is here until newer tutorials can replace it.

Uploading to Steam Workshop[edit]

  • You can upload your mod to Steam Workshop by enabling Development Mode from your game Options and then using the Upload option under the Advanced button in the vanilla mod manager.
  • Note that in order to upload to Steam Workshop, you must own the game on Steam Workshop. Owning RimWorld on GOG or Epic will not work.
  • Your Preview.png should be a 640x360 or 1280x720 PNG and must be under 1MB. If it is too large, then your upload will be rejected with Error: Limit Exceeded
  • If you get a OnItemSubmitted Fail error, this usually means that Steam Workshop is having some technical issues at the moment. If it keeps occurring, then the only thing to do is to wait a few hours for it to clear up.
  • Steam mod descriptions don't use markdown, they use a variant of BBCode. Please check out the Steam text formatting guide.

Note: All of the above tutorials have been cleaned up and reviewed by the #mod-development team on the RimWorld Discord in cooperation with RimWorld Wiki staff editors. Please let us know before creating, adding, or making any major edits to the vetted tutorials and guides section!

Outdated / Under Review[edit]

The following tutorials are either out of date or in need of a rewrite. The information in them might be useful but may not be up to standard; please be aware of any potential inaccuracies until they can be addressed.

  • First Steps and Some Links
  • Essence of Modding
  • Modding Troubleshooting Tips and Guides
  • Testing Mods
    • Development Mode
  • Adding and Testing Sounds
  • Decompiling Texture/Sound Assets
  • Compatibility
  • Distribution
  • Modifying Defs
  • Troubleshooting mods

(Redundant, need to be reviewed and consolidated or removed)

  • Getting Started With XML
  • Adding a New Weapon, Trait and Research to the game
  • Making Patches using Xml

XML tutorials[edit]

  • XML File Structure
  • Introduction to XML Defs
    • XML Def Compatibility
    • ThingDef explained
    • Weapons_Guns.xml explained. Slightly dated.

C# tutorials[edit]

  • Hello World
  • Writing Custom Code
  • Linking XML and C#
  • Alter Code at Runtime with Harmony - this is a best practice for modifying game code, replacing C# code injection to reduce Mod Conflicts
  • Adding fields and methods to classes
  • Mod settings - Add settings to your mod
  • Def mod extensions - Add (custom) fields to Defs
  • Custom Comp Classes - A quick overview of what types of Comps there are, and what they're suited for.
  • ThingComp - Learn all there is to know about ThingComps.
  • Components - GameComponents, WorldComponents, and MapComponents
  • Introduction to Def Classes
  • Using Harmony to optionally patch other mods for the sake of compatibility
  • TweakValues - Change values on the fly (handy for quick iteration!)
  • ExposeData - Save stuff
  • The big ass list of useful classes - A non-exhaustive list of classes you'll use most
  • Grammar Resolver - PAWN_objective, PAWN_possessive? Find out what it all means here.
  • ExampleJob - Mehni's top to bottom breakdown of Jobs.
  • Config Errors - Provide configuration issues to the user on startup.
  • Debug Actions - Call methods from the debug menu
  • Getting started with RimWorld modding on Linux

Art Tutorials[edit]

Under Construction[edit]

These are currently unfinished and need to be cleaned up or removed

  • Modding Tutorials/Quests
  • Modding Tutorials/Troubleshooting/Finding Exceptions

Dangerously Outdated[edit]

  • RimWorld 1.3: XML Mod Creation
  • Assembly Modding
  • The Plague Gun tutorial originally by Jecrell, updated to 1.1+.
  • Modding Tutorials/Xenotype template originally by Ryflamer
  • Modding Tutorials/Smelter
  • Modding Tutorials/Items
  • Modding Tutorials/Furniture

External Links[edit]

Modding Tutorials - RimWorld Wiki (2024)

References

Top Articles
Oxtail and Butter Beans Recipe
Brown Butter Chocolate Chip Cookies  Recipe
Tony's Delicatessen & Fresh Meats
Hardheid van drinkwater - Waterbedrijf Groningen
What to see and do in Spokane, Washington
Events - R Consortium
When Does Dtlr Close
24 Hour Lock Up Knoxville Tn
Everything We Know About Wenwen Han and Her Rise To Stardom
Married At First Sight Novel Serenity And Zachary Chapter 950
Find The Eagle Hunter High To The East
Oak Ridge Multibillion Dollar Nuclear Project: Largest Investment in Tennessee History
Indicafans
Faotp Meaning In Text
Craigslist Louisville Com
Dabs Utah State Liquor Store #09 - Murray
Bank Of America.aomc
Ratchet & Clank Rift Apart: Trofea - lista | GRYOnline.pl
Myworld Interactive American History Pdf
Friend Offers To Pay For Friend’s B-Day Dinner, Refuses When They See Where He Chose
Minneapolis, MN Real Estate & Homes for Sale | realtor.com®
Https //Pay.instamed.com/Tricore
Oxycontin Plush Real
Aaa Saugus Ma Appointment
Espn College Basketball Scores
Only Murders In The Building Wiki
Black Boobs Oiled
Restored Republic June 16 2023
Culver's Flavor Of The Day Taylor Dr
Sams Gurnee Gas Price
Used Fuel Tanks For Sale Craigslist
Alexandria Van Starrenburg
Liveops Nation Okta Com Sign In
Craigslist Cars And Trucks By Owner Seattle
Stanley Steemer Medford Oregon
Indiefoxx's biography: why has the streamer been banned so often?
Waive Upgrade Fee
Osceola County Addresses Growth with Updated Mobility Fees
Stellaris How To Get Subjugation Casus Belli
2010 Ford F-350 Super Duty XLT for sale - Wadena, MN - craigslist
Entegra Forum
How to paint a brick fireplace (the right way)
Opsb Pay Dates
Where Is Item Number On Stanley Cup
The Little Mermaid (2023) | Rotten Tomatoes
Benson Downs Resident Portal
Destep: 10 tips voor de scherpste destep-analyse ooit!
Christina Cox Measurements
Carros Jeep Wrangler Tachira | MercadoLibre 📦
Luminous Mysteries - Rosary Meditations
How To Spend a Day in Port Angeles (15 Things to Do!)
Latest Posts
Article information

Author: Mr. See Jast

Last Updated:

Views: 5564

Rating: 4.4 / 5 (55 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Mr. See Jast

Birthday: 1999-07-30

Address: 8409 Megan Mountain, New Mathew, MT 44997-8193

Phone: +5023589614038

Job: Chief Executive

Hobby: Leather crafting, Flag Football, Candle making, Flying, Poi, Gunsmithing, Swimming

Introduction: My name is Mr. See Jast, I am a open, jolly, gorgeous, courageous, inexpensive, friendly, homely person who loves writing and wants to share my knowledge and understanding with you.