Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Trunken

#1


This is a Guide for NEW players who want to hop into a different (modded) RimWorld



Mods are widely spreaded and diving into it, opens up a gigantic and often confusing new experience for people, who attempt to find their way through all the given choices.

It might be overwhelming and will throw up endless new questions laying on your mind. The following will try to help you and i wish someone was telling me the same words, before my long journey of attempts and failures began.

So what are the basics? What makes your next RimWorld a better (or maybe even tougher) place to live? How can we guarantee compatibility on our addon selection? What should we foucs on and how do we make all this work?

Basics:

Mods can be either directly downloaded and manually installed or integrated through SteamWorkshop.

Directory:
...\RimWorldXXXYYYZZ\Mods\Modname (DRM-Free)
X:\Steam\steamapps\common\RimWorld\Mods\Modname (steam)
SteamWorkshop:
https://steamcommunity.com/app/294100/workshop/

All mods are made by normal people like you and me. Some are XML gods, someothers masterminds in C# or just great graphic artists. Mods are often made by more than one single mans influence. People cooperate with each other, to bring their stuff to the next level.

This means also that some arent as perfect or are still work in progress. Modders offer us the chance to participate on their concepts and designs. They do this for free and hope people love it as much as they do, after finishing the long work to a shareable version.



There are hundreds of mods out there and they often do similiar things like adding items or buildings to the game. So how do we guarantee stability as a user?

Tips:

       
  • 1. Lets start small: Read the mods description to the end.
  • 2. Search for compatibility or mentioned problems with already downloaded mods, especially when they do similiar things with the game.
For a random example: Rah's Bionics and Surgery Expansion is based on Expanded Prosthetics and Organ Engineering, so both mods would definately disturb each other. But its written in the description, so luckily we can find out, when we have concerns.

       
  • 3. Categorize your type of mods to avoid problems and fix errors.
  • 4. Add mods only one by one or in small groups.
Enable Developer Mode at the option, so the log window open on warnings/error not only on critical ones. Activate mod's at small batches of 5-10 mods at once. Watch the log window after it if an error (red text) show up, identify the mod (deactivate mod's until the error don't show up). If you installed that mod manualy, check if you got the right/latest version and if you installed it right. Any error you got at Rimworld startup, will increase the chance that you can have a critical error later that prevent you from playing or loading.**Added by: Canute
  • 5. Add a Mod Manager when you loose the overview.
You have five mods for different vegetation? Cool! But maybe two of them change the same definition ingame or try to apply a new texture on the exact same thing. Organizing will encircle the problem for you, until you can isolate the mod which causes errors, especially if your not familiar with debugging.

XML Error: What the hell is that red text?!


       
  • 6. Try to load mods with heavy changes first. Then add smaller content and patches.
  • 7. Reduce multiple type of mods for one and the same thing. This will often alone ensure a clean and stable game for you.
  • 8. Report if you have a problem with a mod and you should'nt. This way you help to improve it. Make sure the problem lays not on your end in all conscience though.
  • 9. Remember: Filesize can indicate how big the changes are made by your chosen mod. This might not be entirely correct though! Because even a small mod can package a bunch of screenshots and preview pictures in addition, which adds up fast, but has no effect on your running game.
You should think about your load order. What each mod does specificly. So you can rearrange it correctly.

Core > Libraries > Framework >  Heavy Overhaul > Settings & Changes > Buildings & Items > Patches (Light)

Don't forget some mods want to overwrite features. Patching is a way to do that.

Tools:

RWMS RimWorld Mod Sorter (Autosorting, growing Database) [Requires Python]
Better Loading Mod (Overview over Loading Times, can be detailed on logging)
#2
Dear Forum,
I was modding yesterday, and changed files while the game was running. The problem occured after i changed a manifest and rearranged mods in ModManager... i made a backup from a mod ingame, went to desktop and took the directory to some other place. Plan was to use the online version. Mod was shown as active tho in ModManager, so i tried to restart the game...

