Skip to content

In Game Updates

Neronix17 edited this page Sep 29, 2023 · 12 revisions

Some of you may have already seen many of my mods make use of the update listing on the in-game main menu screen, off to the left in an unintrusive popup. It's all just a very simple def. I'll show an edited one from Outer Rim - Core as an example.

<TabulaRasa.UpdateDef>
        <!-- The defName, like with any other def in the game, must be unique.
             Personally I like to just use the mod name and the date as the chances 
             of something else conflicting with that are basically nil.  -->
	<defName>OuterRim_Core_26032023</defName>
        <!-- Speaking of the date, this is how it's ordered in the UI, and how it knows to hide old updates (3 months+), 
             so stick to Year/Month/Day if you want to be consistent for everyone. 
             This isn't even the format my country uses so I'm not just arbitrarily forcing 'mine'. -->
	<date>2023/03/26</date>
        <!-- Banner image is completely optional, the size I found looked best was 500x40
             for a simple name banner. -->
	<banner>UpdateInfo/O21OuterRim</banner>
        <!-- Content is done as a list, so you can have multiple headers with sections of 
               text following and even an image per section too, they're rendered as header, 
               then text, then image regardless so if you want to do it in a different 
               order you would need to do separate list items with each part. -->
	<contentList>
	     <li>
	          <header>Additions:</header>
	          <text>Blah blah blah whatever text you want here</text>
	          <image>Path/To/Image/Like/Any/Other/Texture</image>
	     </li>
	</contentList>
        <!-- This list of links will appear as icons with the labels as tooltips in the top 
               right of your update content window. Very straightforward, just opens the browser. -->
        <links>
	     <li>
	          <linkLabel>Steam Workshop</linkLabel>
	          <linkUrl>https://steamcommunity.com/workshop/filedetails/?id=2919227155</linkUrl>
	          <linkTex>TabulaRasa/UI/Steam</linkTex> 
                  <!-- Tabula Rasa has included icons at this path, for 'Steam' and 'GitHub', 
                  if you don't list a texture it'll use a default hyperlink icon. -->
	     </li>
	</links>
</TabulaRasa.UpdateDef>

Don't worry about how much is in an update, if it overflows the box provided, it'll add a scrollbar. You don't need to have Tabula Rasa set as a hard dependency either, you can make it entirely optional by just using a LoadFolders.xml file (see the RimWorld wiki) and having a folder loaded with the def specifically if Tabula Rasa is found.

Clone this wiki locally