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 06-28-2011, 07:11 PM
werebat's Avatar
werebat
Hill Giant
 
Join Date: Oct 2010
Posts: 143
Default Activate Defiant Drops

Hey guys, here is an SQL that will activate the Defiant drops. I wrote this when I realized the Defiant gear was not dropping. It is set to allow all mobs a 4% chance of dropping Defiant gear based on the mob level and required level of the item. In other words a level 10 mob will have a chance at dropping Simple Defiant gear and not Ornate Defiant. As always, back up your database before running. Make sure you do not have any lootdrop ids over 100000 since that is the id I am using. if you do just edit these numbers as you see fit.

Code:
#add defiant drops
insert into lootdrop values (100001, 'Crude Defiant');
insert into lootdrop_entries select 100001, id, 1, 1, 2 from items where name like 'Crude Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100001, 1, 4 from npc_types where loottable_id > 0 and level between 0 and 4;

insert into lootdrop values (100002, 'Simple Defiant');
insert into lootdrop_entries select 100002, id, 1, 1, 2 from items where name like 'Simple Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100002, 1, 4 from npc_types where loottable_id > 0 and level between 5 and 14;

insert into lootdrop values (100003, 'Rough Defiant');
insert into lootdrop_entries select 100003, id, 1, 1, 2 from items where name like 'Rough Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100003, 1, 4 from npc_types where loottable_id > 0 and level between 15 and 25;

insert into lootdrop values (100004, 'Ornate Defiant');
insert into lootdrop_entries select 100004, id, 1, 1, 2 from items where name like 'Ornate Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100004, 1, 4 from npc_types where loottable_id > 0 and level between 26 and 36;

insert into lootdrop values (100005, 'Flawed Defiant');
insert into lootdrop_entries select 100005, id, 1, 1, 2 from items where name like 'Flawed Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100005, 1, 4 from npc_types where loottable_id > 0 and level between 37 and 47;

insert into lootdrop values (100006, 'Intricate Defiant');
insert into lootdrop_entries select 100006, id, 1, 1, 2 from items where name like 'Intricate Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100006, 1, 4 from npc_types where loottable_id > 0 and level between 48 and 58;

insert into lootdrop values (100007, 'Elaborate Defiant');
insert into lootdrop_entries select 100007, id, 1, 1, 2 from items where name like 'Elaborate Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100007, 1, 4 from npc_types where loottable_id > 0 and level between 59 and 69;

insert into lootdrop values (100008, 'Elegant Defiant');
insert into lootdrop_entries select 100008, id, 1, 1, 2 from items where name like 'Elegant Defiant%' and nodrop = 1; 
insert into loottable_entries select distinct loottable_id, 100008, 1, 4 from npc_types where loottable_id > 0 and level >= 70;
Reply With Quote
  #2  
Old 06-28-2011, 10:01 PM
killinyousoftly
Fire Beetle
 
Join Date: Aug 2009
Location: nc
Posts: 16
Default

thanx for the code it worked geat!
__________________
Reply With Quote
  #3  
Old 07-12-2011, 03:25 AM
Zothen
Hill Giant
 
Join Date: Apr 2011
Location: Germany
Posts: 163
Default

Just keep in mind that

1. many mobs dont even got a loottable (id)

2. some mobs share the same loottable so there may be duplicate entries after your sql commands ( maybe "distinct" is preventing that, i am no sql expert )
Reply With Quote
  #4  
Old 07-12-2011, 08:44 AM
werebat's Avatar
werebat
Hill Giant
 
Join Date: Oct 2010
Posts: 143
Default

Quote:
Originally Posted by Zothen View Post
Just keep in mind that

1. many mobs dont even got a loottable (id)

2. some mobs share the same loottable so there may be duplicate entries after your sql commands ( maybe "distinct" is preventing that, i am no sql expert )
Yes that is true, this was just a quick and dirty sql for the most part. Only mobs with loottables will activate. And the 'distinct' should prevent the duplicates as you stated.

I actually encountered a forest drakeling with a crude defiant spear. You could see the spear graphic along his side and it looked like it was jousting. Wish I had captured the jpg.

I was working to make it more intuitive by insuring that only humanoid mobs drop the items but got sidetracked. I will resume at some point. I am a C++/SQL developer and have been spending more time looking at the code lately.
Reply With Quote
  #5  
Old 07-12-2011, 08:58 AM
Zothen
Hill Giant
 
Join Date: Apr 2011
Location: Germany
Posts: 163
Default

I think the idea behind defiant gear is that almost every mob can drop it.

And I thought animal mobs cant show equipped gear, I am really surprised about your story.
Reply With Quote
  #6  
Old 07-12-2011, 09:08 AM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

Animal mobs all over show equipped gear
Reply With Quote
  #7  
Old 07-12-2011, 10:55 AM
Shiny151
Hill Giant
 
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
Default

This is great werebat. Thank you! Dumb question; but just to be sure, if i wanted to change the drop percentage would I just change the 4 in the last line of each group to reflect that?
Reply With Quote
  #8  
Old 07-12-2011, 04:18 PM
werebat's Avatar
werebat
Hill Giant
 
Join Date: Oct 2010
Posts: 143
Default

