EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Server Code Submissions (https://www.eqemulator.org/forums/forumdisplay.php?f=669)
-   -   Azone Patch (https://www.eqemulator.org/forums/showthread.php?t=25369)

Derision 06-01-2008 10:26 AM

Azone Patch
 
Here is a patch to fix some issues with the version of azone distributed with the server source:

http://www.rama.demon.co.uk/azone.patch

The differences against the stock code are:

Fixes a couple of instances where polys are missed out of a facelist, leaving 'holes' in the ground.
Handles the different size of the Vertex struct in V3 EQGs
Handles all the Titanium EQGs without the need for manual offset hacking
Includes geometry up to Z=3000 rather than Z=620 (Using Z=620 misses the higher parts of zones such
as Frontier Mountains and Dreadlands).

It was mentioned to me that the fear code had some issues in the EQG versions of TutorialB and Lavastorm,
so I generated some new ones with this patch applied and did some testing in those two zones and didn't
see any instances of feared mobs disappearing through walls (although my testing was limited).

KLS 06-01-2008 05:25 PM

Works well, even on some maps that have been problematic in the past such as east wastes.

Angelox 06-01-2008 10:03 PM

I'd say this is a pretty major fix, I can't find anything walking through hills or walls anymore.
Rest of the "hoppers" are gone too.

Thanks Derision!

cavedude 06-01-2008 10:25 PM

I'd have to agree, this patch works very well.

trevius 06-02-2008 01:38 AM

I don't fully understand what that does, so my question is; Does this replace the need for .map files for each and every zone to have LoS? Or is that something completely different? And if this does effect LoS, does that mean that using this will allow the newer Titanium zones like DoD and DoN to work with proper LoS so they can finally be populated and used?

If so, then that is AMAZING lol!

Thanks, and sorry for my ignorance. I haven't read much on the subject of azone, eqg, or .map files to know much of what they do other than I am pretty sure .maps tell the server the 3D layout of the zone for LoS on spells and mob agro.

Or, is this patch just for pathing? Even still, it sounds great and I will be checking it out for sure! I love major breakthroughs like this :D

KLS 06-02-2008 02:22 AM

Azone is the utility that produces the .map files. Currently it has some issues with some maps, even some older ones but especially with some newer ones that this addresses.

John Adams 06-02-2008 03:12 AM

I've always been interested in this little app. I got it to compile with the patch on Linux (FC8) but when I run it on draniksewersa.eqg, it just says unable to open draniksewersa.eqg or s3d. So just to test, I copied over an older zone (dreadlands.s3d) and this one started the Loading dreadlands.s3d, then failed with a Segmentation fault.

Anyone care to give us a refresher course on how this works? Seems a few of you got it to work with no problem. So I must be missing something.

Thanks,
-J

KLS 06-02-2008 05:41 AM

I'm not really sure on the mechanics of running it under a unix system. I actually wasted a day porting it to windows(hooray that was ... fun). Quite simply azone [zonename]. It will add the ext on it's own so it would be azone tutorialb and not azone tutorialb.eqg for example. Beyond that I'm not sure what would cause any such problems, perhaps someone else can comment.

Derision 06-02-2008 06:04 AM

Quote:

Originally Posted by John Adams (Post 149831)
I copied over an older zone (dreadlands.s3d) and this one started the Loading dreadlands.s3d, then failed with a Segmentation fault.

Anyone care to give us a refresher course on how this works? Seems a few of you got it to work with no problem. So I must be missing something.

On Linux it is just a case of make & run.

Are you using binary mode in ftp when copying the files over to your Linux box ?
Just on a hunch I copied one over using ftp and didn't specify binary mode and I get a segfault in S3d_Init:

Code:

entwiss@zaphod ~/EQEmu-0.7.0-1091/utils/azone $ ulimit -c unlimited
entwiss@zaphod ~/EQEmu-0.7.0-1091/utils/azone $ ./azone arena
Loading arena.s3d...
Segmentation fault (core dumped)
entwiss@zaphod ~/EQEmu-0.7.0-1091/utils/azone $ gdb ./azone core
GNU gdb 6.7.1
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /lib/libz.so.1...done.
Loaded symbols for /lib/libz.so.1
Reading symbols from /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6...done.
Loaded symbols for /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1...done.
Loaded symbols for /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Core was generated by `./azone arena'.
Program terminated with signal 11, Segmentation fault.
#0  0x0804ee96 in S3D_Init (obj=0xbfdc96fc, fp=0x8057008) at s3d.c:82
82            obj->files[running] = ftell(fp) - 12;
(gdb)

If you are using an ftp command line client, always enter the 'bin' command before using put or get.

John Adams 06-02-2008 12:56 PM

Ahh ok, I'll try again. Using FileZilla and I think it's set to automatic.

I'll report back if I just noob'd it. :) Thanks both.

John Adams 06-02-2008 01:06 PM

Nah oh well, still gives me the Segmentation fault on dreadlands.s3d using Binary in FileZilla and Windoze command line FTP. I'll mess with it on a few other zone files later.

John Adams 06-02-2008 01:13 PM

Ok the 5 minute rule is a little ridiculous. Sorry about the spam.

Following your commands, here's my simulation;

Code:

[root@vmg-swg azone]# ulimit -c unlimited
[root@vmg-swg azone]# ./azone dreadlands
Loading dreadlands.s3d...
Segmentation fault (core dumped)
[root@vmg-swg azone]# gdb ./azone core.31660
GNU gdb Red Hat Linux (6.6-45.fc8rh)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...
Using host libthread_db library "/lib64/libthread_db.so.1".

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /lib64/libz.so.1...done.
Loaded symbols for /lib64/libz.so.1
Reading symbols from /usr/lib64/libstdc++.so.6...done.
Loaded symbols for /usr/lib64/libstdc++.so.6
Reading symbols from /lib64/libm.so.6...done.
Loaded symbols for /lib64/libm.so.6
Reading symbols from /lib64/libgcc_s.so.1...done.
Loaded symbols for /lib64/libgcc_s.so.1
Reading symbols from /lib64/libc.so.6...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Core was generated by `./azone dreadlands'.
Program terminated with signal 11, Segmentation fault.
#0  0x00000033aba79010 in strcmp () from /lib64/libc.so.6
(gdb)


Oh shit. I just remembered this was a 64-bit OS. Is that a problem? :)

Angelox 06-02-2008 01:15 PM

I made a new map pack and am uploading it to Rathe Forums downloads area. it has all the updated map zone files from the Titanium expansion - it is a large file so it takes a while, I'll post here when its ready.

Derision 06-02-2008 01:51 PM

Quote:

Originally Posted by John Adams (Post 149871)
Oh shit. I just remembered this was a 64-bit OS. Is that a problem? :)

