• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

Recipes perma-locked?

A player messaged me today and mentioned that my custom trap recipes claim to be learnable with advanced engineering or via a recipe, but neither works. The recipes remain locked. What do I need to do to unlock recipes for players to use? Below is an example.

Code:
        <recipe name="DHTA_Elec_Fence" count="1" craft_area="workbench" tags="perkAdvancedEngineering,learnable">
            <ingredient name="resourceForgedIron" count="10"/>
            <ingredient name="resourceElectricParts" count="4"/>
            <effect_group>
                <passive_effect name="CraftingIngredientCount" level="0,1,2,3,4" operation="perc_add" value=".5,.5,.5,.3,.15" tags="resourceForgedIron,resourceElectricParts"/>
            </effect_group>
        </recipe>

It claims to be learnable by the stock electric fence schematic OR advanced engineering, but neither unlocks it.

 
Do you have a line for it in the progression.xml? Something like this

<append xpath="/progression/perks/perk[@name='perkAdvancedEngineering']/effect_group">
<passive_effect name="RecipeTagUnlocked" operation="base_set" value="1" level="3,5" tags="DHTA_Elec_Fence"/>
</append>


 That would have it unlock at level 3 Advanced Engineering (adjust as appropriate).

If you've already got an entry for it in progression, my other suggestion would be to check the spelling. I've had a problem before where a misspelled name kept a schematic from showing that I'd read it, no matter how many times I'd found it.

 
I already figured it out. I did it via my own custom progression.xml appended to the main one. It works as follows.

Code:
<configs>
    <append xpath="/progression/perks/perk[@name='perkAdvancedEngineering']/effect_group/passive_effect[@level='3,5']/@tags">,DHTA_Fusebox,DHTA_Elec_Fence,DHTA_Blade_Trap</append>
</configs>

Now, I also made schematics and verified that they worked as well. I am trying to insert them into the master schematics loot group. Is the following correct? I get no errors upon loading the mod but have no idea how to test it.

Code:
<DHTA_Traps>
    <append xpath="/lootcontainers/lootgroup[@name=schematicsElectrical]">
        <item name="DHTA_Fusebox_Schematic" />
        <item name="DHTA_Elec_Fence_Schematic" />
        <item name="DHTA_Blade_Trap_Schematic" />
    </append>
</DHTA_Traps>

If not, how would I append my schematics to the electrical schematic group? Again, no errors but I have no clue how to cause that loot group to be triggered to see if my stuff shows up.

 
I already figured it out. I did it via my own custom progression.xml appended to the main one. It works as follows.

Code:
<configs>
    <append xpath="/progression/perks/perk[@name='perkAdvancedEngineering']/effect_group/passive_effect[@level='3,5']/@tags">,DHTA_Fusebox,DHTA_Elec_Fence,DHTA_Blade_Trap</append>
</configs>


Now, I also made schematics and verified that they worked as well. I am trying to insert them into the master schematics loot group. Is the following correct? I get no errors upon loading the mod but have no idea how to test it.

Code:
<DHTA_Traps>
    <append xpath="/lootcontainers/lootgroup[@name=schematicsElectrical]">
        <item name="DHTA_Fusebox_Schematic" />
        <item name="DHTA_Elec_Fence_Schematic" />
        <item name="DHTA_Blade_Trap_Schematic" />
    </append>
</DHTA_Traps>


If not, how would I append my schematics to the electrical schematic group? Again, no errors but I have no clue how to cause that loot group to be triggered to see if my stuff shows up.
You can check the xml files in ConfigsDump of your saved game to make sure it has worked the way you intended

 
Oh I never looked at that because I didn't want to ruin a save. Will do, thanks.

*UPDATE*

My schematics are not being added. The code is below. Have I not specified this correctly? Everything is working except adding the schematics to the existing lootgroup.

