RimWorld 1.6 Mod Updates
NOTICE: This is a repository of information for mod developers updating their mods to RimWorld 1.6. THERE MAY BE ODYSSEY DLC SPOILERS HERE.
For questions and clarifications, please come visit us at the #mod-development channel on the RimWorld Discord server.
General Tips[edit]
If you are updating a mod between RimWorld versions for the first time:
- Update your supportedVersions in your About.xml
- Consider using LoadFolders to freeze your previous version content.
- Try to recompile your assemblies. Address any issues that come up.
- Try to load your mod. Work the error list top to bottom.
- Check your mod functionality. This is a great time to create a functionality checklist for future updates if you haven't made one already!
- Check back after further patches. Updates and additional content may be released in post-release patches for months to come, don't assume that mods never break once updated!
Official Documentation[edit]
The following docs have been provided directly by Ludeon for players and mod authors:
1.6 Change Log: Official Google Doc - describes all base game changes in RimWorld 1.6.
1.6 Modder Primer: Official Google Doc - technical document intended for modders.
RimWorld 1.6 Base Game Changes[edit]
Designators[edit]
- As part of the new vanilla designator shapes system, the virtual DraggableDimensions property has been replaced with DrawStyleCategory, which returns a DrawStyleCategoryDef. You can use one of the several vanilla presets or create your own Def to determine what kinds of shapes can be drawn with your designator.
Buildings[edit]
<placingDraggableDimensions>
has been changed to<drawStyleCategory>
to utilize the new vanilla designator shapes system. This is a DrawStyleCategoryDef, and you can use one of the several vanilla presets or create your own if that makes more sense. The vanilla presets are: Default2D, Fill2D, Default1D, FilledRectangle, Walls, Conduits, Defenses, Zones, Areas, Orders, Mine, Paint, Plans, RemovePlans, RemoveZones, Foundations, Floors, Cancel, and Plants.<soundAmbient>
has been removed in 1.6 in favor of a new ThingComp. The following is from the Toxifier Generator:
<li Class="CompProperties_AmbientSound"> <sound>Toxifier_Working</sound> <disabledOnUnpowered>true</disabledOnUnpowered> </li>
Pawns[edit]
<wildness>
is no longer a field on RaceProperties, but is now a StatDef that goes in a race's<statBases>
. Note that as a StatDef, it is now capitalized as well (<Wildness>
).<forceGender>
is a new field in RaceProperties. Unsure why this exists in addition to the existing<fixedGender>
field on PawnKindDef.
Damage[edit]
- DamageDefs now have an
<ignoreShields>
flag that causes them to ignore shield belts. This does not allow projectiles using them to ignore projectile interceptors such as high or low shields. Shield belts now check for both<ignoreShields>
and<isRanged>
.
Hediffs[edit]
<causesNeed>
has been removed. For drugs specifically, you should now use<chemicalNeed>
on the HediffDef root, or for non-drug needs you can use the<enablesNeeds>
list in HediffStage.<disablesNeeds>
has been moved to HediffStage as well.
Terrains[edit]
<holdSnow>
has been renamed to<holdSnowOrSand>
.
Plants[edit]
<hideAtSnowDepth>
has been renamed to<hideAtSnowOrSandDepth>
.
Scenarios[edit]
- There is a new
ScenarioBase
abstract base for ScenarioDefs. You should inherit from this in order to inherit some new fields that deal with the map layering system; omitting them will cause errors on load.
Interactions[edit]
InteractionUtility
has been renamedSocialInteractionUtility
. There is still a class calledInteractionUtility
that appears to be for ordering pawns to interact with objects.
Misc[edit]
- ActiveDropPodInfo has been renamed to ActiveTransporterInfo - potentially used by Odyssey shuttles now?
- The targetParams
<canTargetMutants>
has been renamed to<canTargetSubhumans>
.
Visual Studio and Burst[edit]
If you've decompiled the dll, exported all code to .cs files, and opened that in Visual Studio and are getting constant crashes and hangs:
Edit the file Properties/AssemblyInfo.cs and delete all the lines with "`BurstCompiler`". It's not like you're re-compiling it, so these are not needed anyway.
Odyssey DLC Compatibility[edit]
The following features appear to be DLC-locked. Note that this information has been gathered via datamining and may not reflect the final state of the game at release, nor is it necessarily comprehensive:
- Gravships
- Transport Shuttles
- Landmarks, Tile Mutators, and several new GenSteps
- Space, Asteroid Quests, Oxygen, Vacuum
- Aggressive Habitat Animals (needs clarification)
- Coastal Animals (needs clarification)
- Fishing
- Mixed Biome Maps
- Extended animal capabilities: Foraging, Targeted Attack, Sentience
- New Weather: Droughts, Frozen Water, Floods, Sandstorms
- Plant Cultivation (needs clarification)
- New Questgivers: Traders, Beggars, Books, Orbital Scanners (?)
- Substructure (needs clarification)
- New Precepts: Fishing, Space, Colony Moving