From fa6923eb6c266f228b8bd49f4575da97355cfcf2 Mon Sep 17 00:00:00 2001 From: Tecc Date: Tue, 25 Aug 2026 09:25:09 +0000 Subject: [PATCH] data(filters): stop blacklisting the Shredder Operating Manual pages z_filter_disabled_and_trash.sql excludes every item whose name contains "manual". That rule is aimed at the "Manual: ..." / "Manual of ..." teaching items, but it also swallows "Shredder Operating Manual - Page N", which are tradeable world drops players are meant to buy on the auction house and combine themselves. The filter rule now carries an exception for the pages, and a migration removes the rows it already inserted. The combined "Shredder Operating Manual - Chapter N" items keep matching the rule: they are bound, cannot be traded, and must not be listed. Both statements are name-based, so they resolve against whatever entries the realm's item_template actually holds instead of hardcoded ids. --- .../db-world/z_filter_disabled_and_trash.sql | 5 ++++- ...26_08_25_00_unblacklist_shredder_pages.sql | 21 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 data/sql/db-world/zz_2026_08_25_00_unblacklist_shredder_pages.sql diff --git a/data/sql/db-world/z_filter_disabled_and_trash.sql b/data/sql/db-world/z_filter_disabled_and_trash.sql index fbdd1775..a7d1ae8d 100644 --- a/data/sql/db-world/z_filter_disabled_and_trash.sql +++ b/data/sql/db-world/z_filter_disabled_and_trash.sql @@ -36,7 +36,10 @@ WHERE ( NAME LIKE '%big sack%' OR NAME LIKE '%decoded%' OR NAME LIKE '%knowledge:%' OR - NAME LIKE '%manual%' OR + -- '%manual%' also swallows the Shredder Operating Manual pages, which are + -- tradeable world drops and belong on the auction house. The combined + -- chapters stay excluded: they are bound and cannot be traded. + (NAME LIKE '%manual%' AND NAME NOT LIKE 'Shredder Operating Manual - Page%') OR NAME LIKE '%gnome head%' OR NAME LIKE '%critter enlarger%' OR NAME LIKE '%box of%' OR diff --git a/data/sql/db-world/zz_2026_08_25_00_unblacklist_shredder_pages.sql b/data/sql/db-world/zz_2026_08_25_00_unblacklist_shredder_pages.sql new file mode 100644 index 00000000..ecf20c8d --- /dev/null +++ b/data/sql/db-world/zz_2026_08_25_00_unblacklist_shredder_pages.sql @@ -0,0 +1,21 @@ +-- +-- Let the Shredder Operating Manual pages back onto the auction house. +-- +-- z_filter_disabled_and_trash.sql excludes every item whose name contains +-- "manual", which was aimed at the "Manual: ..." / "Manual of ..." teaching items +-- but also caught "Shredder Operating Manual - Page N". Those pages are tradeable +-- world drops that players are supposed to buy and combine themselves, so they +-- belong in the market. That filter file now carries an exception for them; this +-- removes the rows it already inserted. +-- +-- The combined "Shredder Operating Manual - Chapter N" items are deliberately NOT +-- touched: they are bound, cannot be traded by a player, and stay blacklisted. +-- +-- Idempotent: re-running deletes nothing once the rows are gone. The zz_ prefix +-- keeps it sorted after z_filter_disabled_and_trash.sql. +-- + +DELETE d +FROM `mod_auctionhousebot_disabled_items` d +JOIN `item_template` i ON i.`entry` = d.`item` +WHERE i.`name` LIKE 'Shredder Operating Manual - Page%';