Why does it take so long to zone?

Discussion in 'The Veterans' Lounge' started by Metanis, Dec 9, 2017.

  1. Metanis Bad Company

    Working on mules today. Which means a lot of zoning around. And crashing.

    And I'm thinking to myself, I started to play this game on a Pentium 166 on a dial-up connection.

    I'm sitting here running a 6-core CPU at 4.0GHz, with a DSL connection and 80ms ping time, 16GB of RAM, and a 250GB SSD for my EQ folder. And zoning seems to take forever even to zones like the old guild hall which I know is nearly devoid of artifacts or objects.

    Instead of nerfing characters why can't they look at the layers and layers of anti-exploit code, DDoS mitigation code, and God knows what else which results in such poor performance?

    I've watched the zoning process with Wireshark. It's chatty as hell with a lot of unacknowledged packets. If you have a zone with hundreds of objects it's as if every object has to be transmitted one at a time, then acknowledged, then re-transmitted because the EQ server seems to ignore half the ack packets.

    On the off chance it was my ISP I have adjusted my MTU between 576 and 1500 bytes with no improvement to zone times. I'm currently running 1056 which seems to be a sweet spot for my network path.

    (PS, I didn't try to decipher the packets because that would violate the terms of service.)

    (PSS, This just bugs the hell out of me. We are running this 20 year old game on massively faster hardware and Internet speeds and yet it's more sluggish now than ever!. On the Facebook page they were recently reminiscing about the time EQ had 300,000 simultaneous users. I bet 30,000 today would melt down the server room! It's just disappointing.)
  2. Tatanka Joe Schmo

    My rig is way less powerful than yours, and I rarely ever crash on zoning (maybe once a month).

    As to slow, you don't say how long it takes. I see zone times of 12-14 seconds, which doesn't seem bad. You do mention zoning to guild hall. That could take longer, as they have to spool up the instance.
    Xianzu_Monk_Tunare likes this.
  3. svann Augur

    The old guild hall is a special case. That zone does not stay up when no one is in it. So when you try to enter it the server has to load it up. Thats why it takes longer. Same thing with your house, the housing zones, and even ggh if there is no one afk in it keeping it open.
    klanderso and Xianzu_Monk_Tunare like this.
  4. Tucoh Augur

    Ive thought about checking out the traffic in Wireshark just to see what the hell is going on, but figured id finish the exercise more confused and annoyed than when i started.

    My guess: the zoning system in EQ works well enough and is such a disaster underneath that it aint worth opening up. Best just to leave sleeping dogs lie instead of spending a few months of man hours and probably a year plus of persistent player disconnect issues to fix a problem the userbase will tolerate.
  5. Blackburrow23 Elder

    I will have to look at my logs but zoning for me takes around 10 secs or so. I do not believe EQ is 100% optimized for the current hardware on the market ( ie the devs just changed a mobs hp because apparently it has something to do with the database being 32bit... Im not technical enough to know if EQ client uses all 64 bit memory lanes a 64bit OS/Processor allows.) Every mob is downloaded and then loaded into memory when you zone, every hero's forge item on every character in zone is downloaded and put into memory when you zone. The zone itself, textures, NPC models, and sounds are stored locally and need to be loaded into memory every time you zone. Not sure if it ever did work but EQ doesn't have a good cache system. And as far as the GHs are concerned they are instances and need to be spun up when called for plus you have to download every item and placement and load into memory when you zone in. And countless other things are unloaded and loaded into memory when you zone. I wouldn't be surprised if every texture is unloaded and loaded again even if the texture was already available in memory. Turning off sound in the out of game options will decrease zone times. Also you could try stick figures=1 in your eqclient if you want to have some real fun. Your processor does effect zoning more than a SSD does... More/faster memory lanes and maybe processor cache
  6. Metanis Bad Company

    I am aware the old guild hall is instanced and it's still slow even when I know the instance is already spun up because I have a character already standing in there. I used it as an example because it's so sparse of objects which need to be loaded or built before the game lets you in.

    As contrast the Grand Guild Hall will frequently take 4 to 5 minutes of zone time in the evening when we are raiding. It has hundreds or even thousands of objects associated with it.
  7. Repthor Augur

    t

    the game just hates you
    Metanis likes this.
  8. mackal Augur

    The devs did take some time to optimize zoning a bit, it's still not as fast as it could be, but they made it better. I assume the project was far too big for them to make it a lot better.
  9. Tatanka Joe Schmo

    Couldn't be worse than PoK or GL, and those load up in normal time for me, 12-14 seconds.

    Have you talked to your guildies? Is it just you, or do you all see this? And is it just this zone you see the long loading times? Your OP made it sound like this was a general zoning issue. If it's just your GH, maybe there's something in particular with that zone.

    Curious, do others in large guilds see this, too? If we could actually get enough specific info, it could be turned into an actionable ticket.
    Xianzu_Monk_Tunare likes this.
  10. Xianzu_Monk_Tunare Augur

    EQ is a 32 bit game, and as such cannot use all of the 64 bit lanes; thus why you can get enough items on the screen that you cannot see everything when you open all the bags on your person and bank with the big bags available today.

    CPUs over 3ish GHz are still a waste of money; the other parts still cannot keep up. Thus why you see a more noticeable difference when you use SSDs than by upgrading from a 2.8-3.2GHz CPU to a 4GHz one. Similarly, EQ, being a 32-bit game built around code that was started pre-1998 with no future planning at all and fewer notations, cannot make use of the majority of the features that modern CPUs and computers offer without a significant rewrite of the base code which is never going to be worth the effort to do.

    Zoning into the guild hall when someone is in there is no slower for me than zoning into any other zone. Most take less than 5 seconds to load.

    I would almost wonder if this is not some kind of connection issue. With the OP's system waiting on packets from the servers and not getting them; thus having to request them repeatedly to get the whole set of data.
    klanderso likes this.
  11. Zhaunil_AB Augur

    You've answered your question yourself then.

    Even with rudimentary internet connections these days (i.e. 2Mbit down) zoning basically depends only on your memory-usage setting (and HDD speed as a result of that as was said above) and the server-side queuing/chat-system that is involved with the handshakes.
    Plus slight variations when you're also waiting for an instance to spawn.
  12. Speedo New Member

    Also please let us chat while zoning. It would make the wait times a lot more enjoyable.
  13. Sissruukk Rogue One

    Felicite and Fanra like this.
  14. Zhaunil_AB Augur

    Actually, CPU affinity the way it's presented there can very well negatively affect the client (or rather the host computer's) performance. Allowing EQ to run on multiple cores produces overhead (e.g. 2*30% CPU vs. 1*40-50% CPU) compared to when you fix one client to one core.
    Depending on the number of cores, setting CPU affinity in the client.ini CAN work, but i've found it being ignored at times; overall EQ is not at it's best when run multiple times on one machine (things like Task-window bleed-through etc are sideeffects).

    I'd recommend checking and if need be setting the CPU affinity manually per client, as i've had the best results and overall least loss/overhead with that.