I've not used 64-bit Linux, but it wouldn't surprise me if that is the problem, e.g. the code makes assumptions that certain data types are a given size (e.g. a long integer is 32 bits). If the size or alignment of data types is different for code generated by 64-bit GCC, then that would break things.

Angelox 06-02-2008 02:30 PM

The files are posted at Legacy of the Rathe "general files" in "downloads". You have to be a member in order to see the downloads area - called "New updated Map pack". I also dumped the water maps from Titanium, in case the original dump I got elsewhere was incomplete (posted under "Latest WaterMaps").

John Adams 06-02-2008 02:43 PM

Quote:

Originally Posted by Derision (Post 149877)
I've not used 64-bit Linux, but it wouldn't surprise me if that is the problem, e.g. the code makes assumptions that certain data types are a given size (e.g. a long integer is 32 bits). If the size or alignment of data types is different for code generated by 64-bit GCC, then that would break things.

Ok, sorry for not mentioning that. I forgot, myself... that VM is so old. I'll make a new FC8 x86 VM and try it again.

trevius 06-02-2008 08:55 PM

Quote:

Originally Posted by Angelox (Post 149880)
The files are posted at Legacy of the Rathe "general files" in "downloads". You have to be a member in order to see the downloads area - called "New updated Map pack". I also dumped the water maps from Titanium, in case the original dump I got elsewhere was incomplete (posted under "Latest WaterMaps").

Thanks, Angelox!

