Jump to content

1 Screenshot

  • 124.8k
  • 2.9k
  • 116.8 kB

Recommended Comments



On 2/22/2024 at 5:26 PM, nivex said:

sure I can look into it

edit: as of 3/7/24 I have not had time to look into this new feature due to being very busy in real life. I will take a look asap

Any updates on this. Thank you 🙂

Link to comment
Share on other sites
nivex

Posted (edited)

next update nearly ready. just waiting on my testers to confirm everything is in order.

I tried to consider many features for shelters:

1. shelters decay rather quickly in vanilla, so seeing them become abandoned would be rare for lengthy requirements unless decay is disabled

2. if you cannot claim it then you must destroy locked shelters before you can loot the contents from within it

3. Legacy Shelter - Loot Required - any shelter not meeting this requirement during a scan will be deleted

4. Unlock Instead Of Destroying During Scans will allow shelters to become unlocked rather than destroyed during scans

5. Allow Claim Of Unlocked Shelters allows players to claim any shelter not belonging to a player with the /sar claim command

6. Allow Conversion With SAR allows players to convert their shelter into an abandoned base event using the /sar command

7. players can attack shelters with abandonedbases.attack and abandonedbases.attack.time to convert or see time left

but nivex. what about exploiting? follow a player. drop shelter, deploy box, put 6 items in box, type /sar, event becomes PVP, exit shelter, kill player, loot player, /sar cancel

no worries. I thought of that too. Block Conversions Within X Meters Of Enemy Player is 150 meters by default.

Edited by nivex
  • Like 1
Link to comment
Share on other sites

Any possibilty of putting PVE or PVP in the vending dome like raidable bases?

I use pve for regular abandoned bases and pvp for the manual /sar and some players always complain about going to a  pvp event and not knowing til they are in the bubble and die. 

Thanks!

Link to comment
Share on other sites

@Dead Nasty

sure, and sphere colors are implemented next update as well. it is limited to the same colors that raidable bases uses though.

  • Love 1
Link to comment
Share on other sites
40 minutes ago, nivex said:

@Dead Nasty

sure, and sphere colors are implemented next update as well. it is limited to the same colors that raidable bases uses though.

okay thank you very much nivex. super appreciated. 

  • Like 1
Link to comment
Share on other sites
nivex

Posted (edited)

@Dead Nasty

I've added this to the default config in the next update, but old configs will need to add this change manually after the update is released
 

Quote

    "Marker Name (Minutes)": "{PVX} Abandoned Player Base [{time}m]",
    "Marker Name (Seconds)": "{PVX} Abandoned Player Base [{time}s]",

{PVX} will be replaced with the PVPFlag or PVEFlag message located in the language file

image.png.69df1e250a7c2fc3278bf003605150e3.png

Edited by nivex
  • Love 1
Link to comment
Share on other sites
9 hours ago, nivex said:

@Dead Nasty

I've added this to the default config in the next update, but old configs will need to add this change manually after the update is released
 

{PVX} will be replaced with the PVPFlag or PVEFlag message located in the language file

image.png.69df1e250a7c2fc3278bf003605150e3.png

@nivexAwesome Thank you very much!! Can't wait. 

  • Like 1
Link to comment
Share on other sites

Hello nivex! I'm overhauling a PvP/PvE mode UI plugin that has support for some of Abandoned Bases' hooks. I own Raidable Bases but not Abandoned Bases, so I can't get the answer to this myself by checking the code:

Does Abandoned Bases call a hook on start of PvP delay, the way Raidable Bases calls "OnPlayerPvpDelayEntry"? If so, can you share enough of the signature for me to write a handler with a BasePlayer parameter?

Thanks!

Link to comment
Share on other sites

@HunterZ

sure np

void OnPlayerPvpDelayStart(BasePlayer player, ulong userid, Vector3 eventPos, List<BasePlayer> intruders, List<BaseEntity> entities)
void OnPlayerPvpDelayExpiredII(BasePlayer player, ulong userid, Vector3 eventPos, List<BasePlayer> intruders, List<BaseEntity> entities)

  • Like 1
