Suggestion Does This Stop the Alt Account Exploit

PPlank

Customer
We have used several Raid Protection plugins, but the exploit has always been the same and has never been fixed by the devs.

How it works. An alt account logs in, builds a base and logs out. Real account logs in and lets themselves in through the codelocked door. They are not allies, team mates or friends with the original alt account. Their base is now impervious to raids while they're logged in.

Does this plugin address that scenario and stop players from doing this? I imagine it could be done by checking the codelock for usage if that were possible. Thanks. :)
 
Not gonna lie, it took me a minute to fully understand the loophole you meant 😅

So currently the shield activates purely based on whether the owner, tc auth, team, friends, or clan members are all offline (after the configured delay). If a non-ally is inside even if they know the door code it doesn't deactivate the shield

So in the exact case you described, yeah, the base would still be protected while that outsider is inside

If we want to patch that loophole, I could definitely add some optional safeguards, like:
  • If a non-ally is inside the same tc privilege area, suspend the shield
  • If a non-ally opens a door or interacts with anything inside, suspend the shield

Either rule would make the base raidable again as soon as a non-ally is actively using it

No need to track who knows the code specifically, those presence/interaction rules should be clean enough. Let me know if you'd like that added!
 
Yikes! Apologies for not seeing and replying to your reply. It's been a funny month...

Yes you got it, and those ideas for plugging the loophole sound good to me, especially the second one. It's been a real concern when players take advantage of the loophole in similar plugins, so much so that we removed raid protection even though it's a good idea in practice.

I noticed while going through the documentation that there's no charge for base protection to the player, whereas other plugins use scrap and when it's depleted the base is open to damage. Instead I think I like your implementation of using a "Shield Strength Percent" to partially protect a base with no charge to the player as that gives all players the same advantage and doesn't need them to grind up for scrap to protect their base. I guess there are lots of ways to do this that could be done such as setting a material like metal frags to protect the base, or also optionally gradually depleting the contents of the Tool Cupboard until the base is unprotected. But I think I like the simplicity of your method - protect all bases regardless - and I would probably set the protection to 95 percent. Or, and this is another suggestion, gradually reduce the protection over time if a player hasn't been logged on for a while, so maybe after 3 days take 10% off each day until it's completely unprotected. :unsure:

Regardless, I'll snag this plugin when I get paid on Friday as I like the features it already has. :)
 
I can introduce an optional cost for protection, that's easy. I'll see if I can push an update with everything we talked about by the end of the month, got a pretty full plate the next couple of weeks
 
You may have noticed I bought this (and also the Portable Fort) plugin and convinced a fellow server owner to grab a copy too. ;)

Do you have a timeline or estimate for the changes we talked about above? I know you're busy, but we'd appreciate an update. :)

Thanks.
 
You may have noticed I bought this (and also the Portable Fort) plugin and convinced a fellow server owner to grab a copy too. ;)

Do you have a timeline or estimate for the changes we talked about above? I know you're busy, but we'd appreciate an update. :)

Thanks.
Really appreciate you picking up both plugins and for recommending it to someone else too, that means a lot ❤️

I haven't forgotten about the changes we talked about! I'm just finishing the last few things in my queue, but I'll try to get an update out within the next few days or early next week at the latest. I'll keep you posted either way

Thanks again for the support and patience, really appreciate it! 🙏
 
Back
Top
Chat commands start with a /, while console commands can be entered directly in the F1 console or server console. Use find <keyword> in console to search for available commands related to the plugin. Parameters in < > are required, while [ ] are optional.
This plugin uses Oxide's permission system. Grant or revoke permissions using oxide.grant and oxide.revoke. You can assign them to individual players or groups using their Steam id or group name.
Settings are stored in the config file found under the config/ directory. You can edit this file manually, then reload the plugin to apply your changes.
Persistent data is saved in the data/ directory. This includes things like saved settings, usage stats, or player progress depending on the plugin. Deleting a data file will reset stored progress or customizations.
Language files are located in the lang/ folder. To translate messages, copy the en.json file into your target language folder (e.g. fr, de) and edit the values. Reload the plugin after changes to apply new messages.
This section lists public methods exposed by the plugin for use in other plugins. You can call these via the CallHook method. Ensure the plugin is loaded before calling its API to avoid null reference errors.
These are custom hooks that other plugins can listen for. Simply define a method with the same name and expected parameters in your plugin to handle the event. Hooks are triggered at key moments and are useful for extending or reacting to plugin behavior.
These hooks are injected into the game's code using Harmony. They let the plugin run code at key points in the game's internal logic. You can return values to block or modify behavior. Use with caution — these are powerful and can affect core mechanics.
Cart