Client Addons

# Client Actor Usage Guide

The client actor addon owns the player interaction menu and client-side actor repository. It is the main launcher for nearby player actions and other Forge client UIs.

# Client Actor Usage Guide

The client actor addon owns the player interaction menu and client-side actor repository. It is the main launcher for nearby player actions and other Forge client UIs.

## Open the Actor Menu

    call forge_client_actor_fnc_openUI;

The actor menu opens `RscActorMenu`, loads `ui/_site/index.html`, and routes browser alerts through `forge_client_actor_fnc_handleUIEvents`.

## Repository

`forge_client_actor_fnc_initRepository` creates `GVAR(ActorRepository)`.

The repository:

- requests actor initialization from the server
- saves actor state through the server actor addon
- caches client-visible actor fields
- applies position, direction, stance, rank, and loadout on JIP sync when the relevant settings allow it
- provides nearby interaction actions to the browser UI

Initialize actor state through the repository:

    GVAR(ActorRepository) call ["init", []];

Save actor state through the server:

    GVAR(ActorRepository) call ["save", [true]];

## Nearby Actions

The menu asks for nearby actions with:

    actor::get::actions

The repository scans objects within 5 meters and returns actions based on mission object variables:

Variable | Action
--- | ---
`storeType` | store
`isAtm` | ATM
`isBank` | bank
`isGarage` | garage
`garageType` | garage subtype
`isLocker` | virtual arsenal action when VA is enabled
`deviceType` | device action placeholder
nearby player unit | player interaction placeholder

The response is pushed into the browser with `updateAvailableActions(...)`.

## Browser Events

Event | Client behavior
--- | ---
`actor::get::actions` | Refresh nearby actions.
`actor::close::menu` | Close actor menu.
`actor::open::atm` | Open bank UI in ATM mode.
`actor::open::bank` | Open bank UI in bank mode.
`actor::open::cad` | Open CAD UI.
`actor::open::garage` | Open garage UI.
`actor::open::vgarage` | Open virtual garage.
`actor::open::org` | Open organization UI.
`actor::open::vlocker` | Open ACE arsenal on `FORGE_Locker_Box`.
`actor::open::phone` | Open phone UI.
`actor::open::store` | Open store UI.

Device and player interaction events currently display placeholder feedback.

## Authoritative State

Actor persistence is server-owned. The client repository requests and displays actor data, but actor creation, durable updates, and hot-state behavior are handled by the server actor addon and extension.

## Related Guides

- Actor Usage Guide
- Client Bank Usage Guide
- Client CAD Usage Guide
- Client Garage Usage Guide
- Client Locker Usage Guide
- Client Organization Usage Guide
- Client Phone Usage Guide
- Client Store Usage Guide

Edit this page or Report an issue

Client Common Usage Guide

The client common addon contains shared browser UI bridge declarations and common client-side browser integration patterns.

Client Bank Usage Guide

The client bank addon opens the bank and ATM browser UI, forwards banking requests to the server bank addon, and pushes account updates back into the browser.