5 ms·
How did MMOs like Asheron's Call and Wow handle this?
by crazy_horse 5y ago
How did MMOs like Asheron's Call and Wow handle this?
- mysterydip 5y agoFor WoW, at a very high level, instancing and sharding. Players are spread across realms. The zones are so large that by nature players will be spread out leading to less interactions. Raids are instanced to just your party. In areas with natural congestion (such as auction houses), things could lag at times. While combat and movement is realtime, it's mostly waiting for timers, so the latency and bandwidth requirements are reduced compared to a first person shooter for example.
- jonathanlydall 5y agoWith WoW they would obviously run each continent as an independent “instance”, but for Wrath, they clearly had multiple servers handling Northrend. There were places where mobs would not path over which was where the two “instances” would overlap. WoW later introduced a kind of dynamic overlay of the same open world area from two realms where it was not very populated in the area so that players would be more likely to actually see other players. There was also a feature where you could party up with a friend on a different realm and you would transparently be playing on their server in the open world (with restrictions like not being able to trade with them). I haven’t played WoW since Mysts, so I don’t know how it’s changed since, but WoW was definitely more complicated than just sharding and instancing.
- mysterydip 5y agoYou're correct, I was referring to vanilla WoW which is all I played. It has definitely evolved since then, thanks for the info!
- tialaramex 5y agoYeah, WoW's combat is effectively just a MUD, to the extent your position matters it's only very approximate even though the animations look much more precise. The Darkmoon rabbit fight made this extremely obvious, because the mob is tiny (it's just a rabbit, it's a reference to The Killer Rabbit of Caerbannog in Monty Python and the Holy Grail) but it's a public fight with potentially dozens of people trying to attack this rabbit at the same time with huge swords and casting spells and stuff, which looks completely ridiculous, but it's a joke so, it's OK that it's silly.
- ScaleneTriangle 5y agoIf you look at the developer blogs for EVE Online, you'll have endless reading about massive scale multiplayer servers. Possibly the most technically impressive massively multiplayer experience
- Thaxll 5y agoEvE is one of the worst architecture for an MMO, there is almost nothing to do and yet they need to slow down the simulation loop when there are too many players. I mean when you gameserver is based on Python what else can you do?
- bruce343434 5y agoThey also call servers not being able to keep up and thus the gameloop slowing down "tidi" (time dilation). Like yeah, that's just what happens when a gameserver can't keep up.
- JCharante 5y agoWell no, TIDI had to be added in. It's purposefully slowing down in-game ticks. Normally your requests would just be dropped if it had to process everything within a 1s tick. Now all reload times etc get slowed down by a huge factor depending on load.
- rcxdude 5y agoExactly. It was not something that happened automatically (not would it in almost any architecture). Instead the game would either cease to function properly or players would get disconnected or the server would crash, usually all of those in roughly that order. With TiDi at least things can happen, albeit at a frustratingly glacial pace.
- ScaleneTriangle 5y agoIs there another game that supports direct interaction between everyone in a group of as many players as EVE supports?
- vblanco 5y agoWoW used to run update only twice a second, which gives a lot of time for logic. The WoW game logic is very simple, as the players cant really affect the world other than the enemies they are fighting at that moment. Also, the players are spread around the world and that limits the N^2 problem of players sending data to other players. Events like Gates of Anquiraj made servers break due to clumping too many players in one location. The game also used to do a lot of logic on the clients, for example collision checks would only run in clients, allowing easy flight-hacks. The server really only broadcasts player positions to other players, and manages the combat logic which is basically turn based. In private servers using code you can look at (Mangos) they manage to run 4000+ players on a single gaming-spec machine without much trouble. Its more of a design problem compared to something like minecraft where the simulation is much more detailed. In some research projects for wow private servers people have reached 20.000 simulated players in a given machine.