Authority
A server-authoritative state holder that replicates its values through attributes.
Authority gives you a typed table of values that lives on an instance's attributes. The server owns the values; clients read the same object and see changes as the attributes replicate. It is the smallest possible way to share state per instance without writing remotes.
Use it when
- You need per-instance state (a door's locked flag, a tycoon's owner) visible to every client without RemoteEvents.
- You want the server to be the only writer, enforced rather than agreed on.
Install
Studio Wally
Using the Studio Wally plugin:
- Open the widget.
- Search
kashtheking/authority. - Press download and choose Shared module (recommended for almost every package).
Wally
Add this to the [dependencies] section of your wally.toml, then run wally install:
Authority = "kashtheking/authority@0.2.3"
local Authority = require(ReplicatedStorage.Packages.Authority)
Dependencies
None. The package is a single module with no dependencies.
Credits
Written by KashTheKing. No third-party code.
API
Every constructor, method, property and type is documented on the Authority API page, generated from the doc comments in init.luau. Each entry links to its line in the source.
Help
Questions and bug reports: the Discord or a GitHub issue. See Help & contact for everything else.