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

Messages - Vakari

#1
Ideas / Medieval DLC Request, including Children, Please
February 18, 2023, 01:23:04 PM
I would love a Medieval DLC-no spacer tech, no industrial tech, no escape from the planet, etc.  Just a medieval world with medieval features.  The goal is colony longevity (for example, my custom scenario is to build a tavern and eventually a town around it.)  I have a giant playlist of mods to get me through this, and it works, but to have a concise and formally Medieval-style DLC would be amazing. 


Secondly, I'd love the ability to have children, either naturally or through adoption, with this DLC.   As I only play RimWorld with Medieval tech now (because it is much more relaxing to me this way), I won't install Biotech.  But, it would definitely be welcome to have the ability to have and raise children in an ongoing colony.  And adding the ability to adopt children should be allowed in any regard, any playstyle.

Thank you!

#2
Hi.  I got it to work!!  I had to put the patch in both the 1.1 and 1.2 folders, but they now have beauty!  Thank you, this is great progress!

I still want to figure out how to make these sculptures/viewable art, but this is really great.  I can't thank you enough!

For the record, here is my completed XML (so far, beauty only):

<?xml version="1.0" encoding="utf-8" ?>
<Patch>
<Operation Class="PatchOperationFindMod">
      <mods>
         <li>Alpha Biomes</li>
      </mods>

      <match Class="PatchOperationSequence">
         <operations>
         
         <li Class="PatchOperationAdd">
               <xpath>/Defs/ThingDef[defName="AB_AncientGallatrossSkull"]/statBases</xpath>
               <value>
               <Beauty>50</Beauty>
               </value>
            </li>

         <li Class="PatchOperationAdd">
               <xpath>/Defs/ThingDef[defName="AB_HugeGallatrossSkeleton"]/statBases</xpath>
               <value>
               <Beauty>100</Beauty>
               </value>
            </li>
         
      </operations>
      </match>
   </Operation>
</Patch>
#3
Hi, Kopp

Thank you for your help.  Unfortunately, I still don't see a Beauty stat.  I have to think it is because these are related to Buildings.  Something about them being counted as walls.

Thanks for the help, anyway.  I appreciate it.
#4
Thanks for the suggestion, but it does not work (no Beauty gets added).  I am noticing it is treated as a wall, but smoothed walls have beauty, so I would hope it would still work.

If not, maybe I need to just add a new art type and use the graphic?  I'm really out of ideas at this point.  All I wanted was to make this viewable art, like sculptures.  I swear, it sounds simple, but I'm out of ideas.
#5
Hi,

So, I've switched to just adding the beauty for now.  I want to be sure I'm even updating.  But it is not working.  (No Beauty modifier gets added.)  Below is my latest attempt.  Any help is appreciated.

<?xml version="1.0" encoding="utf-8" ?>

<Patch>

    <Operation Class="PatchOperationFindMod">
    <mods>
        <li>Alpha Biomes</li>
    </mods>
    <match Class="PatchOperationSequence">
        <success>Always</success>
   
        <operations>
               
          <li Class="PatchOperationAdd">
                <xpath>/Defs/ThingDef[defName="AB_GallatrossBones"]/statBases/Beauty/text()</xpath>
                <value>50</value>
            </li>
         <li Class="PatchOperationAdd">
                <xpath>/Defs/ThingDef[defName="AB_AncientGallatrossSkull"]/statBases/Beauty/text()</xpath>
                <value>75</value>
            </li>
         <li Class="PatchOperationAdd">
                <xpath>/Defs/ThingDef[defName="AB_HugeGallatrossSkeleton"]/statBases/Beauty/text()</xpath>
                <value>125</value>
            </li>
         
        </operations>
    </match>
    </Operation>
</Patch>
#6
I already did that. I can't get it to work. Which is why I had to post here. Thanks.
#7
Hi

I've spent an unforgivable amount of time trying to simply add a "View Art" type of joy to a mod's building type.

