|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Development::Database/World Building World Building forum, dedicated to the EQEmu MySQL Database. Post partial/complete databases for spawns, items, etc. |
03-03-2013, 09:40 AM
|
Sarnak
|
|
Join Date: Dec 2007
Posts: 60
|
|
For the new loot system:
Code:
insert into lootdrop values (100001, 'Crude Defiant');
insert into lootdrop_entries select 100001, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Crude Defiant%';
insert into loottable_entries select distinct loottable_id, 100001, 1, 1, 0, 4 from npc_types where loottable_id > 0 and level between 0 and 14;
I think ... (the script works, but im still figuring out possibilities)
|
03-05-2013, 09:00 PM
|
Hill Giant
|
|
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
|
|
Has anyone noticed if you add defiant based on these scripts you'll sometimes find mobs that are dropping defiant gear that's out of their range? For example, if i only want Elegant Defiant to drop by using this:
Code:
insert into lootdrop values (300007, 'Elegant Defiant');
insert into lootdrop_entries select 300007, id, 1, 1, 2, 0, 127, 1 from items where name like 'Elegant Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 300007, 1, 4, 1, 1 from npc_types where loottable_id > 0 and level >= 70;
...only mobs equal or higher than level 70 should be dropping this. If I start with a clean database and use the above and then use George's Loot Editor to examine the mobs drop tables in BoT, I see random mobs below level 70 with Elegant gear in their drop tables. How can I prevent this so it stays strictly in range of the mobs level?
|
04-01-2013, 01:38 PM
|
Sarnak
|
|
Join Date: Mar 2013
Posts: 65
|
|
I noticed that too shiny, I first thought it was a bug. Upon closer inspection it appears that there may be a loottable shared that is getting the same application of the loottable_entry. I havnt found a good fix yet, but i hope this info helps
|
04-01-2013, 03:23 PM
|
Hill Giant
|
|
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
|
|
I wonder if there's some sort of exclusion we can apply to the sql that if any mob tied to a table is lower than the the required range of the defiant gear that it doesn't add any defiant to the table. I'd prefer that option rather than having to clean up all the loot tables.
|
04-01-2013, 03:47 PM
|
Sarnak
|
|
Join Date: Mar 2013
Posts: 65
|
|
you'd have to compare the loottable assigned to the mob to any other mob with the assigned loot table.
Someone who knows more about SQL than I would have to help you out, though.
Theorycrafting:
Compare loottable assigned to any mob with all other mobs who have the same loottable
if any of them are lower than X, don't add it, otherwise, add it.
maybe something like this for starters (assuming these are the right table and column names)
Code:
select * from lootdrop INNER JOIN npc_types on lootdrop.id = npc_types.lootdrop_id;
select lootdrop .*,npc_types .* from lootdrop ,npc_types where lootdrop.id = npc_types.lootdrop_id;
|
04-02-2013, 08:39 AM
|
Hill Giant
|
|
Join Date: Jul 2009
Location: Indianapolis
Posts: 228
|
|
I'm not versed well enough to figure this one out; I'm only slightly dangerous with sql. Perhaps you and werebat can put your heads together and figure this one out. Seems like you're on the right path though.
Quote:
Originally Posted by vkrr
you'd have to compare the loottable assigned to the mob to any other mob with the assigned loot table.
Someone who knows more about SQL than I would have to help you out, though.
Theorycrafting:
Compare loottable assigned to any mob with all other mobs who have the same loottable
if any of them are lower than X, don't add it, otherwise, add it.
maybe something like this for starters (assuming these are the right table and column names)
Code:
select * from lootdrop INNER JOIN npc_types on lootdrop.id = npc_types.lootdrop_id;
select lootdrop .*,npc_types .* from lootdrop ,npc_types where lootdrop.id = npc_types.lootdrop_id;
|
|
05-15-2013, 08:28 PM
|
Sarnak
|
|
Join Date: Sep 2007
Posts: 33
|
|
For to me any of the scrips posted in this thread works for me at peqdb 2506 , anyone can make defiant works ??
|
|
|
|
05-21-2013, 11:40 AM
|
Sarnak
|
|
Join Date: Sep 2007
Posts: 33
|
|
I try differents scripts and finally i got one wich work with db rev2506 /Cheers !!!! Then i will share with you all.
insert into lootdrop values (200002, 'Crude Defiant');
insert into lootdrop_entries select 200002, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Crude Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200002, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 1 and 4;
insert into lootdrop values (200003, 'Simple Defiant');
insert into lootdrop_entries select 200003, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Simple Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200003, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 5 and 14;
insert into lootdrop values (200004, 'Rough Defiant');
insert into lootdrop_entries select 200004, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Rough Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200004, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 15 and 25;
insert into lootdrop values (200005, 'Ornate Defiant');
insert into lootdrop_entries select 200005, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Ornate Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200005, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 26 and 36;
insert into lootdrop values (200006, 'Flawed Defiant');
insert into lootdrop_entries select 200006, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Flawed Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200006, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 37 and 47;
insert into lootdrop values (200007, 'Intrincate Defiant');
insert into lootdrop_entries select 200007, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Intrincate Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200007, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 48 and 58;
insert into lootdrop values (200008, 'Elaborate Defiant');
insert into lootdrop_entries select 200008, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Elaborate Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200008, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level between 59 and 69;
insert into lootdrop values (200009, 'Elegant Defiant');
insert into lootdrop_entries select 200009, id, 1, 1, 3, 0, 0, 127, 1 from items where name like 'Elegant Defiant%' and nodrop = 1;
insert into loottable_entries select distinct loottable_id, 200009, 1, 1, 0, 10 from npc_types where loottable_id > 0 and level >= 70;
And this is all folks !!!
|
|
|
|
11-09-2013, 10:11 AM
|
Hill Giant
|
|
Join Date: Sep 2013
Location: Barnsley england
Posts: 120
|
|
what do i edit to increase drop rate? the 10 or something els?
|
02-21-2014, 03:01 PM
|
Fire Beetle
|
|
Join Date: Feb 2014
Posts: 17
|
|
I wanted to remove defiant and the googles brought me here.
So here is what i just ran on my db if anyone wants to remove the chance for these to drop
Code:
UPDATE peq.loottable_entries
JOIN peq.lootdrop_entries ON peq.lootdrop_entries.lootdrop_id = peq.loottable_entries.lootdrop_id
JOIN peq.items ON peq.items.id = peq.lootdrop_entries.item_id
SET peq.loottable_entries.probability = 0
WHERE peq.items.name like "%defiant%" AND peq.items.lore like "%For%"
haven't tested it yet in game but it should work
|
02-21-2014, 05:07 PM
|
Hill Giant
|
|
Join Date: Aug 2012
Posts: 205
|
|
just thought i should add that while that query will remove defiant drops, theres many more pieces of defiant type gear that still drops, as well as augments, tradeskill items, etc.
Just a warning for those looking to get rid of all out of era stuff like defiant out of their database
|
02-22-2014, 10:05 AM
|
Hill Giant
|
|
Join Date: Feb 2013
Posts: 220
|
|
shouldent this be 'SET peq.lootdrop_entries.probability = 0' rather than 'SET peq.loottable_entries.probability = 0' ?
|
02-22-2014, 05:37 PM
|
Dragon
|
|
Join Date: May 2010
Posts: 965
|
|
Depends. If the defiant is always on its own loot drop you can. Otherwise setting the specific entry to zero makes just that item in the loot drop not get rolled.
|
02-23-2014, 08:03 AM
|
|
Hill Giant
|
|
Join Date: Oct 2010
Posts: 143
|
|
This sql will remove all defiant from lootdrops. It also includes the combatant and adept stuff which is pretty much defiant for other slots.
Quote:
delete from lootdrop_entries
where item_id in (select id from items where name regexp '(Crude|Simple|Rough|Ornate|Flawed|Intricate|Elabo rate|Elegant)( Defiant| Combatant| Adept)');
|
Last edited by werebat; 02-23-2014 at 08:05 AM..
Reason: There is no space in the word Elaborate but my display keeps showing it for some reason
|
12-25-2014, 12:18 PM
|
Hill Giant
|
|
Join Date: Dec 2012
Posts: 116
|
|
With some of the new DB Fields / Updates the code doesn't match the column count. For anyone having trouble try this structure.
See the 2 highlighted values. This will match up the column count.
Code:
insert into lootdrop_entries select 100001, id, 1, 1, 2, 0, 0, 127, 1 from items where name like 'Crude Defiant%' and nodrop = 1;
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 11:57 AM.
|
|
|
|
|
|
|
|
|
|
|
|
|