Reviewed October 6, 2026. This page covers the root, registered subcommands and documented internal actions.
Registration permissions
| Registration | Handler | Required status (local DB, Oct 6) | Implementation |
|---|---|---|---|
/friend_add |
108 | 0 | Implemented |
Add a character in your friends list.
Implementation: Implemented.
Syntax
/friend_add [character_name]
Arguments
Position is zero-based in sep, after a registered database subcommand has been removed. Internal action tokens remain at position 0. Angle brackets are required; square brackets are optional. Alternative forms may change field meanings.
| Position | Argument | Accepted value / type | Meaning |
|---|---|---|---|
| 0 | character_name |
text | Optional name; otherwise uses the selected player. |
Behavior and restrictions
The active handler performs the operation described above after the registration permission check.
Current argument/client/target checks (exact source excerpts; branch-dependent):
else if(cmdTarget && cmdTarget->IsPlayer())
Permissions
Local database snapshot, October 6, 2026: /friend_add requires status 0 (handler 108). Other worlds may configure different values.
The dispatcher checks the resolved registration status before invoking the handler. In-handler guild, group, ownership, client-version and target checks still apply.
Examples
The syntax forms above are the source-based invocation examples. Replace identifiers with values valid for your world; client callback fields are supplied by the game client.
Source evidence
Dispatch: COMMAND_FRIEND_ADD (handler 108).
WorldServer/Commands/Commands.cpp:3794—COMMAND_FRIEND_ADD.
Reviewed local revision: 9efddf962ffee075d0db2059d3914c36b0acbdf3; working-tree file checksums identify the exact reviewed bytes. Reviewed dispatch/helper evidence · Reconciliation report.
Original upstream Markdown · Archived original. The original text is historical evidence; the corrected contract above takes precedence.