For example, it has a skeleton that is listed as a building_natural type.  I want to use that same piece to add a view art type of joy, and a beauty amount.  (Basically, as if it were a museum piece.)

Nothing I have done has worked, and I'm so brain-fried at this point that I've given up. 

Does anyone have any simple XML they can provide to do this?  I know it is possible, but I'm just messing up something somewhere.

So, the steps are:

1.  Locate the mod.
2.  Add the view art and beauty to the building piece.

Thank you for any help you can offer!
#8
Help / Re: XML Patch Help, Please
March 06, 2020, 07:26:07 PM
Quote from: LWM on March 05, 2020, 10:54:51 PM
Is this, perhaps, "Make Uranium Green?"

Sorry, I had to look that up.  No, I haven't tried that mod.  I did this for myself, unpublished.  This recolor is similar-looking to a bright yellow-colored Carnotite, although those colors can vary in shades of yellow to more yellowish-green.  I first made this little mod for myself by simply overwriting the entire def, but I wanted to know how to patch things like this that have to two almost identical element paths, and the solution I came up with just seemed clunky.  It worked, but I wasn't sure if I could merge the two somehow., make a more elegant patch operation.  It's all kind of new to me still, so I'm learning as I go.  In fact, the first recolor was the first "mod" I've ever made, and it was to help teach myself XML.  :)

Sorry for the long reply, but thanks again for the help :)!
#9
Help / Re: XML Patch Help, Please
March 05, 2020, 12:07:55 PM
Quote from: LWM on March 04, 2020, 11:33:27 PM
You could replace the entire graphicData?  But that's probably a bad idea.

Someone made a mod that allowed more complex node manipulation that I think included subNodes?

But in vanilla, no, you've got it.

Thank you so much for the reply!  I really appreciate the help :)
#10
Help / XML Patch Help, Please
March 04, 2020, 04:20:57 PM
Posted a while back on an apparently dead thread, so wondering if anyone here can help me with an XML Patch noob question:

Is there a better way to combine two different changes to the same Def without two separate PatchReplace operations?  Here is what works, but is there a better way to do this?  (I tried just not pointing to /color or /colorTwo in the xpath, but it never worked.)

<Patch>
   <Operation Class="PatchOperationReplace">
      <xpath>/Defs/ThingDef[defName="MineableUranium"]/graphicData/color</xpath>
      <value>
         <color>(255,249,105)</color>
      </value>
   </Operation>
   <Operation Class="PatchOperationReplace">
      <xpath>/Defs/ThingDef[defName="MineableUranium"]/graphicData/colorTwo</xpath>
      <value>
         <colorTwo>(240,178,17)</colorTwo>
      </value>
   </Operation>
</Patch>


Thank you!
#11
Check out the Trading Spot mod.  Should help a lot:  https://ludeon.com/forums/index.php?topic=33669.0

Also the Locks mod will let you have more control of who can use doors:  https://ludeon.com/forums/index.php?topic=35913.0

Both are available on Steam if you want them.  I consider both essential QoL mods.  Hope this helps!
#12
Ideas / Re: Fight fires without undrafting
November 10, 2019, 08:32:24 AM
Good idea!
#13
Ideas / Re: Suggestion: Add variety to "Ancient Dangers"
November 10, 2019, 08:23:08 AM
I had another idea for the ancient ruins:  Flooded caverns.  (Or buildings, etc).   Where you would have to research the moisture pump, and remove the water before you could see what is underneath.  Would be a nice change from the instant attack.
#14
I'm leaving this post in case anyone else ever runs into this error.  Maybe it can help with debugging.  In addition, if anyone knows a more elegant way to combine both "<graphicData>" changes into one element, please let me know.  Anyway, I was able to figure this out for myself.  Here is what worked:

