Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Development > Archive::Tools

Archive::Tools Archive area for Tools's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 03-12-2004, 11:40 AM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default EQEmu 0.5.5-DR1-ZP

I've uploaded a modified version of EQEmu 0.5.5-DR1 that's compatible with ZoneProxy and will let players play on zones created with OpenZone. The archive includes sources and compiled binaries, and I encourage anyone capable of running a server to check it out. All ZoneProxy-related changes are contained in #ifdef...#endif blocks so as not to interfere with normal server code (hint -- please, pretty please, consider putting this into CVS).

The ZP-related changes in this version are a bit different than those for earlier versions. First, it appears that ServerZoneEntry_Struct->zone_id doesn't exist anymore (it was redundant, actually) and the client seems to look only at the zone ID as transmitted in the player proffile struct. The code in this version reflects the change.

Secondly, this version will always spit out a line to players whenever they zone that tells them whether the server found ZoneProxy running on their PC. I'm hoping that this will assist people in getting ZoneProxy running.

After I finish typing this I'll get my server back up so people can play with it, using the 0.5.5 code instead of the 0.5.3 code (so remember to switch to your newer clients). There are four ZoneProxy-enabled zones ready to be explored, and I invite people to come in and check them out. The purpose of this (temporary) server is to show what OpenZone can do and try to convince people to start building custom zones.

Here's a quick checklist for getting ZoneProxy running on your PC:

1. Go download ZoneProxy 1.3 and unzip it into your EQ folder. If you want to make a shortcut to it, make sure that the "run in" folder is correctly set, or just run it from within that folder.

2. If you're behind a firewall or router (like my Linksys router), make sure that port 8800 is being forwarded to your LAN IP address. You can find out what your address is by opening a DOS prompt and typing "ipconfig".

3. Start ZoneProxy BEFORE starting your EQ client. You can minimize it if you wish or just move it to the side.

4. Start your EQ client. Before logging in, go into Options and make sure that texture caching is turned OFF. This is critical or textures in the ZoneProxy-enabled zones won't look right.

5. Log in to my server (or any other ZoneProxy-enabled server). On my server, you should create an elf/dwarf/gnome, since you'll have to go to gfay to get to the ZoneProxy-enabled zones.

6. Read the MOTD once you're ingame. I have instructions there on how to get to the new zones. Don't worry about getting back: there's a PoK book in the first zone you enter that takes you back to gfay.

That's it. I hope to see many visitors...in someplace "new" :P

WC

P.S. You can get EQEmu-0.5.5-DR1-ZP here:

http://prdownloads.sourceforge.net/e...P.zip?download
Reply With Quote
  #2  
Old 03-12-2004, 12:41 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

I'm sitting here seeing repeated loigns and logouts, so I'm led to believe that someone is having trouble getting ZoneProxy running (or getting it so that the server can see it). Here's a walkthrough of what I do to get mine running, in the hope that the example might help.

1. My ZoneProxy.exe is in the same folder as my EQ folder. This is critical, since ZP looks in its folder for the zone files.

2. I sit behind a Linksys router, so I have to have incoming requests on port 8800 redirected to my LAN IP address. Therefore, the first thing I do is open up a DOS prompt and type "ipconfig". This gives me an address of, for example, 192.168.1.105.

3. I then go into my router configuration. I do this by opening up a browser and connecting to http://192.168.1.1, which is the router's address on my LAN. It prompts me for a username and password, and after typing in the appropriate values it gives me the configuration webpage.

4. On my router I then click on the orange "Advanced" tab, which gives me a different screen. I then click on the "Forwarding" tab. I add an enty for ZoneProxy, and under "Ext. Port" I enter 8800 in both the begin and end port range values. I then check both the TCP and UDP checkboxes, and in the destination IP address I enter 105 (the 192.168.1. part is entered for me). I then check the enable checkbox and click Apply.

Note that this is for *my* router, but if you have something similar it might help. Make sure to read your router documentation and look for TCP or port forwarding.

WC
Reply With Quote
  #3  
Old 03-12-2004, 12:57 PM
Jezebell
Discordant
 
Join Date: Feb 2004
Location: Florida
Posts: 441
Default

Thanks alot WC, I will definately check it out.
Reply With Quote
  #4  
Old 03-12-2004, 01:39 PM
Jezebell
Discordant
 
Join Date: Feb 2004
Location: Florida
Posts: 441
Default

Btw WC, was just curious, i copied all the zonepack zones to my EQ folder but I can't access them in game, what do i need to change so that I can access them on my server?
__________________
Eru, the Creator of Arda
ServerOwner for The First Age
An EQEMulator Roleplaying [Custom-Legit] Server
The First Age Website

Running on: Asus A7N8X-Deluxe, AMD Athlon XP 2100+, Geil 1024MB PC3200 Ultra DDR RAM,
WD 40GB 7200rpm ATA-100 HDD, Visiontek 128MB Geforce4 TI 4400, Windows XP Pro SP2
Reply With Quote
  #5  
Old 03-12-2004, 02:02 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

I take it you've tried logging in and you're getting a message that ZP wasn't found. I don't know if it will help, but I just upgraded my server to use a newer version of 0.5.5-DR1. I'd give it another try. I'm going to build another archive with the newer files and re-upload it to SourceForge.

If that isn't the cause: here are some things I need to ask:

1. Do you use a hardware firewall or router?

2. Do you use a software firewall or router (like Norton Internet Security, Windows XP firewall, or ZoneAlarm)?