Link to comment
Share on other sites
12 hours ago, nivex said:

@HunterZ

sure np

void OnPlayerPvpDelayStart(BasePlayer player, ulong userid, Vector3 eventPos, List<BasePlayer> intruders, List<BaseEntity> entities)
void OnPlayerPvpDelayExpiredII(BasePlayer player, ulong userid, Vector3 eventPos, List<BasePlayer> intruders, List<BaseEntity> entities)

Thanks, you're a legend!

Forgot to ask - can you also share the parameters/signature for `OnAbandonedBaseEnded`? This addon is checking *all* players on the server when that gets called, and I want to apply a distance-based filter like I did for `OnRaidableBaseEnded`.

Link to comment
Share on other sites
nivex

Posted (edited)

@HunterZ

np

currently:

Quote

void OnAbandonedBaseEnded(Vector3 eventPos, bool allowPVP, List<BasePlayer> participants, List<BaseEntity> entities)

Edited by nivex
  • Love 1
Link to comment
Share on other sites

please note that all hook signatures will change in the next update and are documented now

these changes should make it easier for developers to use

  • Love 1
Link to comment
Share on other sites

2.1.4 has been released with support for Legacy Shelther, colored domes, UI to show time when TC is opened, support for multi-TC bases, and more. enjoy ❤️

 

  • Love 1
Link to comment
Share on other sites

I have a silly question 😀

Our admin group is excluded using abandonedbases.exclude; but we usually build an 'admin office' (smol cute base where we log off in).

I imagine no legitimate players will be authorized on that TC - does that mean it'll still become a raid target?
It would be pretty hilarious, but also slightly annoying perhaps lol.

Link to comment
Share on other sites
6 hours ago, nivex said:

2.1.4 has been released with support for Legacy Shelther, colored domes, UI to show time when TC is opened, support for multi-TC bases, and more. enjoy ❤️

 

Added {PVX} text to default Marker Name's to display PVE or PVP in the map marker text (this change is not retroactive. Add it manually if it is missing. "Marker Name (Minutes)": "{PVX} Abandoned Player Base [{time}m]",)

Nvm figured it out my b 😛

Edited by Dead Nasty
Link to comment
Share on other sites
nivex

Posted (edited)

@NoxiousPluK

if someone authorizes that doesn't have that permission then it could convert. the exclude permission does as the name implies, it is excludes you from the search and only includes people without the permission. however, if EVERYONE has it then it is safe, but still not recommended as that is prone to user error. if you are certain this won't happen then you can use exclude and ignore the comment below.

it is intended to use abandonedbases.immune for full immunity. anyone with this permission will protect the entire base. it can be a problem if you have plugins which automatically grant authorization to TC though.

@Dead Nasty😀

Edited by nivex
  • Love 1
Link to comment
Share on other sites

Found a bug where if you can access the turrets with infinite ammo on and take it, the ammo respawns and can be taken again. Had a player get 26k ammo from a turret doing this. 

Link to comment
Share on other sites

Only started using this plugin this month, and tried to get the config right but wondering how we can avoid issues like this:

Here is my config:

