Capability reference
Protocol identifiers reported by a connected game server
A capability is one function a game server tells Forgeport it supports. This is the identifier reference for debugging and support; installation guides use human task names and explain how support is enabled.
Required status is family-specific. Choose the relevant feature overview:
L2J features
Builder registrations and required/optional L2J functions.
L2Off features
Queries, catalog paths, and delivery sections in portal.toml.
Metin2 features
Queries and delivery sections supported by the MySQL connector.
Accounts and characters
| Capability | Human task | Result boundary |
|---|---|---|
VERIFY_GAME_CREDENTIALS | Verify a game account before linking it | Valid, invalid, not found, blocked, or temporary error; player-facing errors do not reveal whether an account name exists |
CREATE_GAME_ACCOUNT | Create a game account from the player portal | Created, already exists, invalid name, or temporary failure |
LIST_ACCOUNT_CHARACTERS | Show characters owned by one linked account | Validated character summaries; an empty list is a successful result |
LIST_CHARACTER_SKILLS | Check what the selected character already knows | Known skill ids/levels or unavailable; used to prevent an invalid skill purchase before charging |
GET_ACCOUNT_PREMIUM_STATUS | Show current account Premium expiry and purchase policy | UTC expiry or inactive, plus EXTEND or REPLACE |
Catalog and delivery
| Capability | Human task | Result boundary |
|---|---|---|
SEARCH_GAME_CATALOG | Find items by id or name in Admin | Item id/name plus optional type, grade, and stackable hint |
SEARCH_SKILL_CATALOG | Find skills by id or name in Admin | Skill id/name and maximum level |
DELIVER_ITEM_GRANT | Give a purchased item | Applied, already applied, queued, retryable, refused, permanent failure, or reconciliation required |
DELIVER_SKILL_GRANT | Teach a purchased skill | Same durable delivery outcomes; delivery must never downgrade a known skill |
DELIVER_CURRENCY_GRANT | Credit a supported in-game currency | Account-scoped durable delivery outcome |
DELIVER_ACCOUNT_PREMIUM | Start or extend an account Premium period | Account-scoped durable delivery outcome using the purchased duration |
CHARACTER_SERVICES | Rename a character or change gender | Durable delivery outcome after server-owned validation |
PLAYER_ONLINE_EVENT | Resume a delivery held until login | Published event with normalized account and character id |
UNSTUCK_CHARACTER | Move a stuck character to configured coordinates | Unstuck, wrong online state, not found, or failed |
Status and public data
| Capability | Human task | Result boundary |
|---|---|---|
GET_SERVER_STATUS | Show that the connector is reachable | Derived from the active connector connection |
GET_ONLINE_COUNT | Show the current online-player count | Non-negative count reported with heartbeat data |
LIST_RANKINGS | Show PvP, PK, or level boards | Validated character summaries ordered for the requested metric |
LIST_CLANS | Publish the clan directory | Validated clan rows |
LIST_SIEGES | Publish castle ownership and schedules | Validated states and UTC timestamps |
LIST_BOSSES | Publish raid and grand-boss status | Validated state and optional UTC respawn window |
Delivery outcomes
| Outcome | What Forgeport does |
|---|---|
APPLIED | Completes the command |
ALREADY_APPLIED | Completes a replay without applying it again |
QUEUED | Waits for the connector to report the final server result |
RETRYABLE_FAILURE | Retries or waits for the required player state |
REFUSED | Cancels the order and releases the player's coins |
PERMANENT_FAILURE | Stops retrying |
RECONCILIATION_REQUIRED | Stops automatic replay and requires an owner decision |
Common refusal codes
The connector helpers use CHARACTER_NOT_ON_ACCOUNT, UNKNOWN_ITEM,
UNKNOWN_SKILL, and SKILL_ALREADY_KNOWN. Character services and queued
delivery also use CHARACTER_NAME_TAKEN, RESERVED_CHARACTER_NAME,
INVALID_CHARACTER_NAME, KAMAEL_GENDER_LOCKED, GENDER_UNCHANGED,
DELIVERY_FAILED, and DELIVERY_EXPIRED. Unknown server codes are preserved
for diagnostics and shown to players as a generic refusal with coins returned.
For payload examples used during gateway debugging, see the protocol v1 reference.