File Details
Loothing v2.0.30
- R
- Apr 24, 2026
- 1001.78 KB
- 5
- 12.0.5+1
- Retail
File Name
loothing_2.0.30.zip
Supported Versions
- 12.0.5
- 12.0.1
The Loot Picker is now much harder to lose or confuse during fast raid pacing. This release focuses on the awkward real-world cases from chain-pulling, late group-loot roll delivery, duplicate drops, and cold item-cache data.
Fixed
- Picked Loot Picker selections survive the next pull. If the next boss is pulled while the master looter still has a picker open from the prior kill, Loothing now protects the checked selections instead of wiping the buffer underneath the dialog. When possible it starts the session with the checked items automatically; if the session cannot start, the picker stays open and warns you instead of silently dropping your choices.
- Repeated prompt triggers no longer reset an already-open picker. Late bag-scan ticks and encounter-end debounce events now refresh the existing picker instead of re-opening it from scratch, so checked rows and filter decisions stay stable while loot is still arriving.
- The picker now explains why its list is empty. It distinguishes between waiting for roll results, no tradable loot found, and loot that is currently hidden by filters. If every item is blocked, the empty state now tells you how many rows are hidden and points you at Show blocked.
- Checkbox defaults no longer flicker as Blizzard's item cache warms up. The picker keeps the first filter decision it made for each row, so a cold-cache
GetItemInforesult cannot silently flip a default-checked item to unchecked on the next refresh. - Late loot from another encounter no longer leaks into the active session. If loot for a later kill arrives while a previous council session is still active, Loothing defers it and prompts for it after the current session ends instead of mixing both bosses into one council table.
- Duplicate wins of the same item are preserved as separate loot rows. Two identical drops won by the same player can now become two council items, while follow-up bag scans still refresh the same rows by item ID instead of creating duplicates or depending on fragile raw item-link matching.
- Roll-won loot no longer inherits stale boss context.
LOOT_ITEM_ROLL_WONdetections no longer borrow the previous bag-scan encounter ID, preventing trash/manual/delayed roll results from being attached to the wrong boss picker. - Wipe-then-repull bag snapshots no longer suppress trade-window loot. Pre-pull bag snapshots now ignore items that are still tradeable, so legitimate recent loot is not mistaken for old inventory after a wipe and quick re-engage.
- Canceling or ending one picker no longer clears unrelated buffered loot. Encounterless/manual loot and later-boss loot now stay in their own buffer buckets, so resolving one prompt cannot silently erase the next one.
Under the hood
- Incoming schema validation now fails closed on malformed payloads. Nil or non-table message data is rejected cleanly instead of depending on every caller to guard first.
- Council table click hooks are safer across row reuse. Row hook flags are set before scripts are attached, preventing rare re-entrant refresh paths from installing duplicate handlers.
- Added regression coverage for picker rebuilds, encounter transitions, buffered loot dedupe, duplicate roll wins, link-drift refreshes, and schema validation. These tests are loaded in the development build and are available through the in-game test runner.