{
  "Purge Settings": [
    {
      "Permission": "abandonedbases.vip",
      "Lifetime (Days)": "7",
      "Conversions Before Destroying Base": 1
    },
    {
      "Permission": "abandonedbases.veteran",
      "Lifetime (Days)": "7",
      "Conversions Before Destroying Base": 1
    },
    {
      "Permission": "abandonedbases.basic",
      "Lifetime (Days)": "7",
      "Conversions Before Destroying Base": 1
    },
    {
      "Permission": "abandonedbases.immune",
      "Lifetime (Days)": "none",
      "Conversions Before Destroying Base": 1
    }
  ],
  "Abandoned Settings": {
    "Sphere Colors (0 None, 1 Blue, 2 Cyan, 3 Green, 4 Magenta, 5 Purple, 6 Red, 7 Yellow)": {
      "When Locked": 0,
      "When Unlocked": 0,
      "When PVP": 0,
      "When PVE": 0,
      "When Active": 6,
      "When Inactive": 3
    },
    "SAR": {
      "Require confirmation code to use SAR command": true,
      "Show despawn timer warning message when requiring confirmation": true,
      "Show reset despawn timer message when requiring confirmation": true
    },
    "Automatic Conversions Disabled Between These Times": [
      {
        "Enabled": false,
        "Start Time": "00:00",
        "End Time": "12:00"
      },
      {
        "Enabled": false,
        "Start Time": "12:00",
        "End Time": "23:59"
      }
    ],
    "Auto Turrets": {
      "Turrets Can Hurt Players": true,
      "Enable The Following Options": true,
      "Aim Cone": 5.0,
      "Ammo": 128,
      "Infinite Ammo": false,
      "Minimum Damage Modifier": 1.0,
      "Maximum Damage Modifier": 1.0,
      "Start Health": 1000.0,
      "Sight Range": 30.0,
      "Double Sight Range When Shot": false,
      "Set Hostile (False = Do Not Set Any Mode)": true,
      "Has Power": false,
      "Requires Power Source": false,
      "Remove Equipped Weapon": false,
      "Random Weapons To Equip When Unequipped": [
        "pistol.python"
      ]
    },
    "Rewards": {
      "Economics Money": 0.0,
      "ServerRewards Points": 0,
      "SkillTree XP": 0.0,
      "Do Not Reward Canceled Events": false,
      "Divide Rewards Among All Raiders": true
    },
    "Blacklisted Commands": [
      "command1",
      "command2",
      "command3"
    ],
    "LimitEntities (Plugin)": {
      "Enabled": false,
      "Kill deployed entity when claiming a base that exceeds the limit": false,
      "Store limited entities in a box when claiming a base": true,
      "Always store deployables in a box when claiming a base": false
    },
    "Entities Not Allowed To Be Picked Up": [],
    "Ignored Prefabs": [
      "sleepingbag_leather_deployed",
      "bed_deployed"
    ],
    "BotSpawn Profile Names": [
      "profile_name_1",
      "profile_name_2"
    ],
    "Legacy Shelter": {
      "Unlock Instead Of Destroying During Scans": false,
      "Loot Required": 6,
      "Allow Claim Of Unlocked Shelters": true,
      "Allow Conversion With SAR": true,
      "Block Conversions Within X Meters Of Enemy Player": 150.0,
      "Manual Conversions Only": false
    },
    "Tugboats": {
      "Leaving Tugboat Triggers PVP Delay": true,
      "Unlock Instead Of Destroying During Scans": false,
      "Prevent Engine Starting During An Event": false,
      "Loot Required": 6,
      "Manual Conversions Only": false
    },
    "Custom Cost To Manually Convert (0 = disabled)": [
      {
        "Item Shortname": "scrap",
        "Item Name": null,
        "Amount": 0,
        "Skin": 0
      }
    ],
    "Custom Cost To Cancel Conversion (0 = disabled)": [
      {
        "Item Shortname": "scrap",
        "Item Name": null,
        "Amount": 0,
        "Skin": 0
      }
    ],
    "Economics Cost To Manually Convert (0 = disabled)": 0.0,
    "Economics Cost To Cancel Conversion (0 = disabled)": 0.0,
    "ServerRewards Cost To Manually Convert (0 = disabled)": 0,
    "ServerRewards Cost To Cancel Conversion (0 = disabled)": 0,
    "Cancel Automated Events If Abandoned Owner Comes Online": true,
    "Allow Teleport": false,
    "Allow PVP": true,
    "Allow PVP (when manually converted with SAR command)": true,
    "Allow PVP (when manually converted with attack permission)": true,
    "Allow Players To Build": false,
    "Allow Players To Build Ladders": true,
    "Allow Players To Use MLRS": true,
    "Minimum Required Players Online": 1,
    "Block Tool Cupboard Auth Friend": false,
    "Block Damage From Outside To Base": true,
    "Block Damage From Outside To Player": true,
    "Block RestoreUponDeath Plugin For PVP Bases": false,
    "Block RestoreUponDeath Plugin For PVE Bases": false,
    "Block RestoreUponDeath Plugin For Sleepers": true,
    "Building Blocks Are Immune To Damage": false,
    "Building Blocks Are Immune To Damage (Twig Only)": false,
    "Prevent Players From Hogging Raids": false,
    "Prevent Ally From Hogging Raids": false,
    "Prevent Hogging Ignored During Purge": false,
    "Cooldown Between Conversions": 3600.0,
    "Cooldown Between Cancel": 3600.0,
    "Cooldown Between Events": 3600.0,
    "Cooldown Between Events Blocks Joining Ally": false,
    "Cooldown Between Events Blocks Base Damage": true,
    "Cooldown Between Events Blocks PVP Damage": true,
    "Cooldown Between Conversions Ignored During Purge": true,
    "Cooldown Between Cancel Ignored During Purge": true,
    "Cooldown Between Events Ignored During Purge": true,
    "Marker Name (Minutes)": "Abandoned Base [{time}m]",
    "Marker Name (Seconds)": "Abandoned Base [{time}s]",
    "Marker Format With Owner Name": "[Owner] {0} {1}",
    "Marker Format With Raider Name": "[Raider] {0} {1}",
    "Show Owners Name On Map Marker": false,
    "Show Raiders Name On Map Marker": false,
    "Foundations Required": 4,
    "Walls Required": 3,
    "Include Twig Structures": true,
    "Sphere Amount": 10,
    "Sphere Radius": 50.0,
    "Sphere Radius (Legacy Shelter)": 25.0,
    "Use Dynamic Sphere Radius": false,
    "Max Dynamic Radius": 75.0,
    "Padding Added Onto Dynamic Radius": 9.0,
    "Min Custom Sphere Radius": 25.0,
    "Max Custom Sphere Radius": 75.0,
    "Seconds Until Event Can Be Canceled": 0.0,
    "PVP Delay": 15.0,
    "Despawn Timer": 1800.0,
    "Despawn Timer (SAR)": 1800.0,
    "Despawn Timer Resets When Base Is Attacked": true,
    "Seconds Until Despawn After Looting": 600.0,
    "Seconds Until Despawn After Looting Resets When Damaged": true,
    "Do Not Destroy Base When Despawn Timer Expires": false,
    "Do Not Destroy Manually Converted Base When Despawn Timer Expires": true,
    "Time To Wait Between Spawns": 15.0,
    "Use Map Marker For Automatic": true,
    "Use Map Marker For Manual": true,
    "Map Marker Radius": 0.25,
    "Map Marker Radius (Map Size 3600 Or Less)": 0.4,
    "Allow Manually Converted Bases To Be Claimed": false,
    "Require Event Be Finished Before It Can Be Canceled": true,
    "Require Cupboard Access To Claim": false,
    "Only Cupboards Are Required To Cancel An Event": false,
    "Check If Abandoned Bases Are Too Close Together": true,
    "Remove Admins From Raiders List": true,
    "Change Marker Color On First Entity Destroyed": true,
    "Changed Marker Color": "#800080",
    "Default Marker Color": "#FF00FF",
    "Lock Base To First Attacker (PVE)": false,
    "Lock Base To First Attacker (PVP)": false,
    "Eject Enemies From Locked Raids (PVE)": false,
    "Eject Enemies From Locked Raids (PVP)": false,
    "Backpacks Can Be Opened": true,
    "Backpacks Plugin Drops At PVE Bases": false,
    "Backpacks Plugin Drops At PVP Bases": false,
    "Players Can Loot Alive Players (PVP)": true,
    "Players Cannot Loot Wounded Players": false,
    "Corpses Can Be Looted By Anyone": true,
    "Abandoned Privilege Ui": {
      "Show Time Limit UI When TC Is Accessed": true,
      "Do not calculate your time when using noclip or vanish": true,
      "Text Color": "#FFFFFF",
      "Text Alpha": 1.0,
      "Offset Min": "-473.401 -269.437",
      "Offset Max": "-261.599 -253.963"
    }
  },
  "Messages": {
    "Advanced Alerts UI": {
      "Enabled": true,
      "Anchor Min": "0.35 0.85",
      "Anchor Max": "0.65 0.95",
      "Time Shown": 5.0
    },
    "Notify Plugin - Type (-1 = disabled)": 0,
    "UI Popup Interval": 1.0,
    "Send Messages To Player": true,
    "Send Base Is Active Message": true,
    "Send Global Message When Players Claim A Base": false,
    "Message Raiders When An Event Is Completed": true,
    "Message Raiders When Event Ends During Automated Cancellation": true,
    "Message Players Within X Meters When An Event Is Completed": 8000.0,
    "Message Entering Players When They Have An Event Cooldown": true
  },
  "Discord Messages Plugin Settings": {
    "Webhook URL": "xxx",
    "On Event Start": true,
    "On Event End": true,
    "On Event Claim": true,
    "On Event Cancel": true,
    "On Event Unlock": true
  },
  "Run Once On Server Startup": false,
  "Run Every X Seconds": 3600.0,
  "Kill Inactive Sleepers": false,
  "Move Inventory To Boxes Before Kill Inactive Sleepers": false,
  "Move Inventory Blacklist Shortnames": [
    "rock",
    "torch"
  ],
  "Let Players Kill Abandoned Sleepers": true,
  "Remove Ownership From Bases": true,
  "Remove Ownership From Containers": true,
  "Remove Ownership When Despawn Timer Is Zero": false,
  "Steam Chat ID": 76561199564930233,
  "Use Log File": true,
  "Extended Distance To Spawn Away From Zone Manager Zones": 25.0,
  "Allowed Zone Manager Zones": [
    "pvp",
    "99999999"
  ]
}

 

