Permission system
VIRTUX uses a permission-based authorization model — not role-based. Every capability is an individual permission string. Users receive permissions through individual grants OR group membership, capped by their subscription tier.
Categories
There are around 30 permissions, organised into seven categories:
- scene.* — edit, save, clear, load, versions, settings, publish, delete
- objects.* — spawn, upload, animate, events
- npc.* — create, edit
- media.* — audio, lights, webview, video, pdf
- players.* — mute, freeze, ban, kick, teleport, voicerange, muteall, globalvoice
- admin.* — permissions, viewlog, analytics, sessions, invite
- chat.* — send, voice, screenshare, broadcast
Owners get everything
The user who created a scene automatically holds every permission for that scene, capped only by their subscription tier. Granting individual permissions is for collaborators and visitors who should have a subset.
Templates
Permission templates are starting points — Moderator, Editor, Presenter, Participant, Spectator. Each template is just a preset list of permission strings; you can adjust any individual permission afterward.