Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ async def setup(bot):
- **activity_stats/**: Discord activity and game statistics tracking (no external deps)
- **albion_auth/**: Albion Online authentication and daily verification system (requires: httpx>=0.14.1)
- **albion_bandits/**: Albion Online bandit event tracking with timing predictions (no external deps)
- **albion_hotzones/**: Albion Online hot zones tracker for red/black zone PvP combat (requires: httpx>=0.14.1)
- **albion_regear/**: Albion Online regear cost calculator (requires: httpx>=0.14.1)
- **assign_roles/**: Role management system (no external deps)
- **empty_voices/**: Voice channel management (no external deps)
Expand Down
68 changes: 68 additions & 0 deletions albion_hotzones/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Albion Hot Zones

Track combat hot zones in Albion Online red and black zones by monitoring recent kill events.

## Features

- **Automatic Polling**: Polls the Albion Online gameinfo API every 2 minutes
- **Recent Activity Tracking**: Tracks kills within the last 14 minutes
- **Battle Zone Grouping**: Groups kills by Battle ID to identify hot zones
- **Red/Black Zone Focus**: Only tracks OPEN_WORLD kills (red and black zones)

## Commands

### `.hotzones`
Show the current hot zones with the most PvP activity.

**Example:**
```
.hotzones
```

Displays:
- Top 10 most active battle zones
- Kill count per zone
- Total fame per zone
- Number of players involved

### `.hotzones top [count]`
Show the top N hot zones (1-20).

**Example:**
```
.hotzones top 5
```

### `.hotzones stats`
Show statistics about the hot zone tracking system.

**Example:**
```
.hotzones stats
```

Displays:
- Number of active battle zones
- Total kills tracked
- Total fame across all zones
- Tracking configuration

## How It Works

1. **Polling**: The cog polls the Albion Online EU gameinfo API (`gameinfo-ams.albiononline.com`) every 2 minutes
2. **Filtering**: Only tracks kills in OPEN_WORLD (red/black zones), ignoring safe zones and arenas
3. **Grouping**: Groups kills by Battle ID - kills with the same Battle ID occurred in the same general area
4. **Tracking Window**: Maintains a sliding 14-minute window of recent kills
5. **Display**: Shows the most active zones sorted by kill count

## Technical Details

- **API Endpoint**: `https://gameinfo-ams.albiononline.com/api/gameinfo/events`
- **Region**: European server (EU)
- **Poll Interval**: 120 seconds (2 minutes)
- **Tracking Window**: 840 seconds (14 minutes)
- **Storage**: In-memory tracking (resets on bot restart)

## Privacy Note

This cog uses publicly available kill data from the Albion Online API. The API does not provide exact zone names for privacy reasons, so battles are identified by their Battle ID number.
9 changes: 9 additions & 0 deletions albion_hotzones/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from .hotzones import AlbionHotZones


async def setup(bot):
await bot.add_cog(AlbionHotZones(bot))


__version__ = "1.0.0"
__author__ = "psykzz"
Loading