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 - EagleCall

#1
Made a couple red variants of the medical icon; tried adding the snake symbol but it was pretty badly muddled at icon sizes.  Wikipedia has a good copy of the Star of Life anyway, which already has that and is itself an official symbol for emergency medical services.

Also found and fixed up some chef badges and a neat little graphic with both peace symbol and dove.

[attachment deleted due to age]
#2
Hmm, I think those linked examples are too detailed and complicated, both for RimWorld in general and especially for tiny icons like this.

That is a good point though about the Medical badge, and I thought the corn icon was for growers but looking at the defs it's labeled for cooks?  I think a stylized chef's hat would be better for cooks, and the corn would work for growers, though having an alternate grower badge might be good too.

So, I'll see if I can work on that chef's hat idea, but meanwhile what do you folks think of this modified medical badge?

[attachment deleted due to age]
#3
404 Page Not Found for me too, do you maybe have it set to private by mistake?
#4
:o  (blinks)  ...Wow, ok.  Lot to process, there.  Many thanks for both the welcome and the help!


That direct patch method is so much easier!  I think for most of these patches that would indeed be all it needs.  And that principle should also apply to other operations like Add, right?  If it can't find the thing or node you are adding to because the mod isn't there, it just fails (silently because of that success line)-- no magically "adding" the full xpath worth of empty stuff or whatever nonsense like that?  :P  Just checking, lol.

I did not catch or at all expect that bit about */Defs being outdated, but it makes so much sense now.  And I was already trying to watch out for outdated information, but stuff like that is so tricky and easily overlooked!  So, that xpath failure combined with the Invert problem just so to make it run anyway, like a direct patch?  Except... hmm... some of the actual Replace xpaths use */Defs, though only two or three and... I think those are actually unnecessary patches?  As in what they are patching in with Replace is what was already there, at least in the current version of the mod it's patching.  ???  So anyway wow this mod has some problems, more even than I originally thought.  I think it was probably an older mod or based on one, or copying old coding examples or something, and was "updated" (cough cough) for the game release.

Hmm, PatchOperationFindMod probably is better for most cases that need the check, although I think in some cases it may actually make sense to test for the things themselves?  IDK, really.  But in such a case, I wonder, would you use <success>Normal</success> on the Test or remove that line entirely?


(Pretends to crack knuckles)  Welp, anyway, looks like I have some work to do.  Thanks again!  ;D
#5
Hi, I've been quietly lurking a bit but still pretty new and haven't posted before, so I hope this considered within the scope of this thread.

While I think I'm getting a decent handle on how XML modding works, I'm confused about PatchOperationTest and <success>Invert</success>.  I've forked an existing XML mod on Github to fix/tweak/mess with (well, several actually, but there's a specific one in question here), and it uses this method to patch things from other mods (that may or may not be there):

<Operation Class="PatchOperationSequence">
<success>Always</success>
<operations>
<li Class="PatchOperationTest">
<xpath>*/Defs/ThingDef[defName = "name of thing to patch"]</xpath>
<success>Invert</success>
</li>
<li Class="PatchOperationReplace">
<xpath>/Defs/ThingDef[defName = "name of thing to patch"]/path/to/node</xpath>
<value>
<node>patched stuff</node>
</value>
</li>
</operations>
</Operation>


But, from what I understand, that <success>Invert</success> actually cancels the patch if the thing to patch is found, rather than the intended cancel if not found?  And yet no one seems to have had problems with it, so how?  Is it wrong and just not noticed/reported?  I feel sure that must be the case, but to further complicate things, some of the stuff I've found while searching for answers makes the results of going without that line seem broken/erratic.  So how is it actually supposed to work when you are checking that there is a thing there rather than that there isn't?

Basically, I am now very confused and doubting myself here.  And almost feeling like it would be simpler to just switch to PatchOperationConditional match to be sure of things but...  not really.  Plus I don't know if I can nest a conditional within a conditional or how that would work, while I know I can nest a conditional within a sequence, and some situations require that sort of thing.  Ugg...



I'm also very interested in this whole */Defs/ vs. /Defs/ vs. Defs/ question, but that is a minor issue in comparison.