Reminds me of Croquet (a foss real-time 3d multiverse system similar to second life) and the TeaTime protocol&#x2F;system:<p><a href="http:&#x2F;&#x2F;dl.acm.org&#x2F;citation.cfm?doid=1094855.1094861&amp;preflayout=flat" rel="nofollow">http:&#x2F;&#x2F;dl.acm.org&#x2F;citation.cfm?doid=1094855.1094861&amp;preflayo...</a> (sadly paywalled)<p>Essentialky if you model your world&#x2F;simulation as objects and events&#x2F;messages, and you can isolate input (user input, possibly clock ticks) - and you can order external inputs in a (distributed&#x2F;consistent) log (a la apache kafka) - then you can have a simulation that runs in parallel and lock-step across many clients.