Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Packetcollector

Support::Packetcollector Any PacketCollector related problems or questions should be posted here.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-18-2010, 01:09 PM
Andrew80k
Dragon
 
Join Date: Feb 2007
Posts: 659
Default Collection Help

I'm trying to get the collector/extractor going. They're both "working", but I don't know how well. Could someone that has some more experience with these give me some help analyzing these so I know what to adjust?

This is an extract of the doors in great divide from a collect I did 2 nights ago.

Code:
C:\eqemutool\EQEmuTools\eqcollector\Debug\logs>eqextractor.exe -d packetlog-166985978.pf
# Time Stamp is after any known patch, using current (live compat) structs.
# Found zone info: The Great Divide (Greatdivide=greatdivide) (id# 118, instance 0)

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-2611.284668))<0.1 AND abs(pos_y-(-2954.919922))<0.1 AND abs
(pos_z-(285.868256))<0.1)
        doorid: DB: '25', Live: '26'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-2599.416504))<0.1 AND abs(pos_y-(-2953.454346))<0.1 AND abs
(pos_z-(285.947510))<0.1)
        doorid: DB: '24', Live: '25'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-2667.579346))<0.1 AND abs(pos_y-(-2731.697510))<0.1 AND abs
(pos_z-(283.994019))<0.1)
        doorid: DB: '23', Live: '24'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-2543.810547))<0.1 AND abs(pos_y-(-2731.051758))<0.1 AND abs
(pos_z-(284.038239))<0.1)
        doorid: DB: '22', Live: '23'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-1299.444092))<0.1 AND abs(pos_y-(-3353.996338))<0.1 AND abs
(pos_z-(-149.086197))<0.1)
        doorid: DB: '21', Live: '22'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-1918.418335))<0.1 AND abs(pos_y-(-4010.261963))<0.1 AND abs
(pos_z-(35.848389))<0.1)
        doorid: DB: '20', Live: '21'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-2677.978516))<0.1 AND abs(pos_y-(-5575.752930))<0.1 AND abs
(pos_z-(-461.781281))<0.1)
        doorid: DB: '19', Live: '20'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(497.642334))<0.1 AND abs(pos_y-(-6961.246094))<0.1 AND abs(p
os_z-(-685.341675))<0.1)
        doorid: DB: '18', Live: '19'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(1277.562866))<0.1 AND abs(pos_y-(-5437.032715))<0.1 AND abs(
pos_z-(-451.943024))<0.1)
        doorid: DB: '17', Live: '18'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '102'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(2081.307129))<0.1 AND abs(pos_y-(-1645.961792))<0.1 AND abs(
pos_z-(138.220749))<0.1)
        doorid: DB: '15', Live: '16'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '141'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-208.746796))<0.1 AND abs(pos_y-(-8314.549805))<0.1 AND abs(
pos_z-(-961.998047))<0.1)
        doorid: DB: '13', Live: '14'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-119.718590))<0.1 AND abs(pos_y-(-28.786388))<0.1 AND abs(po
s_z-(273.494965))<0.1)
        doorid: DB: '12', Live: '13'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '144'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-93.149178))<0.1 AND abs(pos_y-(-59.676701))<0.1 AND abs(pos
_z-(86.189499))<0.1)
        doorid: DB: '7', Live: '8'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-102.937157))<0.1 AND abs(pos_y-(579.855896))<0.1 AND abs(po
s_z-(801.956543))<0.1)
        doorid: DB: '5', Live: '6'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '128'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-122.731667))<0.1 AND abs(pos_y-(579.880798))<0.1 AND abs(po
s_z-(801.977722))<0.1)
        doorid: DB: '3', Live: '4'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '129'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-87.578232))<0.1 AND abs(pos_y-(581.041626))<0.1 AND abs(pos
_z-(801.978333))<0.1)
        doorid: DB: '2', Live: '3'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '128'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-97.035271))<0.1 AND abs(pos_y-(-24.373505))<0.1 AND abs(pos
_z-(272.095734))<0.1)
        doorid: DB: '26', Live: '1'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '143'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-114.308617))<0.1 AND abs(pos_y-(-25.197958))<0.1 AND abs(po
s_z-(271.132477))<0.1)
        doorid: DB: '1', Live: '2'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '143'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-103.645096))<0.1 AND abs(pos_y-(-25.799742))<0.1 AND abs(po
s_z-(272.595734))<0.1)
        doorid: DB: '4', Live: '5'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '143'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-106.211403))<0.1 AND abs(pos_y-(-58.607117))<0.1 AND abs(po
s_z-(86.189499))<0.1)
        doorid: DB: '6', Live: '7'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-115.519295))<0.1 AND abs(pos_y-(-57.415585))<0.1 AND abs(po
s_z-(86.189499))<0.1)
        doorid: DB: '8', Live: '9'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-215.405594))<0.1 AND abs(pos_y-(-8312.791016))<0.1 AND abs(
pos_z-(-959.657959))<0.1)
        doorid: DB: '9', Live: '10'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-193.273926))<0.1 AND abs(pos_y-(-8314.860352))<0.1 AND abs(
pos_z-(-958.916016))<0.1)
        doorid: DB: '10', Live: '11'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('CRATEG')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-201.689316))<0.1 AND abs(pos_y-(-8310.907227))<0.1 AND abs(
pos_z-(-960.748047))<0.1)
        doorid: DB: '11', Live: '12'
        doorisopen: DB: '0', Live: '1'
        door_param: DB: '0', Live: '132'