3. Is ZoneProxy running in your EQ folder, and did you make sure to unzip zoneproxy.ini there as well?
Reply With Quote
  #6  
Old 03-12-2004, 02:12 PM
Jezebell
Discordant
 
Join Date: Feb 2004
Location: Florida
Posts: 441
Default

I'm sorry, this might be a little bit off topic. Let me clear up what I was asking.

I downloaded the zonepack you uploaded with the custom zones in it and I extracted them to my Everquest folder.

When I log into MY server and type #zone windszone it says the zone is invalid. Do I need to add something to the database to get Zone.exe to recognize the zone or is it something that is coded into the binary?
__________________
Eru, the Creator of Arda
ServerOwner for The First Age
An EQEMulator Roleplaying [Custom-Legit] Server
The First Age Website

Running on: Asus A7N8X-Deluxe, AMD Athlon XP 2100+, Geil 1024MB PC3200 Ultra DDR RAM,
WD 40GB 7200rpm ATA-100 HDD, Visiontek 128MB Geforce4 TI 4400, Windows XP Pro SP2
Reply With Quote
  #7  
Old 03-12-2004, 02:17 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

Ah, hehe. For *server operators*, there is an additional step you need to take:

1. Add another column to the zone table. The modified server code will look for a column called "thirdparty", where it should contain 0 for all normal zones and 1 for all third party zones. You can make the change by doing something like this:

Code:
C:
cd\mysql\bin
mysql
use eq
alter table zone add thirdparty int(2) unsigned default '0';
quit
Then you need to add zone entries for all of the new zones (like "windszone") and set thirdparty to 1 for them.

There is a sticky in the 3rd party section that explains this in greater detail, but this is the crux of it. Of course, it's a good idea to set things like zone points, safe points etc. if you want other people to play in the zones...I wouldn't mind dumping the pertinent parts of my db and posting them, but I don't know how to do that...


In addition to this, if you have your server on a LAN and you want to access ZP zones from inside the same LAN, you either need to use a dynamic DNS service like dyndns or you might have to make a change to world/client.cpp. This is because world.exe might/will see the address of your router on incoming connections and it won't then be able to make an outgoing connection to ZP. My server code differs from what I uploaded in that I have a statement that substitutes my actual WAN IP address when it sees the router's internal address so the outgoing connection will work. If you're using minilogin this may or may not be a problem, I'm not sure. Of course, this whole issue could simply be because of a bug in my Linksys router's firmware and not affect anyone else...
Reply With Quote
  #8  
Old 03-12-2004, 02:21 PM
Jezebell
Discordant
 
Join Date: Feb 2004
Location: Florida
Posts: 441
Default

Ahhh, great thanks alot, I love your applications, very very useful. Did you see the post I made on this thread http://www.eqemulator.net/forums/viewtopic.php?t=13104 about EQEmu Admin 5.2 tool?
__________________
Eru, the Creator of Arda
ServerOwner for The First Age
An EQEMulator Roleplaying [Custom-Legit] Server
The First Age Website

Running on: Asus A7N8X-Deluxe, AMD Athlon XP 2100+, Geil 1024MB PC3200 Ultra DDR RAM,
WD 40GB 7200rpm ATA-100 HDD, Visiontek 128MB Geforce4 TI 4400, Windows XP Pro SP2
Reply With Quote
  #9  
Old 03-12-2004, 02:23 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

Yup. it's just a question of getting to it :P

WC
Reply With Quote
  #10  
Old 03-12-2004, 02:55 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

I just re-uploaded a version of 0.5.5-DR1-ZP that uses the newer 2/29 code from Shawn319's site. I suggest giving it half an hour or so to make it to the mirrors, but then it should be okay to download.

WC
Reply With Quote
  #11  
Old 03-12-2004, 04:21 PM
Shadow-Wolf
Dragon
 
Join Date: Oct 2003
Posts: 511
Default

i had a heart attack when i read this wind so cool! lemme make sure i have the zones in my eq folder and ill log in soon!
Reply With Quote
  #12  
Old 03-12-2004, 04:32 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

I found another problen with the ZP code and I'm testing a fix, so feel free to log in to help me test it :P

The problem is that the time it takes to look for ZoneProxy and wait for it to set up the zone is stopping all other aspects of the world server in the meantime, so I'm currently testing a server where Client::EnterWorld() is run in a separate thread. Hopefully this will alleviate the problem, but I need people to log in to be sure. If it works, I'll package it and re-upload 0.5.5-DR1-ZP yet again.

WC

Edit: It's close, but not quite right. I think I need to add some mutex'es wherever EnterWorld() touches the zone server. It'll take maybe half an hour to change the code and bring the server back up.
Reply With Quote
  #13  
Old 03-12-2004, 05:30 PM
Shadow-Wolf
Dragon
 
Join Date: Oct 2003
Posts: 511
Default

lol i crashed from some strange reason and when i got back to character choice from server login you closed the server =/
Reply With Quote
  #14  
Old 03-12-2004, 05:35 PM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

The code wasn't thread safe and the crash was from the world server crashing. I think the problem was from more than one person logging in at the same time. I just added some mutex calls to try to prevent it from happening again and I'm about to bring the server back up to see if it works.

WC

Edit: so far so good. Give it a try.
Reply With Quote
  #15  
Old 03-13-2004, 05:49 AM
Shadow-Wolf
Dragon
 
Join Date: Oct 2003
Posts: 511
Default

awww shit man i was right the whole video is a gig! lol 1.07 gigs to be exact.....
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 07:02 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3