I wanted to note that you will have to register on his site before you will be able to see the download.

Also, I was wondering if you redid all of them, or only certain ones?

Angelox 06-02-2008 09:19 PM

I made a GIANT batch file and in it are all s3d zone files i could find in the Titanium edition directory. I figured that's all we really need for this - it must have been around one gig of sd3s when I finally got them all cropped out. I pretty much covered them all. The water maps might have more maps too. What I had before was a mixture of maps I made and downloaded, but now I'm pretty sure I got them all covered with this package, what you see in this package is what I re-did.

Angelox 06-02-2008 10:10 PM

John tells me there's still 100+ zones not in the package - I see Azone does eqg files too now, so I'll do them and post also in a while.

John Adams 06-03-2008 12:40 AM

Aye, I couldn't connect here for a while so I hit you up on your site :)

You could get fancy and use a "for" loop if you wanted to just go through all zone files. But I guess more than zones have the extension s3d and eqg... If you are doing this on linux, I am not sure of the bash command similar to DOS "for / do"

xxarthurxx 06-03-2008 12:56 AM

Quote:

Originally Posted by Angelox (Post 149916)
John tells me there's still 100+ zones not in the package - I see Azone does eqg files too now, so I'll do them and post also in a while.

Thanks so much Angelox! I will be waiting for these impatiently :D

Angelox 06-03-2008 09:56 AM

I only have limited space at the Rathe Forums, and I guess i used it up with the maps package. I'm waiting for Leara to open me up some more for the eqg package. Meanwhile, here's a temporary spot where you can grab it.
When you de-compress this one and unload them into your /Maps be careful what you overwrite! You may already have the proper maps from the s3d dump. I left out Lavastorm and Nektulos since we already have the good ones from the sd3.
But Bazaar and a few more are there and I use the original.
I noticed many more maps that got made (i didn't have) in this one.
If anyone sees any other map they want made, post and i'll do it.

erde 06-03-2008 10:48 AM

Thanx Angelox!

I have setup a mirror for the map archives.

eqg_maps.tar.gz
NewMaps.tar.gz
NewWaterMaps.tar.gz

So_1337 06-03-2008 11:15 AM

Great work Derision, and thanks for the hosting and mirrors, Angelox and Erde :)

John Adams 06-03-2008 12:26 PM

Nice work, Angelox. Thanks for doing this. I'll test them out today. I am a little confused by what you mean by "we already have good ones from s3d". Aren't the eqg's newer zone formats? I know no one likes the Titanium Nektulos (gods, please let me use the one from the Live Progression servers!) but I do not so much mind Lavastorm or Bazaar as it is in Titanium.

Maybe you can make a smaller pack with just the dupe zones in it? Then the admin can decide what to apply.

Angelox 06-03-2008 12:45 PM

Well, it's not what we like, but what we got - for example, Lavastorm is already spawned with the old sd3 , so if you go to eqg update, you have to respawn and redo everything.

I also noticed something I believe is new with these maps;
I've been working on all the boats these past weeks, since I added the new maps, boats would turn up in the air or under water - I guess what happened is, with the old Maps, boats used the Z coord from their spawnpoint, and ignored what ever Z coords that were in the grid waypoints. With the new maps, Z coord is now used in grids, so if you had a Z coord you made while setting the WPs too high, your boat will be headed there. What I did was, go back to the grids and set all the Z coords too the original spawn point of the boat (this is the way it should have been anyways). Anyways, when ever we finish the new AX_CLASSIC database update, all those fixes will be there.

Angelox 06-03-2008 04:49 PM

I also just got the "eqg_maps.tar.gz" file posted at Rathe Forums.

trevius 06-04-2008 06:30 AM

WOOT! Those eqg maps work great! Unless I am wrong, I think we now FINALLY have full access to use all zones in Titanium!

Thanks a TON, Angelox and Derision!

Angelox 06-04-2008 10:51 AM

Quote:

Originally Posted by trevius (Post 149983)
WOOT! Those eqg maps work great! Unless I am wrong, I think we now FINALLY have full access to use all zones in Titanium!

Thanks a TON, Angelox and Derision!

