Suggestion: working with RaidableBases

hello, would it be possible to make this work with RaidableBases plugin ? Currently only player placed doors are multiplied but a raid base placed by CopyPaste doesn't have it, they are just the default durability.

you might wanna ask the devs of raidable bases for an option to configure the health of each material because i don't think il be able to add that functionality into this plugin

like just from the way the base spawning sounds i have this feeling like those values would have to be hardcoded into the building when its placed

 

also if you haven't tried you could try reloading the door health plugin after placing a raidable base to see if that works.

I submitted a patch to support this :)

wellp 😅 if it works it works thanks man, i don't use raidable bases so il just to take your word on the patch lol

 

you by any chance know how to add support for external walls cause iv been racking my brain trying to figure that one out and its a shame to not be able to change them cause this plugin effects high external gates as well as regular doors

 

like iv been looking through a bunch of plugins that deal with external walls and prefab health and it seems like i have to create a variable to reference them but whenever i try i run into an issue where it says they dont contain health



Merged post

wellp nevermind actually lol i managed to have a breakthrough on the external walls but unfortunately i had to make it as a entirely seperate plugin so its gotta get reviewed first 😓 lol cant fault the process though lol i ended up going through a couple serious screwup revs before i finally got it in half working shape.
        private const uint HIGH_EXTERNAL_ICE_WALL = 921229511;

        private void OnEntitySpawned(SimpleBuildingBlock block)
        {
            block._maxHealth *= config.Multiplier;
            block.health *= config.Multiplier;
            block.SendNetworkUpdate(BasePlayer.NetworkQueue.Update);
        }

        private void OnEntitySpawned(IceFence fence)
        {
            if (fence.prefabID != HIGH_EXTERNAL_ICE_WALL) return;
            fence._maxHealth *= config.Multiplier;
            fence.health *= config.Multiplier;
            fence.SendNetworkUpdate(BasePlayer.NetworkQueue.Update);
        }

no reason for a duplicate plugin. this will do, and its far better on performance than the new plugin you submitted :)

just add another multiplier option in the config for high walls. same concepts for OnServerInitialized and Unload and isViable

        private bool isViable(BaseEntity entity)
        {
            if (entity.OwnerID != 0) return true;
            return RaidableBases != null && Convert.ToBoolean(RaidableBases?.Call("EventTerritory", entity.transform.position));
        }


can replace the existing isViable helper with this one

so will that work with the other external walls as well? as the ice one cause i noticed you've only got IceFence there. 🤔 thats the main section that was giving me all my problems when i was trying to originally write it

yes SimpleBuildingBlock is the rest of the high walls

idk if its just cause im tired as hell but im not really getting how to add that in right now... maybe il take a crack at it tomorrow. lol

it's already added in the snippet i posted above. literally copy and paste it into the plugin file :p

@Judess69er can @Wulf deny the External Wall Health Multiplier plugin since you added the functionality to this one? :p

yea, that would be great.

This is so interesting watching devs talk to each other! (I'm here cause I was checking if this plugin worked with raidable bases 🤣

gZ97IC8bBCWIdPS.jpg Covfefe

This is so interesting watching devs talk to each other! (I'm here cause I was checking if this plugin worked with raidable bases 🤣

yea ever since the patch that nivex submitted should work though with raidable bases since everything is spawed the multiplier will apply to pretty much everything, i was trying to figure out a method around that but it seemed like the more i added to the script the more it started to negate specific things so i just used a single wide definition that applies to many entities instead, though im still trying to figure out how to seperately define everything since the wide definition might include some things that people may not want the health increased on, but since im using only a single identifier the multiplier changes the health of basically everything all at the same time if it has an owner

This is some podcast-level of entertainment right here. I'm looking to replace headquarters with something that will give my players a more performant level of protection, and I stumble upon this little gem.

lmao nice description