Zone-agnostic PvP event tracker for EQEmu. Logs PvP kills during a timed event, announces kills, keeps temporary per-event stats, and exports results as Markdown (for Discord) and CSV (for spreadsheets). Designed to drop into any zoneโs quests/<zone>/player.lua.
-
Zone-agnostic - auto-detects zone via
eq.get_zone_short_name() -
Zonewide PvP announcements in yellow text --> PvP: Disto has slain Drel! (Event Kills: 3)
-
Temporary event storage - kills/deaths stored with TTL (default ~36h)
- configurable by changing
local EVENT_TTL_SECONDS = 36 * 60 * 60 -- ~36h
- configurable by changing
-
Anti-feed protection - ignores repeat killerโvictim within a timeframe (default 45s) -->
- configurable by changing
local ANTI_FEED_SECONDS = 45
- configurable by changing
-
Sortable leaderboard - ranked by kills, then K/D, then deaths.
-
Exports (GM-only):
- Markdown snapshot for Discord.
- CSV snapshot (per-event).
- Fresh CSV file written in write mode (
w) so each export overwrites the old one.
-
Pagination โ
!event topand!event postsupport N + page.
-
Place the script --> Copy
player.luainto each zone you want to support e.g.:quests/northkarana/player.luaquests/eastcommons/player.lua- โฆ or symlink one copy across zones.
-
Ensure folders exist --> Create
quests/<zone>/folders (Lua wonโt auto-create). -
Reload quests
#reloadquest
-
Run an event --> !event start <optional_name> <optional_minutes>
!event start MYSTERYEVENT4 120
-
Export results (at the end)
!event export
- Outputs:
<zone>_pvp_event_<EID>.md(Markdown snapshot)<zone>_pvp_event_<EID>.csv(CSV snapshot)quests/<zone>/<zone>_event.csv(fresh overwrite each export)
GM Commands
!event start [name] [minutes]- start event (optional label/duration)!event stop- stop the active event!event clear- clear event ID/data!event post [N] [page]- broadcast leaderboard to zone/world!event export- export Markdown + CSV (GM-only)
Player Commands
!event- show help!event me- show your kills/deaths/KD!event top [N] [page]- show top N players (default 10), paginated
On !event export (GM-only):
- Markdown snapshot:
<zone>_pvp_event_<EID>.md - CSV snapshot:
<zone>_pvp_event_<EID>.csv - Fresh CSV (overwrites):
quests/<zone>/<zone>_event.csv