Comment by fsloth

5 years ago

What's specifically not possible with current technology?

For example the "infinitely large simulation world" is an off-the-shelf system (or was the last time I looked https://hadean.com/) .

Sure, it might not work in production but that certainly is not a lie.

Hadean is a general-purpose distributed object system. People have tried to use those for games. EvE Aether Wars used that. They got 10K players in the same space. But it's all spaceships in a big space, not interacting much. Xsolla’s Game Carnival was only 500 users.

Spatial OS is more geographical. They have regions, and dynamic boundaries between them. If more players are in a region, the regions get smaller. Inter-region interactions are possible but slower.

Second Life has fixed-sized regions. Each region talks to its neighbors on four sides. The user's viewer talks to all the regions within visual range of the viewpoint. Assets are stored on AWS front-ended by Akamai. The servers are mostly single-thread per region, because the design is old. Crossing regions works most of the time, and since moving to AWS with faster networking, the delay is usually under 0.5 second. The whole system is sluggish but works reasonably well. (I'm writing a new client for it in safe Rust, using Vulkan and multiple threads. It's going well. The existing C++ client gets CPU bound on the main thread and can't keep the GPU busy.)

  • Disclaimer: I work at Hadean, thought I'd clarify a couple of things

    Yes, the Hadean Platform is a general distributed compute platform. But 'EVE: Aether Wars' used Aether Engine, our spatial simulation engine built on top of the platform (and works similarly to how you describe Spatial OS). Some updated numbers: more recently we've hit 2 million entities with a few hundred CCU.

    In terms of cross-cell ('cell' being our region) interactions, entities moving between cells has been a single tick (at 15-30Hz depending on sim) in all simulations we've built so far - 'EVE: Aether Wars' did torpedo and player transitions, as well as torpedo target tracking across cells and torpedo-ship collisions. We also have a demo of cross-cell PhysX - this has some pretty strict requirements on inter-cell interaction latency.

    Out of curiosity, what would you see as a litmus test for 'simulation with lots of cross-region interactivity'?

    • "CCU"? ConCurrent Users?

      "Let us all join hands around the world".

      No, that's too hard. Crowd scenes, basically. How big a crowd of players, reasonably close to each other although not in physical contact. Clubs, ground battles, etc.

      2 replies →