Skip to content

Troubleshooting

itsneufox edited this page Aug 16, 2026 · 2 revisions

Troubleshooting

Table creation returns INVALID_SHELLGAME_TABLE

Check table arguments, SHELLGAME_MAX_TABLES, and Streamer object/area/actor limits. Try createDealer = false to rule out a dynamic-actor limit.

No prompt appears

Check that the player is inside the table radius and in a supported virtual world/interior. Confirm default UI is not disabled and Streamer is loaded.

First ENTER only shows the offer

Expected: when no valid quote exists, the first press displays one and the next accepts it.

“The shell game objects could not be shown to you”

The required private scene failed a Streamer visibility check. The round is voided and refunded. Check Streamer/plugin versions, visible-object limits, radius multipliers, world/interior, and stream distance.

ShellGame_Start returns false

The player must be connected, human, spawned, on foot, in range and dimension, outside another session, and free of a pending transaction. Default presentation also requires normal camera/control state. Check capacity and affordability.

Custom economy prevents every start

OnShellGamePay, OnShellGamePayout, and OnShellGameRefund must be provided as a complete set.

Player has a pending transaction

Settle or durably persist the failed payout/refund, then call ShellGame_AcknowledgePendingTransaction. Do not acknowledge merely to unblock play.

Dealer is out of sync with another player

Expected on a table whose capacity is 0 or greater than 1: one dealer actor is shared by all sessions and cannot follow separate timelines. Use capacity 1, disable the dealer, or accept it as a cosmetic shared cue.

Camera or controls break during play

An AFK, spectate, cutscene, or other control system is taking ownership. Suppress it while the player has a shell-game state, or disable default shell-game presentation and manage the full lifecycle yourself.

Ball disappears before shuffling

Expected anti-cheat behavior. It is removed once the preview shell closes and recreated after the choice locks.

Unlimited run ended

Log OnShellGameResult and OnShellGameEnd. SHELLGAME_END_COMPLETED means the configured or numeric limit was reached. SHELLGAME_END_INTERNAL_ERROR is an object, timer, presentation, economy, or invariant failure, not a level cap.

Documentation note: This documentation was prepared with assistance from an LLM and manually reviewed. Mistakes can still happen. If you find an error, please open an issue in the repository with the relevant page and suggested correction.