<?xml version="1.0" encoding="utf-8" ?>
<Patch>
   <Operation Class="PatchOperationReplace">
      <xpath>/Defs/ThingDef[defName="MineableUranium"]/graphicData/color</xpath>
      <value>
         <color>(255,249,105)</color>
      </value>
   </Operation>
   <Operation Class="PatchOperationReplace">
      <xpath>/Defs/ThingDef[defName="MineableUranium"]/graphicData/colorTwo</xpath>
      <value>
         <colorTwo>(240,178,17)</colorTwo>
      </value>
   </Operation>
</Patch>




First of all:  Thank you to the author of this post and everyone helping.  For a noob like myself, it's invaluable.

So, I'm trying to learn xpathing, and so I've read tons of articles, other posts, wikis, and looked at actual downloaded mods.  I think I've actually confused myself by information overload.

So, I thought I'd start small and just try a simple replace operation.  I want to change "color" and "colorTwo" values for the mineable uranium ore.

Everything I've tried causes errors.  I am sure there is a way to list both values in the same operation, but I can't make it work.  I've even tried separating each (color vs colorTwo) into separate operations.  I still get errors.  Would some generous soul please help me out?

EDIT:  The file with the change is:  Defs\ThingDefs_Buildings\Buildings_Natural.xml.

Again, thank you for any help!

Here is what I've tried last:


<?xml version="1.0" encoding="utf-8" ?>
<Patch>
   <Operation Class="PatchOperationReplace">
      <xpath>*/ThingDef/[defName = "MineableUranium"]/graphicData/color</xpath>
      <value>
            <color>(255,255,64)</color>
      </value>
   </Operation>
   
      <Operation Class="PatchOperationReplace">
      <xpath>*/ThingDef/[defName = "MineableUranium"]/graphicData/colorTwo</xpath>
      <value>
            <colorTwo>(240,178,17)</colorTwo>   
      </value>
   </Operation>
</Patch>


Here is the error log.  I've tried googling this but couldn't figure out what is wrong:

Error in patch.Apply(): System.Xml.XPath.XPathException: Error during parse of */ThingDef/[defName = "MineableUranium"]/graphicData/color ---> Mono.Xml.XPath.yyParser.yyException: irrecoverable syntax error
  at Mono.Xml.XPath.XPathParser.yyparse (yyInput yyLex) [0x00000] in <filename unknown>:0
  at Mono.Xml.XPath.XPathParser.Compile (System.String xpath) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at Mono.Xml.XPath.XPathParser.Compile (System.String xpath) [0x00000] in <filename unknown>:0
  at System.Xml.XPath.XPathExpression.Compile (System.String xpath, IXmlNamespaceResolver nsmgr, IStaticXsltContext ctx) [0x00000] in <filename unknown>:0
  at System.Xml.XPath.XPathExpression.Compile (System.String xpath) [0x00000] in <filename unknown>:0
  at System.Xml.XPath.XPathNavigator.Compile (System.String xpath) [0x00000] in <filename unknown>:0
  at System.Xml.XmlNode.SelectNodes (System.String xpath, System.Xml.XmlNamespaceManager nsmgr) [0x00000] in <filename unknown>:0
  at System.Xml.XmlNode.SelectNodes (System.String xpath) [0x00000] in <filename unknown>:0
  at Verse.PatchOperationReplace.ApplyWorker (System.Xml.XmlDocument xml) [0x00000] in <filename unknown>:0
  at Verse.PatchOperation.Apply (System.Xml.XmlDocument xml) [0x00000] in <filename unknown>:0
  at Verse.LoadedModManager.ApplyPatches (System.Xml.XmlDocument xmlDoc, System.Collections.Generic.Dictionary`2 assetlookup) [0x00000] in <filename unknown>:0
Verse.Log:Error(String, Boolean)
Verse.LoadedModManager:ApplyPatches(XmlDocument, Dictionary`2)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


Thank you in advance for any assistance with my learning this process! 
#15
@Camute:  Brilliant!!  This is just what I needed.  I'm running it now and it definitely helps!  Thank you for the suggestion!

Also:  LWM:  Thank you for your interest and help.  Very much appreciated, too! :)