> Cloud gaming substitutes reconciling these n+1 simulations with some input latency for each player.
You're just pitching the naive networking model that every developer starts with (because it's trivial) until they realize how horrendous it is to wait 100ms on every single input.
Also, it's not "some input latency", it's the full latency of the entire round trip. From input to server (40ms) and then video to client (40ms) just to see how an action you did 80ms ago panned out.
You've eliminated none of the trade-offs, just exchanged one frustration (dying even though you shot someone before they shot you) with another (watching a delayed video feed of them shooting you while you wait for your input to cross the network).
There's a reason why client simulation is ubiquitous. Btw, lag compensation is really hard and nobody would want to do it if they could get away with the naive networking model.
The raw controller input latency / controller polling rate.
The time it takes for your packet to get to the server.
The number of packets per second you're sending to the serve (e.g. 100pps).
The server processing time per frame.
The server frame rate.
The time it takes for the packet to get back.
The frame rate of the client machine.
Whether Vsync is enabled (more latency).
The time it takes to transfer a frame of rgb data to the monitor.
The monitor frame rate and processing time per frame.
The pixel response time of the pixels on the monitor.
If we're doing cloud gaming. we also need to add latency stages for encoding and decoding video and how long it takes to download each frame of video.
By simulating everything client side you remove a ton of stages in this latency pipeline.
Of course, most people who play games don't like that - including myself.
However, a large game like that would need a large budget to back it. Without Stadia being more popular I don't see anyone throwing all their eggs in that basket. Because it could only run on Stadia and nowhere else.
One way to mitigate risk would have been to build for both Luna (Amazon) and Stadia. But neither are very popular, and one is Windows-only while the other is Linux-only. So my risk would actually double, not mitigate since I have to develop for two platforms.
I'm ignoring xCloud since it's just a bunch of Xboxes and no thanks.
For smaller, mid-size/indie studios which are not building a massively multiplayer game, I just don't see the up side of making a Stadia-only game. They wouldn't be trivially portable to other platforms and players have learnt to live with network latencies.
So, unless a Google-owned studio does it, I don't see truly cloud-first multiplayer game happening. Assuming that's what you meant by "cloud first".
OTOH Ubisoft does ship their games on Stadia and I'd be curious to know if the experience in, for example, The Division 2 is any better. Even if the game doesn't scale the number of players in an instance, they should still get some benefit of being on Stadia. It doesn't seem to be a very popular mode in the game's subreddit though.
If you're interesting in this sort of thing, check out [2] which goes into depth on how to synchronise game simulations in a bunch of different ways.
[1] https://www.gamasutra.com/view/feature/131503/1500_archers_o...
Currently in any kind of client-server multiplayer game out there you face n+1 game states (n is the number of players) and a lot of the art is in how to reconcile these. The n+1 is due to most games implementing some degree of client autonomy (e.g. in movement), and the reality of network round trips from each client causing everyone to be slightly out of sync. A concrete example of how this affects players is the experience of being shot after narrowly escaping behind cover in an FPS.
Cloud gaming substitutes reconciling these n+1 simulations with some input latency for each player. I think this could produce some qualitatively better experiences for certain games. In particular, Fall Guys is a recent game that I think would play better as a cloud first experience.
The interaction between players in Fall Guys is grabbing other players who are near to you. Due to the network latency many players have the experience of being grabbed by folks nowhere near them. A cloud first version of the game would eliminate this problem that simply can’t be solved otherwise.