I shouldn't be getting any credit for this, Derision is the man to thank , he's done some incredible things for this project; to me, he is a Developer, just like some of the others that have done good work here. I wonder if there are any plans to put this update in the source?
I know what it feels like to not have access to Azone, because either it doesn't compile, or have a windows server - Then, have to beg for weeks just to get some new map files.
This Emulator is still alpha right? even if it were beta, I think ALL reasonable fixes need to go in the source asap.

TheLieka 06-04-2008 11:51 AM

For ServerOps that want to continue using the original zones (nektulos, lavastorm, arena, oasis, sro, nro, etc) are there updated .map files of the old versions of these zones as well?

Thanks,
Dax

Angelox 06-04-2008 12:14 PM

Yea, first unpack the eqg converted maps, then unpack the new (s3d) map pack on top , over write anything there. This will give you all the old zones with the updated maps.

John Adams 06-04-2008 12:28 PM

Quote:

Originally Posted by Angelox (Post 149996)
This Emulator is still alpha right?

That's probably both the funniest and scariest thing I've read in years.

This is a pretty damn long alpha, 0.7.0 for 2 years now? :)

Angelox 06-04-2008 01:31 PM

Quote:

Originally Posted by John Adams (Post 150010)
That's probably both the funniest and scariest thing I've read in years.

This is a pretty damn long alpha, 0.7.0 for 2 years now? :)

At one time, I was thinking of pushing for Beta status - really, the game is totally playable now, no reason to keep it as an alpha.
But in reality, there are so few of the people that own the source, really care about anything at all, it's not worth the effort.
Best thing to do, is probably what we're dong now; post diffs and updates and we'll swap what we have. This is how my AX databases got started; I wasn't willing to wait for someone to make changes when they felt like it.

Derision 06-04-2008 05:11 PM

Quote:

Originally Posted by Angelox (Post 149996)
I wonder if there are any plans to put this update in the source?

I don't want to take this thread off-topic, but to be fair to KLS, who is doing a great job as the main (only?) active Developer, I wouldn't commit this code to CVS either until it had been tested for more than a couple of days :)

Scorpious2k 06-04-2008 06:05 PM

Quote:

Originally Posted by Derision (Post 150024)
KLS, who is doing a great job as the main (only?) active Developer

Not the only one any more, for the record.

Scorpious2k 06-04-2008 06:42 PM

Getting back on topic - sort of - has anyone done a windows version of azone, or am I looking at an old version?

Angelox 06-04-2008 06:59 PM

Quote:

Originally Posted by Derision (Post 150024)
I don't want to take this thread off-topic, but to be fair to KLS, who is doing a great job as the main (only?) active Developer, I wouldn't commit this code to CVS either until it had been tested for more than a couple of days :)

I didn't mean KLS or anyone else who is doing work on this project - on the topic of when to put new code into the source, You Derision, are a trusted coder, new code needs to be tested, the best way to test it, is to publicize it in the main source so we all can try it out, post feed back - Thats what this is all about. How will we ever know if we don't test it?
When I download new source, I don't expect it to be perfect, I understand it might have bugs, and the Devs might want feedback on that.
Someone just starting here with codefixes, you might want to watch - but you don't need that, what you need is for your code to be tested so you can fix the bugs, just like we did with the water codes and the mob hopping.

Really glad to have your help Scorpious2k, very appreciated and needed!

KLS 06-04-2008 07:28 PM

Quote:

Getting back on topic - sort of - has anyone done a windows version of azone, or am I looking at an old version?
When I put this in source I have some changes that should make it *easier* to compile on windows as well.

Scorpious2k 06-04-2008 07:39 PM

Quote:

Originally Posted by KLS (Post 150037)
When I put this in source I have some changes that should make it *easier* to compile on windows as well.

Then I will wait and see what you have done. I had started doing the same thing.

quadroplex 06-05-2008 08:05 AM

It boggles my mind that it was only developed for nix in the first place, seems kind of ass backwards to me considering EQ is a windows app, it requires the eq client zone files, and most people do still use windows to at minimum play the game.


All times are GMT -4. The time now is 11:12 AM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.