Hi Creators,
We’re launching Server Authority for all games today. Based on your feedback, we want to help you build fair and responsive multiplayer games. This feature makes the server the single source of truth for your game’s state, letting you protect your games while keeping physics responsive.
Why Use Server Authority
Cheating ruins gameplay and hurts your communities. Server Authority solves this at the engine level by running your code authoritatively on the server, which automatically rejects invalid client movements. It’s paired with client prediction and rollback, so your client predicts inputs instantly and resimulates to match the server if a misprediction happens, keeping gameplay snappy. The result is consistent, fair physics for character movement, vehicles, and sports across every device and connection. In short, this new netcode empowers you to write server-side behaviors without latency, unlocking more gameplay options for any game.
What’s New
Boosted Performance and Reduced Mispredictions
We’ve made some improvements since launching the Client Beta. We’ve built a stronger foundation by boosting performance and reducing mispredictions across the board. Server Authority is easy to turn on for basic characters and objects simulated by the engine, and it protects your games from cheating while keeping physics responsive.
- Mispredictions: Lowered mispredictions across a range of gameplay scenarios.
- Performance: Improved framerate on lower-end devices
- Backpacks and Tools: Now fully supported in Server Authority
Tools To Simplify Your Setup
Based on your feedback, we’ve recently shipped two features to support your workflow:
-
Instance Streaming Conversion Skill: An experimental AI skill you can use with MCP that converts your non-streaming game to streaming, which Server Authority requires.
-
Network Simulation in Studio: Upgraded testing tools that let you check how your game responds to poor network conditions, high latency, and packet loss.
These features make it easier to adjust your scripts and verify that your prediction logic works well under real-world conditions.
How to Get Started
Follow these steps to enable Server Authority:
- Open the Workspace Properties Window: In Studio, locate the Server Authority section in the Workspace Properties panel
- Toggle AuthorityMode to Server. You should see this:
- Setting AuthorityMode to Server automatically sets the following five required engine settings:
NextGenerationReplicationset to Enabled.PlayerScriptsUseInputActionSystemset to Enabled.SignalBehaviorset to Deferred.StreamingEnabledset to Enabled.UseFixedSimulationset to Enabled.
- Save and publish.
If you’re converting an existing game, consider creating a new copy of your game while you work on the changes. Games with complex custom gameplay will need their scripts adapted to use BindToSimulation and InputAction. To simplify your setup, you can use the Instance Streaming Conversion Skill, which is an experimental AI skill that converts your non-streaming game to support instance streaming. You can also use upgraded testing tools to check network simulation in Studio under poor network conditions, high latency, and packet loss.
Resources
For an in-depth guide on how to get started, check out our documentation. If you want to move beyond standard character physics, read our Advanced Techniques Page. It shows you how to apply Server Authority to complex custom gameplay, moving objects, and custom network systems. You can also check out our template games for Racing, Soccer, and Laser Tag to see working examples.
Next Steps and Feedback
We’re just getting started! Expect us to iterate frequently on this technology making it easier to use, reduce mispredictions even further, and deploy general performance improvements. Let us know in the comments how Server Authority performs in your games.
Thank you for all your help on this journey!
The Server Authority Team
Known Issues
Click to view
-
Mobile and console client updates normally lag desktop updates by a few days and won’t be able to connect until that occurs.
-
Animations are limited to eight actively playing tracks per Animator.
-
Attributes have a limit of 64 per instance with limited string size support.
-
Custom emotes, default mood animation logic, and strafing animations aren’t supported in the Animate script.
-
Remote events aren’t synchronized with the shared timeline, so avoid using them if you need them synchronized with
DataModelchanges. -
Changing Tools during a misprediction may delete the Tool’s Weld on the client. This can be fixed by equipping another Tool or unequipping the current Tool.
FAQs
Click to view
Is Server Authority a feature turned on automatically for all games?
- No. Server Authority is opt-in.
Do I have to rewrite my entire game?
-
Not for games using default avatars and simple physics. You can turn on character anti-cheat by simply enabling the prerequisites and setting AuthorityMode=Server. If you’re already building on the latest and greatest engine features, this is super easy!!
You will need to rewrite certain scripts if your game has complex custom gameplay by adapting them to use
BindToSimulationandInputAction.Our documentation walks you through both paths, and the templates demonstrate working examples of each pattern.
Why is StreamingEnabled required?
- Server Authority is built upon the newest networking systems in the Roblox Engine. It uses the Streaming System in part for the Auto Prediction system.
Why does SignalBehavior have to be Deferred?
- We enforce Deferred Signals in the Server Authority system in order to simplify the resimulation process by pushing signal listeners outside of the core simulation loop.
Won’t this add latency?
- Server Authority uses client prediction to keep gameplay feeling responsive and to mask latency. The client predicts the result of your inputs instantly. If the server disagrees, the client corrects smoothly. Creators who’ve tested this during Studio Beta and Early Access report that in practice, gameplay feels responsive, and the tradeoff is a dramatically fairer experience.
What about custom movement abilities?
- Will my dash/flight/boost get flagged? Server Authority doesn’t make arbitrary decisions about what movement is “legal.” You define your game’s physics and abilities through your scripts. The server runs your code authoritatively, so if your game has a dash ability scripted on the client and the server, the server will know about it and won’t reject it. Server authority protects your game from exploiters who will no longer be able to inject movement the server doesn’t expect.
What is Next Generation Replication?
- This is an early preview of an improved Roblox property synchronization system, aimed at reducing latency and fixing long-standing issues (like parts hanging in the air). This is an opt-in feature and available now as a Beta to all experiences; again, this feature is required for Server Authority.
Will you increase how much I can put in Attributes?
- The attribute limitation is part of the “Next Generation Replication” change (mentioned above), and we are actively exploring how we can loosen the restrictions on attribute counts and payload sizes performantly. The initial restrictions were necessary to guarantee the low latency this first version of Server Authority requires.
How is this different from SetNetworkOwner?
-
While SetNetworkOwner allows you to set the ownership of an Instance to the server, it does not compensate for the added latency introduced when communicating an Instance’s changes between the client and the server. That latency makes interactions feel less responsive.
Server authority integrates prediction, rollback, and resimulation into server network ownership, which allows the server to own instances while keeping your games smooth and responsive. It also adds a collection of dedicated APIs so your game loop can support these new features.
Will enabling Server Authority impact server performance?
-
You will see increased server utilization if you enable Server Authority. The impact on your experience depends on whether you were already close to the server utilization limit (e.g., due to heavy server-side physics). If you weren’t close to the limit, the impact will most likely be small.
You can use our Extended Services for Compute product to boost the amount of per-player compute (CPU) resources your game servers receive and improve player performance.
