promotional bannermobile promotional banner

PvP Watch

PvP awareness for WoW Retail and Forever. Track hostile players, Lost Contact, KoS targets, estimated enemy cooldowns, and shared group intel. Get configurable alerts for world PvP and battlegrounds, with client-specific modules and readable Blizzard data.
Back to Files

PvPWatch-1.0.14.zip

File namePvPWatch-1.0.14.zip
Uploader
ArcAnvilArcAnvil
Uploaded
Oct 8, 2026
Downloads
35
Size
5.0 MB
Flavors
Retail
File ID
9099103
Type
R
Release
Supported game versions
  • 12.1.0

What's new

PvP Watch 1.0.14

Cumulative changes since 1.0.11

Early Warnings and Enemy Tracking

  • Fixed missing sighting alerts for enemies already stored in the database. Warnings now follow the current encounter rather than only the first-ever sighting.
  • Added a configurable encounter re-arm interval. Returning enemies can trigger another warning after a sufficient observation gap, while continuous contact and brief nameplate flickering do not repeatedly trigger alerts.
  • Exposed the existing KoS once-per-session policy and repeat cooldown in the Alerts settings.
  • Fixed received sighting reports not triggering alerts when Shared intel alerts was enabled. A later local sighting can produce a separate confirmation warning.
  • Prioritized warning decisions before outgoing reports and table refreshes. Missing optional information, such as class or guild, no longer delays an otherwise identifiable contact.
  • Added bounded, on-demand retries for newly available unit tokens with incomplete identity data. Retries stop when the unit disappears, changes identity, the source is disabled, or tracking is paused.
  • Improved acquisition when unit names, faction information or targetability become available after the initial event.
  • Revalidated cached identities and contact expiry before treating a player as currently detected.
  • Prevented display-widget fallbacks from recording merely targetable friendly or neutral players as hostile sightings.

New and Expanded Experimental Scanners

  • Added PvP bounty map reports: an optional source for enemy players marked by Blizzard's native open-world PvP bounty system. These are shown as map reports, not local sightings.
  • Bounty scanning filters out unrelated markers, treasures, rares, friendly players and unsuitable or unreadable reports. Processing and retries are bounded, and an idle scanner does not continuously poll.
  • Added Cast-start contact hints: an optional source that can identify a contact from a readable cast-start event. A cast start does not create a cooldown estimate or claim that a spell hit or targeted you.
  • Expanded pet-owner detection to supported target, focus, mouseover and soft-target pets in addition to nameplates. Owner reports remain indirect and are invalidated when the supporting pet or token changes.
  • Expanded target-chain detection with additional mouseover and soft-target references and prioritized, bounded rotation through nameplate target chains.
  • Added individual controls for the new sources under Tracking & Sources → Experimental Scanning. PvP bounty and cast-start scanning are disabled by default.
  • Improved source shutdown, event cleanup and failure reporting. Failures in the new sources pause the affected source without resetting saved settings or player data.

Contact States, Counters and Positions

  • Reworked contact counts to distinguish Local, KoS, Reports and Lost. Historical records, expired evidence and stale token caches no longer inflate current local counts.
  • Classified group targets, pet-owner hints and target chains as indirect evidence instead of proof of a nearby local enemy.
  • Kept remote, indirect and map reports separate from local contact and Lost-state handling. An indirect hint does not reset a local Lost cycle.
  • Distinguished your observation position, another player's reported observation position and native Blizzard marker coordinates.
  • Updated tooltips and /dpvp where to show position origin and age. Historical coordinates remain available as last-known information rather than appearing current.
  • Suppressed stale range information on remote, indirect and map reports. Current local range text requires a fresh local sample.
  • Corrected the age of positions received in delayed sighting messages. Heartbeats without position data no longer make old coordinates appear newly observed.
  • Renamed the Nearby counter option to Contact counts and updated its tooltip without resetting the existing setting.

Shared Intel and Communication

  • Fixed addon-message registration and sending checks so unsuccessful sends and numeric error results are no longer treated as success.
  • Failed sends no longer consume the suppression interval intended for successfully transmitted messages.
  • Strengthened validation of sender identity, group membership, spell IDs, timestamps, finite numeric values, durations, remaining time and enabled filters.
  • Added explicit map and instance context to outgoing cooldown reports. Mismatching context is rejected, and context-less older reports require supporting evidence.
  • Validated sharing context before updating player metadata or positions, preventing unrelated reports from overwriting local information.
  • Accounted for transmission delay in sighting lifetimes and cooldown reports. Messages that expire in transit cannot renew an active contact.
  • Protected fresh local observations from near-simultaneous forwarded duplicates and less reliable remote information.
  • Preserved communication prefixes and the existing protocol generation. Stricter validation may reject incompatible or insufficiently verified reports from older versions.