image.png

image.png

Link to comment
Share on other sites
nivex

Posted (edited)

@NoxiousPluK

hi, that is nothing to worry about and won't affect any bases that aren't abandoned. you can reduce Sphere Radius or enable Use Dynamic Sphere Radius, but it will still overlap bases when players build too closely.

I recommend enabling Use Dynamic Sphere Radius so that it doesn't use Sphere Radius of 50 for every base. if you adjust Sphere Radius and it's too small and a base is larger than the actual radius of the base then it cannot work properly. by using Use Dynamic Sphere Radius it will make the radius the size it should be, and pad it slightly with Padding Added Onto Dynamic Radius. the radius will not exceed Max Dynamic Radius, so if you have large bases on your server then you will need to adjust it to accommodate the larger size bases

  • "Sphere Radius": 50.0,
  • "Sphere Radius (Legacy Shelter)": 25.0,
  • "Use Dynamic Sphere Radius": true,
  • "Max Dynamic Radius": 75.0,
  • "Padding Added Onto Dynamic Radius": 9.0,
  • "Min Custom Sphere Radius": 25.0,
  • "Max Custom Sphere Radius": 75.0,
Edited by nivex
  • Love 1
Link to comment
Share on other sites

Ah so the non-abandoned bases can not be damaged? Then it'll just be a slight inconvenience for people living there 😉 Sometimes the entire neighboring base is inside the bubble.

Thanks. I had dynamic spheres enabled before but the problem seemed bigger - will try again!

  • Like 1
Link to comment
Share on other sites

Is there a way to debug why a base would not convert?

For example the base below has been inactive for over two weeks; however there is someone online and living in the wooden 2x2 right next to it.
No admins or active players are authorized on the TCs

If I use /sab, it does not get converted (in fact, 0 bases got converted while there should be multiple).
If I authorize on main TC and use /sar (and confirmation code); I get zero response back and it does not convert (but I'm in exclude group)

image.png.15e5bf44dba9e123bca1afaa4ee78aa1.png

Same config as posted above, except that I now have Dynamic Sphere Radius enabled.
All players are a member of abandonedbases.basic

Edited by NoxiousPluK
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Like 8
  • Love 10

User Feedback

1.3m

Downloads

Total number of downloads.

6.5k

Customers

Total customers served.

95.9k

Files Sold

Total number of files sold.

1.9m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.