Postby Leodagan » Thu Dec 11, 2014 1:16 pm
Most of these generators are independent.
Their only common point is that a "LootList" object will be iteratively transfered to each of the them according to database constraints...
the only one using Loottemplate is DOL.GS.LootGeneratorTemplate
DOL.GS.LootGeneratorDragonscales : drop dragon scales according to mob level, guild mob filter for enabling this only for "Epic Encounter", this increment the "lootlist" count to be sure the loot are given to player one rules have determined he should get reward.
DOL.GS.OneTimeDrop : Use the onetimedrop table to list Named mobs that should loot this item at first kill given player level, then player "one time drop" are registered in an other table.
DOL.GS.LootGeneratorScroll : meant for ToA, it should try to gather "Scrolls" from your itemtemplate table, appart from that I have no idea how it work and if it "raises" the LootList DropCount to prevent from lower "template item" drop rate...
DOL.GS.LootGeneratorMoney : Obvious, every kills loot money (except if not worth experience), money loot don't change the max drop count...
DOL.GS.LootGeneratorUniqueItem : Add Auto-Generated Item (ROG) to the loot list.
For every one of these generator you have to look into code to know how they behave, even if some loot generator like "Templated" Generator or "OneTimeDrop" use additional Tables to store some static or dynamic data, this is not a common behavior for LootGenerator...
DragonScales or DiamondSeals Loot generator are totally independent from database... and this can make some weird behaviors sometimes...