Code:
<configs>
    <append xpath="/lootcontainers/lootgroup[@name=schematicsElectrical]">
        <item name="DHTA_Fusebox_Schematic" />
        <item name="DHTA_Elec_Fence_Schematic" />
        <item name="DHTA_Blade_Trap_Schematic" />
    </append>
</configs>
 
Last edited by a moderator:
OK, I think I figured it out. This is indeed added.

Code:
<configs>
    <insertBefore xpath="/lootcontainers/lootgroup[@name='groupQuestChallenge']">
        <lootgroup name="DHTA_Traps_Group">
            <item name="DHTA_Fusebox_Schematic" />
            <item name="DHTA_Elec_Fence_Schematic" />
            <item name="DHTA_Blade_Trap_Schematic" />
        </lootgroup>
    </insertBefore>

    <append xpath="/lootcontainers/lootgroup[@name='schematicsElectrical']">
        <item group="DHTA_Traps_Group" loot_prob_template="ProbT2"/>
    </append>
</configs>
Is this correct? I am still unsure of how to add my three schematics and use the T2 probability template. I believe this is it, but not sure.

 
Last edited by a moderator:
Not sure this is working. We play most evenings (giving Ark a break, aside from feeding out dinos) and nobody has found any schematics yet. They ARE being inserted as follows:

Code:
<lootgroup name="DHTA_Traps_Group"><!--Element inserted by: "DHTA Traps"-->
        <item name="DHTA_Fusebox_Schematic" />
        <item name="DHTA_Elec_Fence_Schematic" />
        <item name="DHTA_Blade_Trap_Schematic" />
</lootgroup>
 
<lootgroup name="schematicsElectrical">
    <item name="pressureplateSchematic" />
    <item name="poweredDoorsSchematic" />
    <item name="bladeTrapSchematic" />
    <item name="dartTrapSchematic" />
    <item name="shotgunTurretSchematic" />
    <item name="autoTurretSchematic" />
    <item name="electricfencepostSchematic" />
    <item name="motionsensorSchematic" />
    <item name="speakerSchematic" />
    <item name="spotlightPlayerSchematic" />
    <item name="switchSchematic" />
    <item name="generatorbankSchematic" />
    <item name="batterybankSchematic" />
    <item name="electrictimerrelaySchematic" />
    <item group="DHTA_Traps_Group" loot_prob_template="ProbT2"><!--Element appended by: "DHTA Traps"--></item>
</lootgroup>
As you can see, they are added but added as a group. Should I add the three individual schematics to the "schematicsElectrical" group, or will the way I did it work? I'm not sure how to test this in-game beyond playing. Is there another "Mo Power" store in the game? Besides the one in the desert near the city.

 
Last edited by a moderator:
For testing, instead of appending to the vanilla group, you can use a set xpath. Then go in and everything you loot that would give a schem should give one of yours, unless something is wrong. of course, since you have it set to use the T2, you won't see any as the prob will be set to 0, unless you are above level 48.. You'll probably just get empty loot if you use a set xpath, until you level up to 48+.

I should say, i believe that 48+ is loot gamestage, not just player level... I could be wrong though. But fairly sure its the loot gamestage.

 
I'm good then. I just passed level 210 with zero deaths. My gamestage is flipping me the finger and sending hordes of rads after me. I don't want to set the xpath and wipe everything else out, just know I am good. I guess it will be good enough to know if what I pasted above is correct and will work. If so, I just have to wait.

 
That's why i was saying to use the set xpath for testing. Load up a new game and remove the prob2 template. With using a /set xpath, if you loot a block that gives a schematic, it will always be yours, so you can atleast see that it is infact spawning in loot. Once you know that works for sure, you can change it back to a /append.

 
Using <append xpath="..."> will add that stuff to whatever your path is.

Using <set xpath="..."> will completely wipe out what you're path is and replace it with what you have.

So instead of adding your schems to the lootgroup, it will  replace that lootgroup with nothing but your schems, allowing easier testing.

 
Back
Top