Table doors: key (lower(name)=lower('THURGTRANS200')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(2080.364502))<0.1 AND abs(pos_y-(-1647.892090))<0.1 
AND abs(pos_z-(139.470749))<0.1)
        doorid: DB: '16', Live: '17'
        door_param: DB: '0', Live: '-1'

Table doors: key (lower(name)=lower('POKTELE500')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-1811.420044))<0.1 AND abs(pos_y-(14.553705))<0.1 AND 
abs(pos_z-(389.439423))<0.1)
        doorid: DB: '77', Live: '78'
        door_param: DB: '0', Live: '77'

Table doors: key (lower(name)=lower('MINIPOM200')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-202.179947))<0.1 AND abs(pos_y-(-8267.140625))<0.1 AND
abs(pos_z-(-956.248535))<0.1)
        doorid: DB: '14', Live: '15'
        door_param: DB: '0', Live: '4'

Table doors: key (lower(name)=lower('EWGNTHOUSE200')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-483.856354))<0.1 AND abs(pos_y-(-6113.299805))<0.1 
AND abs(pos_z-(-567.681091))<0.1)
        doorid: DB: '?', Live: '27'
        heading: DB: '?', Live: '384.000000'
        opentype: DB: '?', Live: '55'
        doorisopen: DB: '?', Live: '0'
        door_param: DB: '?', Live: '-1'
        incline: DB: '?', Live: '0'
        size: DB: '?', Live: '50'

Table doors: key (lower(name)=lower('CAMPFIRE2')  AND lower(zone)=lower('greatdivide')  AND abs(pos_x-(-489.431946))<0.1 AND abs(pos_y-(-6103.714355))<0.1 AND 
abs(pos_z-(-560.790588))<0.1)
        doorid: DB: '?', Live: '28'
        heading: DB: '?', Live: '5.000000'
        opentype: DB: '?', Live: '55'
        doorisopen: DB: '?', Live: '0'
        door_param: DB: '?', Live: '-1'
        incline: DB: '?', Live: '9'
        size: DB: '?', Live: '100'
Reply With Quote
  #2  
Old 04-19-2010, 03:46 PM
Andrew80k
Dragon
 
Join Date: Feb 2007
Posts: 659
Default

Well, I did some more collection yesterday using my Ranger (level 85 SoD T5) and did some more with the extractor. Doors seem to be right on. I'm hoping to do some more testing on my server tonight. Spawns will still need some work. Though I did get some results back for spawns it's not quite what I was expecting and I don't think it's quite right. I still think I'm not quite there with the opcodes as the set I have looks like it's from February but I can't tell for sure. Still a lot of structure work, but it looks like the collector itself isn't too bad. Needs a couple of updates, but for the most part works ok. Have to do more work to the extractor to figure out where the collector is for sure though.
Reply With Quote
  #3  
Old 04-19-2010, 08:53 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

That is some excellent news, Andrew80k! I imagine spawns may be a bit of a pain due to them using variable sized structs now, but at least we have the new struct info they use in the SoD patch files.

If you can get the tools on the SVN, and if others can get them compiled and running as well, maybe we can all pitch in to get them working with Live. It will probably take some minor maintenance every patch or so to fix opcodes here and there and probably some structs from time to time, but nothing major as long as it is kept up with when needed.

As for getting the correct opcodes, that is really easy. For collectors, we really only need a very few opcodes to be correct anyway, so they are easy to maintain. If you have a gmail account, I have something I can share with you that might be useful for ya. Send me a PM with the gmail address and I will shoot the info over to you.

Doors alone are quite an awesome thing to have working from the collectors, as they are a major pain to do manually, and are never perfectly right when done manually. Spawns, and objects will be great to have as well. Pathing would be nice at some point, but it is quite a pain to collect from what I hear, and can always be added manually if needed. For outdoor zones, we can probably just use the RandomRoam quest plugin for NPCs that just roam in outdoor open areas, which will save a lot of content building time.

Thanks for working on this BTW. It sounds like you are making some nice progress
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #4  
Old 04-20-2010, 11:45 AM
Andrew80k
Dragon
 
Join Date: Feb 2007
Posts: 659
Default

Well now I have the extractor all torn up trying to fix the spawn structures so I can get them going. My priority is doors and spawns, including ground spawns, and spawn pathing. I think the doors are ok. I'll need to do a bit more testing but it looks good so far. It looks to me like it does the collecting of the paths and from what I could tell from the little bit I have the extractor actually pulls the paths out ok as well. I haven't validated that part yet as the spawn structure is too funky to be of use at this point. I'll post more as I have more to post. Once I get it at least halfway useful and validated, I'll put what I have on the SVN. erde did a lot of good work on it to get it going and that is really helping.
Reply With Quote
  #5  
Old 05-02-2010, 09:40 AM
steve
Discordant
 
Join Date: Jan 2002
Posts: 305
Default

Any further progress on this? Eager to help collect when it's ready!
Reply With Quote
  #6  
Old 05-02-2010, 11:54 AM
Andrew80k
Dragon
 
Join Date: Feb 2007
Posts: 659
Default

Actually, the collector is pretty good. Until I get the extractor fixed though, I can't tell for certain how good it is. The extractor works partially and pulls some of the objects fairly well. Others not so much. I'm currently working on getting the spawn structure fixed. I don't have any idea how long it will take me as I'm still learning how it works. I try to work on it a little every day, so we'll see.
Reply With Quote
Reply

Thread Tools
Display Modes

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 04:47 AM.


 

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