Quote:
Originally Posted by Shiny151 View Post
This is great werebat. Thank you! Dumb question; but just to be sure, if i wanted to change the drop percentage would I just change the 4 in the last line of each group to reflect that?
Yes. the 4 is the percentage value. I should have included the column headers, but I just copied what I had in my adjustment file.

I have a bunch of sql's to do various things like preventing aggro from gray mobs (the ones that dont give experience anymore), setting the OOC combat regen values and corpse rules. Pretty much things I would have liked to have seen in live.
Reply With Quote
  #9  
Old 07-12-2011, 04:25 PM
werebat's Avatar
werebat
Hill Giant
 
Join Date: Oct 2010
Posts: 143
Default

Quote:
Originally Posted by Zothen View Post
I think the idea behind defiant gear is that almost every mob can drop it.

And I thought animal mobs cant show equipped gear, I am really surprised about your story.
True, but I dont like the idea of snakes dropping breastplates for example. The current script allows all mobs to drop. But I would like to alter it to just allow humanoid mobs to drop.

And regular weapons dont show on the animal mobs, but the defiant spear did, really weird but it would have made a great screenshot. If I see it again I will screenshoot it, F9 I think. To be specific it was a Thorn Drakeling with a Crude Defiant Spear in Misty Thicket.
Reply With Quote
  #10  
Old 07-12-2011, 08:46 PM
revloc02c's Avatar
revloc02c
Hill Giant
 
Join Date: Aug 2010
Location: UT
Posts: 215
Default

I only played EQ up to about level 53 on live, and that was a long time ago. (I love running my own server, glad this stuff exists.)

So I am just wondering what Defiant armor is. I can look it up on Zam just fine, but I gather there's more to it that just a bunch of similarly named items. Does it have some sort of progression or levels or something?
Reply With Quote
  #11  
Old 07-13-2011, 02:07 AM
Zothen
Hill Giant
 
Join Date: Apr 2011
Location: Germany
Posts: 163
Default

Quote:
Originally Posted by werebat View Post
True, but I dont like the idea of snakes dropping breastplates for example.
I see. If you browse the drop lists at magelo or ZAM, you'll see even animals drop defiant gear on live servers. Not all though.

For me, its ok, cause my mobs drop them only at a 1/100 chance, so you wont see them too often. If only humanoids carry all the good stuff, why fight animals at all? I like the idea that even a simple spiderling could drop uber gear.
Reply With Quote
  #12  
Old 07-14-2011, 11:12 AM
Shiny151
Hill Giant
 
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
Default

Would anything lower than 1 percent work in terms of a drop rate? Does the system recognize decimals?

I like the idea of Defiant dropping but making it oober rare.
Reply With Quote
  #13  
Old 07-15-2011, 03:19 AM
Zothen
Hill Giant
 
Join Date: Apr 2011
Location: Germany
Posts: 163
Default

Unfortunetely no. The algorithm uses integers for random numbers, so probabilities are 1-100.

Only item chances per lootdrop table can be larger numbers, but that means you have to put some dummy drops in the same defiant lootdrop to make them rarer than 1/100.
Reply With Quote
  #14  
Old 09-26-2011, 08:49 PM
Baruuk
Sarnak
 
Join Date: Aug 2005
Posts: 64
Default Defiant not dropping

Thanks Werebat - but I can't seem to get this to work. I'm hoping someone can help. To test out the code on my server, I took the first section (pasted below) and put it into a SQL file and sourced it in. Things went fine. I reloaded the world, killed about 20 mobs under lvl 5 and never saw 1 drop of Defiant armor. I then opened George's NPC/Loot tool (just started using), selected several random lvl 1-4 mobs in various zones and I see that they have a Lootdrop_ID listed for the entry I just imported (ie: 100001) with a 20% chance. However, on the right pane where Item_Id, Equipped, Chance, etc is listed in the tool, I see no entries for the armor. Did I miss a step to get that in there? I see other loot entries for mobs - ie - for a bat I see bat fur, etc. I made certain I had no Lootdrop_IDs above 90,000. I can however, simply go in game and do a #fi Crude Defiant and I get a listing of the various armor/weapons. Any thoughts on what might be wrong?

Here's the code I sourced in as a test:

#add defiant drops
insert into lootdrop values (100001, 'Crude Defiant');
insert into lootdrop_entries select 100001, id, 1, 1, 2 from items where name like 'Crude Defiant%' and nodrop = 0;
insert into loottable_entries select distinct loottable_id, 100001, 1, 20 from npc_types where loottable_id > 0 and level between 0 and 4;

Any help is appreciated - looking forward to having defiant in.

Thanks in advance!

Last edited by Baruuk; 09-26-2011 at 08:51 PM.. Reason: left out info
Reply With Quote
  #15  
Old 09-26-2011, 09:51 PM
werebat's Avatar
werebat
Hill Giant
 
Join Date: Oct 2010
Posts: 143
Default

The sql looks for the Defiant items that are set to nodrop of 0. Are they still 0? if they were changed to 1 then it wont find them. I used a fresh database when I created it so check to see if anything has changed with the defiant items.
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 06:43 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