Quote:
One question if I may... ZP intercepts the client before it zones, right? If I understand how it operates correctly, until ZP tells the server that it is ready, the server doesn't actually zone the client. Is that correct?
|
That's exactly how it works. The server tells ZP, "set up this zone, and I'll sit here and wait for 30 seconds for your response". ZP copies the files and sends its response back. Only when the server gets the response (or if it times out after 30 seconds) does it tell the client to zone.
I originally had ZP open the files, overwrite them, and then close them every time you zoned, but it would only work the first time. Let's say you went to a third-party zone. Then you went to a different third-party zone. You have to overwrite the *same* alias zone to do this and tell the client to reload the (same) zone. That's when you run into sharing violations.
It might be possible to use two alias zones and ping-pong between them to alleviate the sharing violation stuff, but the only way to know is to test it. In that case we'd have to use tutorial and some other zone, have ZP tell the server the names of both alias zones and change the server ZP code to accommodate it. I don't think it's all that good of an idea, though.
As for changing servers, one possibility might be to have ZP install all custom content for a server just after login time. You might have to exit and restart the client to completely avoid possible sharing violations, but otherwise it would be really neat if the world server could ask ZP to set up all custom content for that particular server. We could assign subfolders to servers and ZP could merely have to copy everything from a particular subfolder up to the EQ folder before telling the world server that it's ready. It would have to be done after login and *before* the player entered the world, but I think it's possible. ZP could be set to remember the last server for which it was set up to avoid unecessary copying.
WC