Publish live L2Off data
Configure online count, rankings, clans, sieges, and bosses for the website
These optional queries power Admin analytics and live sections on the published website. If a query is absent, that section is unavailable; account linking, catalogs, and delivery continue to work.
Characters and rankings
queries.list_characters and queries.list_rankings must alias:
characterId, name, level, classId, race, sex, online,
pvpKills, pkKills, clanNameRaw integer race and sex values are accepted. online accepts SQL Server BIT
or 0/1. Use the pack's builder/access column to exclude staff characters
from public rankings.
list_rankings receives @metric (pvp, pk, or level) and @limit.
Online count returns one numeric column.
Clans
queries.list_clans returns clanId, name, leaderName, level,
memberCount, reputation, and nullable allianceName. The connector accepts
a positive number or a non-empty text id.
Castle sieges
queries.list_sieges returns siegeId, castleName, nullable
ownerClanName, state, and nullable nextSiegeAt, startsAt, endsAt.
States are REGISTRATION, SCHEDULED, IN_PROGRESS, PEACE, or UNKNOWN.
All timestamps must be real UTC datetimes or ISO strings with an offset. Do not return an unlabelled local server time.
Raid and grand bosses
queries.list_bosses returns bossId, name, kind, level, state,
nullable respawnAt, and nullable respawnWindowEndsAt. kind is RAID or
GRAND; state is ALIVE, DEAD, INACTIVE, or UNKNOWN.
What Forgeport handles
The connector validates every row and converts it to the public response. The published website and public website API use only live connector data. An empty list is different from an unavailable or failed query.
Verify
- Run Connector check for every configured query.
- Compare one row from each result with SQL Server and the live game state.
- Confirm every schedule/respawn is correct in UTC.
- Publish the corresponding Website sections and inspect the visible result.