Browse docs
Animal form
Animal form lets an authorized player character become an eligible animal. It is separate from buying and controlling an owned pet. The feature is enabled by default through Config.AnimalMenu, but access still requires an explicit grant or the configured command permission.
Grant and open access
An administrator or another server resource can grant a player access with GiveAnimalAccess(target), revoke it with RemoveAnimalAccess(target), query it with HasAnimalAccess(target), or ask the server to open the editor with OpenAnimalMenu(source). The target accepts an online player source or a validated persistent identifier. See Exports for return values and working examples.
Eligible dog forms follow the active breed configuration. The normal command is /animalmenu, and a client resource may call its OpenAnimalMenu() export. The server checks the current grant, player state and nearby players. By default, another player within 50 m in the same routing bucket blocks transformation. The client cannot bypass this by selecting a model or claiming access.
Recovery and appearance
The resource saves a snapshot of the human appearance before changing form and restores it when the player returns to human form, loses access, or an active breed becomes unavailable. Saved form selection and grant state persist. The appearance provider's completion event can be configured in Config.AnimalMenu.appearanceReadyEvents so restoration runs after the normal character skin is ready.
Use this feature first with a test character and verify form, camera, return to human appearance, reconnect and a nearby-player rejection in FiveM. Browser previews cannot prove the appearance provider or model state in game.