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

Removing Frostclaw and Desert Spitter

Commented out all instances in entitygroups.xml and they still appear. Checked other XML files and saw no references that weren't descriptive, i.e. had nothing to do with whether they spawn or not.

Can anyone point me to a guide for eliminating specific models in mod form? Or is this hardcoded somewhere we can't modify?
 
I think it usually works better to substitute another entity rather than try to remove one. For example, in entityclasses you could have the frostclaw definition as an extend of zombie Arlene. I don't know that it will work for these 2 special "zombies" but that's the approach used in mods that change all the zombies to demos for instance. It's possible someone already has a mod for this but I haven't looked.
 
I think it usually works better to substitute another entity rather than try to remove one. For example, in entityclasses you could have the frostclaw definition as an extend of zombie Arlene. I don't know that it will work for these 2 special "zombies" but that's the approach used in mods that change all the zombies to demos for instance. It's possible someone already has a mod for this but I haven't looked.
Saw something from way back in 2014 about substituting. The only mod that touches them, afik, is GNS' (reduce spawn rate), which apparently needs some work itself. Would rather make my own to eliminate them altogether, though, and could use a few good Unity modding tutorials. Haven't been able to find one yet. So, community pointers to them, if they exist, would be greatly appreciated.
 
Make a post in the Requests and Discussions subforum of the Game Modification forum. People who know what's what usually show up to be helpful there. EDIT: Nevermind. I realized I can move your request here. Hope you get the help you need.
 
Can anyone point me to a guide for eliminating specific models in mod form? Or is this hardcoded somewhere we can't modify?

There's a guide for XPATH, which is how a modlet can dynamically make changes to the game's XML files as the game loads. XPATH can create, change, update, and delete.


Is that what you wanted?

I think it usually works better to substitute another entity rather than try to remove one. For example, in entityclasses you could have the frostclaw definition as an extend of zombie Arlene.

That sounds like the safe way.
 
XPath I know, but that's a great refresher. Thank you all very much for your suggestions. Worked with XML as a web developer, but will have to learn the ins and outs of how 7 Days to Die fits together. There are a few other things I've wanted to do for a while, so I've studied the file structure of other mods, etc. Was hoping for something more specific to entity classes and groups and will try the substitution method.

Thanks again.
 
I've done a fair bit with substituting zombies so I whipped this up in a few minutes. This just replaces the plague spitter, something similar should work for the frostclaw. I only tested to see what spawned in the desert. It's possible it may break some things, or maybe horde night, didn't test that. This would be the entityclasses.xml file in the mod

Edit: the replacement extend needs to be in a specific spot so used the insertAfter xpath.

<configs>

<!-- remove plague spitter -->
<remove xpath="//entity_class[@name='zombiePlagueSpitter']" />

<!-- replace with Arlene -->
<insertAfter xpath="//entity_class[@name='zombieBurntInfernal']">

<entity_class name="zombiePlagueSpitter" extends="zombieArlene">
</entity_class>

</insertAfter>

</configs>
 
Ha, guess I should wait for coffee to take effect. The above works, but didn't really think about the variants (feral, radiated, etc). It still works but the variants have the spitter skin and coloring. They behave like Arlene though, no spitting, but with the greater health, damage the variants get.
 
guess I should wait for coffee to take effect
lol Yeah, there is quite a lot of repetition for the different variants as well as events like horde night in the files. Still shouldn't take more than a few minutes to accomplish. What will take a long time for me is learning how to do it properly. :)
 
Yep, but repetition means it's not hard to make adjustments. Here's an updated version that changes all the variants to base Arlene. If you want to make the tougher variants tougher you could add health, damage in each specific entityclass section, as well as adding the coloring. In the code below I added the 'infernal' coloring to the infernal variant as an example.

<configs>

<!-- remove plague spitter -->
<remove xpath="//entity_class[starts-with(@name,'zombiePlagueSpitter')]" />

<!-- replace with Arlene -->
<insertAfter xpath="//entity_class[@name='zombieBurntInfernal']">

<entity_class name="zombiePlagueSpitter" extends="zombieArlene">
</entity_class>

<entity_class name="zombiePlagueSpitterFeral" extends="zombiePlagueSpitter">
</entity_class>

<entity_class name="zombiePlagueSpitterRadiated" extends="zombiePlagueSpitterFeral">
</entity_class>

<entity_class name="zombiePlagueSpitterCharged" extends="zombiePlagueSpitterRadiated">
</entity_class>

<entity_class name="zombiePlagueSpitterInfernal" extends="zombiePlagueSpitterRadiated">
<property name="MatColor" value="infernal"/>
</entity_class>


</insertAfter>

</configs>
 
What I posted above doesn't touch entitygroups, only entityclasses. It just changes the 'definition' of what the plague spitter is. So, where ever the game wants a plague spitter, like spawn groups or whatever, you just get variants of Arlene. Of course, that's just an example. To maintain some level of difficulty it'd probably be more appropriate to use a stronger zombie closer in health and damage to the spitter. It's also not complete or well tested, but should serve as a start for a fuller mod.

Edit: forgot to mention, I did complete the 'kill plague spitter' challenge with fake spitters in a test game.
 
Last edited:
Ah okay. I did the same thing when I changed snakes to the hostile bunnies for someone in the past. I totally missed you changed the model being referenced and was looking at the entity groups myself.
 
Back
Top