I don’t know how larger the game state/save game is, but if it’s small enough for a url parameter, they might even use their CDN for caching, as I would assume the same state always results in the same game output. If you don’t deviate from paths of previous players, you could sail along a cached path, no computation required :)
"Remember Doom? I love that game, but is there any way we could make it less... well... efficient?"
This is one of those projects that sounds neat at first, but the more you think about it you're left with an overwhelming question of why. Since serverless platforms charge you per API call this would be tremendously more expensive than just about any other approach that already exists today as the game would be making tens of thousands of API calls per user per session.
Neat idea, but the term "serverless" is still incredibly stupid and misleading. Go ahead and run any of this stuff without a server. Go ahead. I'll wait.
Cool write up, but no short demo or repo? Or did I somehow miss that?
Serverless Doom.
Cloud, clouds everywhere.
If kentonv or someone else at Cloudflare is paying attention, I think Doom would make a good demo for Cloudflare's new edge containers (currently in private preview) [1].
Edit: Or maybe Doom would be a good demo of Workers Unbound and Durable Objects. After all, Fastly just demonstrated that Doom can be ported to wasm, so it clearly doesn't need a whole Linux container.
Does this load the entire wasm binary each request or does it stay warm while playing?
Running Doom on anything and in any form imaginable really is an artform but in this case I can't help but be reminded of the recent "Brainfuck as a Service" post ( https://zserge.com/posts/bfaas/ )