Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Database/World Building

Development::Database/World Building World Building forum, dedicated to the EQEmu MySQL Database. Post partial/complete databases for spawns, items, etc.

Reply
 
Thread Tools Display Modes
  #1  
Old 12-30-2013, 02:32 AM
haggzor
Fire Beetle
 
Join Date: Nov 2010
Location: Cincinnati, OH
Posts: 27
Default Spawn Data Variety

Hi guys,

I set up a new server this week and I was just curious about a couple of NPC spawn related items. I noticed recently while playing in Innothule that I never see any skeletons or frogloks with equipped weapons. I dug in a little bit and this is what I found:

Code:
select  ld.*, lde.*, i.name
from    npc_types nt left join
        loottable lt on nt.loottable_id = lt.id left outer join
        loottable_entries lte on lt.id = lte.loottable_id left outer join
        lootdrop ld on lte.lootdrop_id = ld.id left outer join
        lootdrop_entries lde on ld.id = lde.lootdrop_id left outer join
        items i on lde.item_id = i.id
where   nt.name = 'a_decaying_skeleton'
order by ld.name asc
When I ran this relatively simple query, I discovered that there are 1212 different loot permutations set up for the various decaying skeletons throughout the game (obviously these aren't all used).

I took a little time and figured out how the data structure works for NPC spawn points. Just for fun I took the distinct NPCID's of our above resultset and compared it to the spawn points in Innothule:

Code:
select   *
from    spawnentry se left outer join
        spawngroup sg on se.spawngroupID = sg.id left outer join
        spawn2 s2 on sg.id = s2.spawngroupID
where   se.npcID in (
50002
,50018
,415108
,383015
,383031
,392014
,392006
,392005
,413061
,414016
,414002
,457139
,709066
,2000
,2104
,47074
,47088
,155034
,155317
,56060
,56078
,38009
,38013
,54013
,54026
,78012
,25322
,4010
,9003
,9006
,10003
,10004
,22003
,30000
,30012
,34002
,33106
,85109
,75001
,75004
,46008)
and s2.zone = 'innothule'
It would seem that in innothule, we are only ever spawning skeletons who are NPCID 46008.

When I went back and looked at my first query only restricted to that specific NPCID, I found out why I only ever get skeletons carrying bone chips in Innothule.

I found the frogloks similar, except they are only NPCID 46015, which has a loottableID of 0 (drops nothing).

So, that said, here is my real question:

Is this indicative of the data for most zones (somewhat vanilla) and the developers are assuming that server administrators wish to customize their own loot tables, or is this, perhaps, just an oversight in some select zones? Is anyone else experiencing complaints on their servers of this nature?

If the answer to the above question is "yes, it's pretty vanilla across the board", then is there an effort going on right now to update the spawn data in order to more closely mirror the 'production' game's spawn and loot data? I know that the loot from certain mobs (especially low level) is pretty crucial to a new player's game experience. If you can't get gear from drops, the cash grind gets to be pretty nasty.

Also...

In the event that I wanted to contribute data scripts diversifying some of this (based on Allakhazam's mob drop lists, ie http://everquest.allakhazam.com/db/npc.html?id=28990), would the submissions run through the same channels as code commits or is there a separate oversight for data?

Thanks!

Haggzor
__________________
... and I just got killed by Gix... again.
Reply With Quote
  #2  
Old 12-30-2013, 12:32 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 965
Default

The PEQ database is (now) populated from Magelo which used an application to monitor the items looted. ZAM is all user submission and generally quite useless for making detailed loot tables.
This NPC should be usng the data on this page for loot: http://eq.magelo.com/npc/178635

i just attempted to update the NPC on PEQ and it did not do it, so I will drop this on Cavedude to look at the script.
Reply With Quote
  #3  
Old 12-30-2013, 01:46 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 965
Default

ok the reason the mobs in innothule are not updated is because the zone no longer exists on live and magelo only reflects innothuleb (zone 413).

If you look in your database for the loot in innothuleb the mobs you are specifying do have their loot tables. You can simply apply the loot tables from innothuleb to the same mobs in innothule to achieve what you want.

If you want to feed back to the community, you can create a SQL script to update the NPC's in innothule and post it here and we'll update the PEQ DB.
Reply With Quote
  #4  
Old 12-30-2013, 03:57 PM
haggzor
Fire Beetle
 
Join Date: Nov 2010
Location: Cincinnati, OH
Posts: 27
Default Excellent!

Thank you very much. It is much appreciated. I'll just copy the spawn data for innothuleb into innothule for all existing mobs. Also, I'd be happy to post the script back here once I get it written.

Thanks again!

Nick
__________________
... and I just got killed by Gix... again.
Reply With Quote
  #5  
Old 01-02-2014, 01:59 AM
haggzor
Fire Beetle
 
Join Date: Nov 2010
Location: Cincinnati, OH
Posts: 27
Default

This isn't a perfect fix, but I'm too lazy to write all new loot tables. This query will update *most* of the NPCs in Innothule (Classic, pre-revamp) to spawn with the loot tables (MAGELO-GEN) from their equivalents in InnothuleB (revamped Innothule). From there you can pick and choose individual items from the tables, but this covers most of it.

Code:
/* UPDATE LOOT TABLE FOR SKELETONS (was 87917) */

update  npc_types
set     loottable_id = 93161
where   id = 46008;

/* UPDATE LOOT TABLE FOR FROGLOKS (was 0) */

update  npc_types
set     loottable_id = 93162
where   id = 46015;

/* UPDATE LOOT TABLE FOR FROGLOK FISHERMAN (was 120) */

update  npc_types
set     loottable_id = 93163
where   id = 46012;

/* UPDATE LOOT TABLE FOR FROGLOK FORAGER (was 128) */

update  npc_types
set     loottable_id = 93164
where   id = 46013;

/* UPDATE LOOT TABLE FOR FROGLOK GUARD (was 116) */

update  npc_types
set     loottable_id = 93165
where   id = 65031;

/* UPDATE LOOT TABLE FOR FROGLOK TAD (was 108) */

update  npc_types
set     loottable_id = 93166
where   id = 46014;

/* UPDATE LOOT TABLE FOR FUNGUS MAN TRACKER (was 87909) */

update  npc_types
set     loottable_id = 93182
where   id = 46016;

/* UPDATE LOOT TABLE FOR FUNGUS SPORE (was 4880) */

update  npc_types
set     loottable_id = 93167
where   id = 46017;

/* UPDATE LOOT TABLE FOR KOBOLD HUNTER (was 5556) */

update  npc_types
set     loottable_id = 93169
where   id = 46024;

/* UPDATE LOOT TABLE FOR LESSER KOBOLD (was 5555) */

update  npc_types
set     loottable_id = 93171
where   id = 46026;

/* UPDATE LOOT TABLE FOR SWAMP ALLIGATOR (was 5635) */

update  npc_types
set     loottable_id = 93173
where   id = 46037;

/* UPDATE LOOT TABLE FOR WATER MOCASSIN (was 3624) */

update  npc_types
set     loottable_id = 93175
where   id = 46041;

/* UPDATE LOOT TABLE FOR DARK DEATHSINGER (was 0) */

update  npc_types
set     loottable_id = 93181
where   id = 46007;

/* UPDATE LOOT TABLE FOR GIANT WATER MOCASSIN (was 0) */

update  npc_types
set     loottable_id = 93183
where   id = 46019;
__________________
... and I just got killed by Gix... again.
Reply With Quote
  #6  
Old 01-02-2014, 11:27 AM
sorvani
Dragon
 
Join Date: May 2010
Posts: 965
Default

if cavedude does not pop in and do this before i have time today or tomorrow, then I will get it done by then. thanks for the submission.
Reply With Quote
  #7  
Old 01-03-2014, 01:14 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 965
Default

this is now in on PEQ thank you. I did change one thing. it will be in tomorrow's daily dump, thank you.

Code:
/* UPDATE LOOT TABLE FOR FROGLOK GUARD (was 116) */

update  npc_types
set     loottable_id = 93165
where   id = 65031;
That NPC is from guktop. So I copied him to 46107, updated the spawn group to use 46107, and assigned the loot to 46107.
Thus the guard in guktop still uses loot table 116
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 02:36 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