Well. RimWorld spits out the same error for me now on every startup of the game. Even when i reinstall it, delete EVERY single file relating to it (AppData, Steam), i still get this error.

Exception has been thrown by the target of an invocation.
RimWorld 1.0.2231 rev1144
Verse.Log:Message(String, Boolean)
RimWorld.VersionControl:LogVersionNumber()
Verse.Root:CheckGlobalInit()
Verse.Root:Start()
Verse.Root_Entry:Start()

Exception loading from System.Xml.XmlElement: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.MissingMethodException: Method not found: 'Default constructor not found...ctor() of System.String'.
  at System.Activator.CreateInstance (System.Type type, Boolean nonPublic) [0x00000] in <filename unknown>:0
  at System.Activator.CreateInstance (System.Type type) [0x00000] in <filename unknown>:0
  at Verse.DirectXmlToObject.ObjectFromXml[String] (System.Xml.XmlNode xmlRoot, Boolean doPostLoad) [0x00000] in <filename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0
  at Verse.DirectXmlToObject.ObjectFromXml[ModMetaDataInternal] (System.Xml.XmlNode xmlRoot, Boolean doPostLoad) [0x00000] in <filename unknown>:0
Verse.Log:Error(String, Boolean)
Verse.DirectXmlToObject:ObjectFromXml(XmlNode, Boolean)
Verse.DirectXmlLoader:ItemFromXmlFile(String, Boolean)
Verse.ModMetaData:Init()
Verse.ModMetaData:.ctor(String)
Verse.ModLister:RebuildModList()
Verse.ModLister:.cctor()
Verse.<>c__Iterator0:MoveNext()
Verse.<>c__Iterator0:MoveNext()
System.Collections.Generic.List`1:AddEnumerable(IEnumerable`1)
System.Collections.Generic.List`1:.ctor(IEnumerable`1)
System.Linq.Enumerable:ToList(IEnumerable`1)
Verse.LoadedModManager:InitializeMods()
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


I deleted -EVERYTHING-, how is that even possible?

Did i overlook files somewhere? Really hope someone can help me, im fiddling around with this problem now for hours...

Edit: I had an error also, which stated steam wasnt running, when i started RimWorld again. Steam was clearly running tho. Some restarts fixed that

Edit2: Shortly before all of that i made a collection too for mods on steamWorkshop, while changing some minor things like organizing -> subscribing, unsubscribing something in my list ingame, then favorizing, rating, rearranging and stuff on the website again. Game was running in the background all the time. Did the SteamWorkshop changes interfere somehow? Normally this was never a problem for me, doing all this while the game is active. :'(
#3
Hey Forum 8)
i'm using patch files to change the labels from traits. This works.
Now here comes my problem, for some reason the description part changes too from german to english, even though i dont touch it at all :o

Whats going on? Is there any possible reason for this? I dont know to proceed and need your help guys

here is the code:

<Patch>
  <Operation Class="PatchOperationReplace">
    <xpath>/Defs/TraitDef[defName="TRAITNAME"]/degreeDatas/li/label</xpath>
    <value>
        <label>TEXT</label>
    </value>
  </Operation>
</Patch>

EDIT:

And why is this not working? (Example for Slowpoke)

  <Operation Class="PatchOperationReplace">
    <xpath>/Defs/TraitDef[defName="SpeedOffset"]/degreeDatas/li[label="slowpoke"]/description</xpath>
    <value>
    <description>TEXTTEXTTEXT</description>
    </value>
  </Operation>

Where is my mistake?

Error Log:

[New_Mod] Patch operation Verse.PatchOperationReplace(/Defs/TraitDef[defName="SpeedOffset"]/degreeDatas/li[label="slowpoke"]/description) failed
file: C:\Steam\steamapps\common\RimWorld\Mods\New_Mod\Patches\Core_SpectrumPatch.xml
Verse.Log:Error(String, Boolean)
Verse.PatchOperation:Complete(String)
Verse.LoadedModManager:ClearCachedPatches()

Is sombody out there who can help?