diff --git a/modules/classes/itemdetails.ts b/modules/classes/itemdetails.ts index 3451f62..e6b59f7 100644 --- a/modules/classes/itemdetails.ts +++ b/modules/classes/itemdetails.ts @@ -321,7 +321,7 @@ export class ItemDetails { return false; } - const defStats = [1,7,12, 13, 14, 15, 22, 23, 24, 25, 26, 27, 48]; + const defStats = [1,12, 13, 14, 15, 22, 23, 24, 25, 26, 27, 48]; for (let i = 1; i <= 8; i++) { let statType = stats[`stat_type${i}`] ? stats[`stat_type${i}`] : 0; diff --git a/modules/commands/set-xp-rate.ts b/modules/commands/set-xp-rate.ts index ccd7edf..a0cb862 100644 --- a/modules/commands/set-xp-rate.ts +++ b/modules/commands/set-xp-rate.ts @@ -79,7 +79,7 @@ const XPBonus: player_event_on_give_xp = (event: number, player: Player, amount: const xpRate = xpRateCache.get(player.GetGUIDLow()); if(xpRate && xpRate > 1) { - player.GiveXP(amount * xpRate); + // player.GiveXP(amount * xpRate); } } diff --git a/modules/gameobject/gamblechest.ts b/modules/gameobject/gamblechest.ts index 11d7e44..409e2e9 100644 --- a/modules/gameobject/gamblechest.ts +++ b/modules/gameobject/gamblechest.ts @@ -40,7 +40,7 @@ function RollLootTrap(object: GameObject) { LootTrapMap[object.GetGUIDLow()] = false; return; } else if(roll > 79) { - object.AddLoot(45878, 1); // Large Sack of Uldaur Spoils 3% + object.AddLoot(43347, 1); // Large Sack of Uldaur Spoils 3% LootTrapMap[object.GetGUIDLow()] = false; return; } else if(roll > 67) { @@ -68,6 +68,8 @@ function RollLootTrap(object: GameObject) { const onKillCreature: player_event_on_kill_creature = (event: number, killer: Player, killed: Creature) => { const map: EMap = killed.GetMap(); + return false; + if(!map.IsDungeon() && !map.IsRaid()) { return false; } @@ -82,7 +84,7 @@ const onKillCreature: player_event_on_kill_creature = (event: number, killer: Pl const [x,y,z,o] = killed.GetLocation(); let roll = Math.floor(Math.random() * 100); - if(roll > 8) { + if(roll > 4) { return; } diff --git a/modules/items/badge-of-justice.ts b/modules/items/badge-of-justice.ts index a00a13f..b077e77 100644 --- a/modules/items/badge-of-justice.ts +++ b/modules/items/badge-of-justice.ts @@ -31,4 +31,4 @@ const LootToken: player_event_on_loot_item = (event: number, player: Player, ite } -RegisterPlayerEvent(PlayerEvents.PLAYER_EVENT_ON_LOOT_ITEM, (...args) => LootToken(...args)); \ No newline at end of file +RegisterPlayerEvent(PlayerEvents.PLAYER_EVENT_ON_LOOT_ITEM, (...args) => LootToken(...args)); diff --git a/modules/items/bonus-enchantment.ts b/modules/items/bonus-enchantment.ts index 8de6dd6..c10e50c 100644 --- a/modules/items/bonus-enchantment.ts +++ b/modules/items/bonus-enchantment.ts @@ -8,6 +8,18 @@ function randomInteger(min: number, max: number) { function getEnchant(stat: string, min: number, max: number) { + if(stat.includes("Dodge Rating")) { + min = 5; + max = 20; + } + + if(stat.includes("Hit Rating")) { + + if (max > 50) { + max = 50; + } + } + const sql = ` SELECT ID FROM acore_world.spellitemenchantment_dbc @@ -19,7 +31,9 @@ function getEnchant(stat: string, min: number, max: number) { const query = WorldDBQuery(sql); if(!query) { - PrintError("Query Failed: ", sql ); + + PrintError("BonusEnchantment/getEnchantment - Failed to get enchantment for stat: " + stat); + print(sql); return null; } @@ -139,20 +153,20 @@ function rollEnchant(item: Item, highStats: boolean): number[] { } if (highStats) { - enchantId = getEnchant(primary, 30, 150); + enchantId = getEnchant(primary, 10, 120); } else { - enchantId = getEnchant(primary, 10, 30); + enchantId = getEnchant(primary, 5, 40); } if(secondary.includes("Resist")) { if(highStats) { - secEnchantId = getEnchant(secondary, 50, 100); + secEnchantId = getEnchant(secondary, 20, 70); } else { - secEnchantId = getEnchant(secondary, 34, 44); + secEnchantId = getEnchant(secondary, 10, 38); } } else { - secEnchantId = getEnchant(secondary, 5, 45); + secEnchantId = getEnchant(secondary, 5, 40); } return [enchantId, secEnchantId]; @@ -166,9 +180,9 @@ RegisterPlayerEvent(PlayerEvents.PLAYER_EVENT_ON_LOOT_ITEM, (event, player, item return; } - // if (item.GetEntry() < SCALED_ITEMS_START) { - // return; - // } + if (item.GetEntry() < SCALED_ITEMS_START) { + return; + } if (itemCls !== 2 && itemCls !== 4) { return; diff --git a/modules/items/tokens.ts b/modules/items/tokens.ts index eabf678..60a8b48 100644 --- a/modules/items/tokens.ts +++ b/modules/items/tokens.ts @@ -89,7 +89,7 @@ const TokenKillEvent: player_event_on_kill_creature = (event: number, player: Pl // Group Drop Rates if(creature.IsWorldBoss() || creature.IsDungeonBoss()) { - rollModifer += 300; + rollModifer += 100; } else { if(creature.IsElite()) { rollModifer = rollModifer + 30; @@ -97,7 +97,7 @@ const TokenKillEvent: player_event_on_kill_creature = (event: number, player: Pl } if(map.IsRaid() || map.IsHeroic()) { - rollModifer = rollModifer + (20 * groupCount); + rollModifer = rollModifer + (8 * groupCount); } else { if(map.IsDungeon()) { rollModifer = rollModifer + (4 * groupCount); @@ -123,7 +123,7 @@ const TokenKillEvent: player_event_on_kill_creature = (event: number, player: Pl if(groupCount >= TOKEN_GROUP_SIZE) { if(creature.IsWorldBoss() || creature.IsDungeonBoss()) { roll = Math.floor(Math.random() * TOKEN_ROLL_CAP); - if(roll <= rollModifer+200 ) { + if(roll <= rollModifer+100 ) { createChest(player, creature,'right'); } }