On Sat, Mar 22, 2014 at 1:43 PM, Kallin Nagelberg <
[email protected]> wrote:

> Thanks for the answer Patrik :)
>

Actually, that one was me, not Patrik.  Threads getting tangled in the
email.


> You're actually cluing into what I'm really interested in here; creating a
> highly scalable solution for a real-time massively multiplayer game..
> something along the lines of a server-side dwarf fortress with massive
> concurrency between all of the entities in the simulation, along with the
> players/influencers.
>

Yeah, I suspected -- this sort of problem tends to come up in games
programming.  The crucial rule is that building a *truly* honest
large-scale simulation is nearly impossible, due to these sorts of
synchronization problems.  So you instead want to focus on producing an
experience that feels synchronous on the player's local level, and which
"plays fair" to a reasonable degree.

(I will note that even playing fair isn't always possible in a high-speed
environment, if the player action time is similar to the network latency.
 One of the nice things about *Shock* was that, since it was cooperative
multiplayer, I could be arbitrarily unfair in favor of the players -- the
bots weren't going to complain about the fact that my algorithms always
erred in favor of the players in case of race conditions.)


> And I agree that for the most part, local sync is the only thing that
> really matters, at least as far as any 'hard' real-time constraints go.
> When I see the low per-instance limits in mmos, or hear about Eve Online
> having to dilate time to support many concurrent users it makes me cringe
> and think that there must be a better way :P
>

Yep.  It's a variant of the problem that I learned the hard way, that you
can't easily take a single-player game and make it multi-player.
 Similarly, if your MMO's architecture isn't built for arbitrary
scalability to begin with, that's eventually going to bite you on the
tuchus.


> Out of curiosity, could I ask where you worked? I find myself sitting here
> at a cafe on Saturday aft listening to a 'best of' 16-bit console music,
> just having missed GDC in my own backyard, and wondering how best to make
> the leap from a career of enterprise software to mmo server tech :)
>

Looking Glass Studios <http://en.wikipedia.org/wiki/Looking_Glass_Studios>,
in its latter days: I built the resource management systems for the game
*Thief*, and most of the peer-to-peer multiplayer systems for the game *System
Shock II*.  (And I was in the middle of building the client/server
multiplayer engine for our next-gen Siege Engine when the company shut
down.)  After that, I and a bunch of other refugees from Looking Glass
spent several years building a highly-generalized peer-to-peer (but not
game-oriented) distributed data engine at a company called Buzzpad.

I will warn that the game industry is still, far as I can tell, pretty
insane -- the ego-boo from working at LG was pretty fabulous, but the work
conditions were a tad abusive, and while I gather that things have improved
somewhat, they are still kind of loony.  That's based on impressions from
my friend who just left Irrational, having been there all the way from *System
Shock II* through *Bioshock*, its spiritual sequel.  He's now striking off
on his own as an indie game developer, which promises to be more fun, but
building an MMO is hard to do as an indie...

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to