Jump to content

3 Screenshots

depends on

Works with

About Player Base PVP Zones

Introduction

Automatically manages PVP zones for player bases, legacy shelters and tugboats.

Features

  • Manages its own Zone Manager zones and maps them as True PVE exclusion zones
    • (Re)creates zones on plugin load and cleans them up on unload
  • Provides tool cupboard based zones:
    •  Configurable creation & deletion delays
    •  Automatic resizing to always encompass the base as building blocks are added/destroyed, with configurable delay
    •  Configurable minimum total base and per-building-block buffer sizes
  • Provides legacy shelter based zones:
    • Configurable zone size
  • Provides tugboat based zones:
    •  Configurable zone size
    •  Zone moves with the tugboat
  • Optional support for visible zone spheres:
    •  Configurable sphere darkness
    •  Option to globally network tugboats to prevent spheres from disappearing
  • Optional support for language file based zone creation/deletion and entry/exit notifications
  • Configurable PVP expiration delay on player exit from zones

Compatibility

  • Hard dependency on Zone Manager for creating zones.
  • Should work with various PVE plugins - tested with TruePVE and SimplePVE.

Configuration

Default configuration:

{
  "Zone creation delay in seconds (excludes tugboat)": 60.0,
  "Zone creation delay notifications (owner only, excludes tugboat)": true,
  "Zone deletion delay in seconds": 300.0,
  "Zone deletion delay notifications (all players in zone)": true,
  "Zone creation/deletion notification prefix": "[PBPZ] ",
  "Zone exit PvP delay in seconds (0 for none)": 5.0,
  "Zone sphere darkness (0 to disable, maximum 10)": 0,
  "Zone entry/exit ZoneManager messages": true,
  "Zone TruePVE mappings ruleset name": "exclude",
  "Building settings": {
    "Building update check delay in seconds": 5.0,
    "Building zone overall minimum radius": 16.0,
    "Building zone per-block minimum radius": 16.0
  },
  "Shelter settings": {
    "Shelter zone radius": 8.0
  },
  "Tugboat settings": {
    "Tugboat force global rendering on/off when spheres enabled (null=skip)": null,
    "Tugboat force enable buoyancy when forcing global rendering": false,
    "Tugboat zone radius": 32.0
  }
}

NOTE: The tugboat rendering options should be left at defaults.

The options are provided for the case that you are running other plugins that force global networking/rendering for tugboats, which can cause spheres to disappear when a tugboat comes back into client render range.This plugin will automatically attempt to synchronize tugboat sphere networking with each tugboat's networking type when (re)creating the spheres.

Developer API

Supported API calls:

string OnPlayerBasePvpDelayQuery(ulong playerID)
  • Provides the ability to query whether a player has an active PVP delay
    • Returns the triggering zone ID if the referenced player has an active PVP delay
    • Returns an empty string If no PVP delay is active

Hooks:

void OnPlayerBasePvpDelayStart(ulong playerID, string zoneID)
  • Called when PVP exit delay is applied to a player as a result of their exiting a base zone
    • playerID is the ID of the triggering player
    • zoneID is the Zone Manager zone ID whose exit triggered the delay
void OnPlayerBasePvpDelayStop(ulong playerID, string zoneID)
  • Called when PVP exit delay expires from a player
    • playerID is the ID of the triggering player
    • zoneID is the Zone Manager zone ID whose exit triggered the delay

Zone Manager / PVE Plugin Integration

Zone Manager zones are maintained for all bases, and are mapped to the configured True PVE ruleset (`exclude` by default). This will cause True PVE to treat them as vanilla areas by default, allowing for PVP to take place.

Zone names are broken into categories in case you want other plugins to recognize them separately:

  • `PlayerBasePVP:building` for building block bases
  • `PlayerBasePVP:shelter` for legacy wood shelters
  • `PlayerBasePVP:tugboat` for tugboats

Developer note: Zone IDs are `PlayerBasePVP:` followed by a unique identifier.

Background

Player Base PVP Zones is meant for hybrid PVP servers that want to allow online raiding. It is meant to complement Dynamic PVP which only provides zones for monuments and events.

Zone Manager is a hard requirement in order to implement moving zones for tugboats, as it doesn't officially support this feature.

A PVE mod is required to make this useful. I only tested with True PVE for various reasons.

Credits

Thanks to the following folks for making this plugin possible:

  • bmgjet (help with / code for tugboat sphere issues)
  • CatMeat & Arainrr (moving Zone Manager zones code examples in Dynamic PVP)
  • Karuza (help with unique entity identifiers & tugboat sphere issues)
  • Kulltero (help with TC/building relationship)
  • WhiteThunder (help with tugboat sphere issues)
  • AFKBank and Mooselips whose bases I took screenshots of on my server during testing 🙂
  • Like 2
  • Love 1

HunterZ's Collection

User Feedback

1.5m

Downloads

Total number of downloads.

7k

Customers

Total customers served.

105.3k

Files Sold

Total number of files sold.

2.1m

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.