| There was a time in the late 1990s when it regularly supported 300 active users at once (with a certan amount of lag) I had a pseudo-roguelike server first implemented in Clojure, then in Go that updated 12 frames a second. It could support 250 simultaneous users. It even had Conway's life as an area attack. I had it posted to Show HN. However, the basic design (prototypal inheritance, in-database verbs, ACI[D] tasks, etc) is extremely well proven, and would lend itself well to being copied into a modern distributed system like AWS Lambda. All that's needed is pure functions, soft realtime, and good tooling and APIs. ACID takes some doing, in terms of implementation and will also make scaling complicated, as you mention above. Inheritance? Nice but not necessary. Just let developers inject functions into a game loop, then tell them their load and when their simulation tick rate starts to drop. If you have a use case for this sort of thing I'd love to hear about it. Yes. Something like that could be packaged into MMOGAAS -- Massively Multiplayer Online As A Service. |
That already exists, see Photon Engine's multiple PaaS options https://www.photonengine.com
Different ones have different APIs tuned for different types of gameplay and or Unity3D integration (by mimicking Unity's original networking programming API).
I've implemented them for an MMO I freelanced for a while back and it was pretty painless.