Cooldowns and Team Tracking

  • Fixed raid-member detection, restoring tracking for valid raid units that were incorrectly rejected.
  • Preserved cooldown and interrupt timers for remaining group members during roster changes. Incomplete roster data no longer triggers a blanket timer reset.
  • Removed automatic minimum-interval cooldown learning. Charges, resets and duplicate observations no longer silently shorten the base cooldown estimate.
  • Deduplicated the same cast observed through multiple unit tokens or related events.
  • Fixed restoration of saved enemy cooldowns after a full client restart by using absolute expiry timestamps rather than the previous session's time base.
  • Discarded expired, invalid, previously shortened or outdated temporary estimates instead of restoring misleading timers.
  • Corrected base estimates for Kidney Shot: 30 seconds, Counterspell: 25 seconds and Psychic Scream: 40 seconds.
  • Removed Netherwalk and the former standalone Renewing Blaze use from the active cooldown catalog.
  • Improved consistency between enemy cooldown lists and the target-only cooldown bar.
  • Clearly labeled cooldown expiry and readiness indications as estimates in tooltips, messages, options and team displays.

Targeting and General Stability

  • Improved realm-qualified identity matching, including the target-only cooldown bar, to prevent confusing players with identical names on different realms.
  • Protected unrelated user macros from being overwritten by a name collision. Only identified PvP Watch macros are updated; identical legacy contents can be reused unchanged.
  • Rechecked unit identity and request age before applying asynchronous Inspect results, preventing information from being assigned to the wrong player after a target change.
  • Avoided clearing shared Inspect state belonging to another consumer.
  • Fixed UI updates becoming permanently blocked after an exception. Update guards are released while the original error remains reportable.
  • Applied the main enabled state and activity filters consistently to recording, scans, cooldowns, communication and target displays, while retaining necessary cleanup.
  • Rejected invalid, non-finite and restricted values before identity or timer processing.
  • Corrected the modern PvP scoreboard import path. Scoreboard data remains metadata and does not create local sightings.
  • Fixed experimental scanner failures being overwritten by a generic successful status.
  • Allowed normal keyboard input to pass through an open context menu while preserving Escape-to-close behavior.

Performance Improvements

  • Avoided processing the same nameplate token multiple times within one scan while retaining the repair fallback.
  • Reused unit-token lookups and validated cooldown snapshots within an update, with identity checks before reusing positive results.
  • Added bounded text-width caching that accounts for font, size and scale without changing existing window layouts.
  • Removed redundant Enemy Cooldowns updates while retaining updates when Main Watch is hidden.
  • Made the existing ticker bus start only when needed and stop when no callbacks remain.
  • Cached range-spell selection briefly and invalidated it on relevant spell, specialization and world changes.
  • Used bounded, event-driven or on-demand processing for the new scanner paths instead of adding another permanent high-frequency full scan.

Interface, Help and Diagnostics

  • Synchronized in-game guides, mode descriptions, command help and documentation with the current scanner and contact model.
  • Added clearer explanations of encounter re-arming, KoS repetition, indirect-contact alerts, map-report alerts and experimental source controls.
  • Improved nameplate diagnostics for enemy visibility, always-show settings and configured distance without automatically changing game settings.
  • Added clearer per-source status, pending-retry information and session-only warning diagnostics.
  • Separated the addon version from the actual WoW client version, build number, build date and Interface version in diagnostic output.
  • Distinguished API availability from readable data and confirmed runtime behavior.

Saved Data and Settings

  • Preserved KoS and Guild KoS entries, notes, player history, window positions, filters and valid user settings.
  • Preserved custom performance intervals and explicit cooldown category selections during updates.
  • Added new settings without a database reset or automatically enabling the new experimental scanners.
  • Retained historical positions with an explicit last-known or unverified origin.
  • Kept existing icons, sounds and other media unchanged.

Important Behavior Notes

  • Cooldown timers remain estimates and do not fully model talents, specialization-specific values, charges or resets.
  • Shared, indirect and map reports do not prove that an enemy is immediately nearby or in the same outdoor phase.
  • Detection depends on information made available by the client. These changes do not provide unrestricted enemy scanning, reveal hidden players or guarantee a warning before every attack.

This mod has no additional files