@Kryomyr, ty already got all those from another spot, but yours is more comfortable to use (also got a few entries from your file, ty),
anyways !!!,
here is a cool dll, that shows all sig/cube reagents/shrines/pgems/grunes with only regular rune 'On', +all jewels, +all sacred armo/weapons:D2DropFilterFull.dllhere is the same one without sacred items and regular quality jewels and PgemsD2DropFilterPartial.dllfeel free to ask for another filters list - can compile it fast with 1 click, also here is a source file for u to use:► D2DropFilter.cpp
Code: Select all
#include "DLLmain.h"
BOOL __fastcall DROPFILTER_Main(D2UnitStrc* pItem)
{
if (pItem->pItemData == NULL)
return FALSE;
if (GetAsyncKeyState(VK_CONTROL) & 0x8000)
return TRUE;
//UNIQUE & SET ITEMS --WORKING
if (pItem->pItemData->dwQuality == 0x07 || pItem->pItemData->dwQuality == 0x05)
return TRUE;
D2ItemsTXT* pItemTxt = D2COMMON_GetItemTxtRecord(pItem->dwClass);
if (pItemTxt == NULL) { return FALSE; }
DWORD dwCode = CODE32(pItemTxt->dwCode);
//JEWELS --WORKING
if (dwCode == 'jew ')
return TRUE;
{//SACRED WEAPON (REGULAR) --WORKING
for (char i = 0; i <= 9; i++) //never mind about those 00, 97-99 - just for comfort instead of items[96] 01-96;
for (char j = 0; j <= 9; j++)
if (dwCode == ((i + '0') << 24) + ((j + '0') << 16) + (('@') << 8) + ((' ')))
return TRUE; }
{//SACRED ARMOR (REGULAR) --WORKING
for (char i = 0; i <= 7; i++) //never mind about those 00, 71-79 - just for comfort instead of items[70] 01-70;
for (char j = 0; j <= 9; j++)//@01 ' @70 '
if (dwCode == (('@') << 24) + ((i + '0') << 16) + ((j + '0') << 8) + ((' ')))
return TRUE; }
{//SACRED WEAPON / ARMOR (CLASS) --WORKING
unsigned long items[] = { '7@1 ', '5@2 ', '3@3 ', '1@4 ', '8@4 ', '6@5 ', '4@6 ', '2@7 ',
'9@7 ', '7@8 ', '5@9 ', '3@A ', '1@B ', '6@C ', '4@D ', '2@E ', '9@E ',
'!07 ', '!14 ', '!21 ', '!28 ', '!34 ', '!41 ', '!48 ', '!55 ', '!62 ', '!69 ', '!76 ', '!83 ', '!90 ', '!97 ',
'!5! ',
'7@G ', '5@H ', '3@I ', '1@J ', '8@J ', '6@K ', '4@L ', '2@M ', '9@M ', '7@N ', '5@O ', '3@P ', '1@Q ',
'07! ', '14! ', '21! ', '28! ', '35! ', '42! ', '49! ', '56! ' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
{//SACRED amu rings and quivers and nefalem ones (not sure there)
//'Nephalem Amulet (Sacred)', 'Nephalem Ring (Sacred)', 'Nephalem Arrow Quiver (Sacred)', 'Nephalem Bolt Quiver (Sacred)'
unsigned long items[] = { 'qmu ', 'qin ', 'qqv ', 'qqc ', 'Neph' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
{//SHRINES & VESSELS --WORKING
char shrinesAndVessels1[20] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T' };
char shrinesAndVessels2[10] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
unsigned long c[400];
for (char i = 0; i < 20; i++)
for (char j = 0; j < 10; j++)
c[i * 10 + j + 1] = (shrinesAndVessels1[i] << 24) + (shrinesAndVessels2[j] << 16) + (('+') << 8) + ((' '));
for (char i = 0; i < 20; i++)
for (char j = 0; j < 10; j++)
c[i * 10 + j + 1 + 199] = (shrinesAndVessels1[i] << 24) + (shrinesAndVessels2[j] << 16) + (('+') << 8) + (('S'));
for each (unsigned long item in c)
if (dwCode == item)
return TRUE; }
//WIRTS LEG & CUBE approved
if (dwCode == 'leg ' || dwCode == 'box ')
return TRUE;
//APPLE & Full Rejuv pot approved
if (dwCode == 'dog ' || dwCode == 'rvl ')
return TRUE;
//REGULAR RUNES --WORKING
if (dwCode == 'r50 ')
return TRUE;
{//GREAT RUNES (including elemental runes) approved
unsigned long items[] = { 'r51 ', 'r52 ', 'r53 ', 'r54 ', 'r55 ', 'r56 ', 'r57 ', 'r58 ', 'r59 ', 'r60 ', 'r61 ', 'r62 ' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
{//PERFECT GEMS --WORKING
unsigned long items[] = { '5$e ', '7$e ', '9$e ', 'g$e ', 'yo5 ', 'gpv ', 'gpy ', 'gpb ', 'gpg ', 'gpr ', 'gpw ', 'skz ' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
//SIGNETS
if (dwCode == 'zku ' || dwCode == 'zkr ' || //of experi +greater
//of gold +greater // <Signet of Gold> from Kryomyr /// NEED TO CHECK THIS!!!maybe long not hex
dwCode == 'zkw ' || dwCode == 'zkx ' || dwCode == '*\+ ' ||
dwCode == '!@B ' || //of skill
dwCode == 'mnx2' || //from Kryomyr not sure what is it
//of learning +greater +large +custom
dwCode == 'zkq ' || dwCode == 'zky ' || dwCode == 'zk# ' || dwCode == '##^ ' ||
//UNKNOWN SIGNETS...
dwCode == 'zka ' || dwCode == 'zkb ' || dwCode == 'zkc ' ||
dwCode == 'zkd ' || dwCode == 'zke ' || dwCode == 'zkf ')
return TRUE;
//TROPHIES approved
if (dwCode == 'µ01 ' || // <Lord Aldric Jitan Trophy>
dwCode == 'µ02 ' || // <Legacy of Blood Trophy>
dwCode == 'µ03 ' || // <Judgement Day Trophy>
dwCode == 'µ04 ' || // <Akarat Trophy>
dwCode == 'µ05 ' || // <Kingdom of Shadow Trophy>
dwCode == 'µ06 ' || // <Duncraig Trophy>
dwCode == 'µ07 ' || // <Rathma Square Trophy>
dwCode == 'µ08 ' || // <Cathedral of Vanity Trophy>
dwCode == 'µ09 ' || // <Tran Athulua Trophy>
dwCode == 'µ10 ' || // <Quov Tsin Trophy>
dwCode == 'µ11 ' || // <Astrogha Trophy>
dwCode == 'µ12 ' || // <Azmodan Trophy>
dwCode == 'µ13 ' || // <MCS Trophy>
dwCode == 'µ14 ' || // <Brother Laz Trophy>
dwCode == 'µ15 ' || // <Triune Trophy>
dwCode == 'bxt ' || // <Kabraxis Trophy>
dwCode == '##/ ' || // <Uldyssian's Trophy>
dwCode == 'µ99 ' || // <Learn to Read Trophy>
dwCode == 'µ98 ') // <Cleanup Trophy>
return TRUE;
//book of summoning and other boss stuff
//DUNGEON approved
if (
dwCode == 'a59 ' || // <Laser Focus Crystal> d1/11
dwCode == 'a55 ' || // <Optical Detector> d3/11
dwCode == 'a68 ' || // <Horazon's Focus> d2/11
dwCode == 'yqx ' || // <Spirit Trance Herb> d4/11
dwCode == 'a56 ' || // <Azmodan's Heart> d5/11
dwCode == 'a66 ' || // <Idol of Vanity> d6/11
dwCode == 'w@w ' || // <Cold Fusion Schematics> d7/11
dwCode == 'lok ' || // <Crystalline Flame Medallion> d8/11+++++s7/11
dwCode == '`|# ' || // <The Sleep> d9/11
dwCode == '##. ' || // <Uldyssian's Sword> d10/11
dwCode == 'voi1' || // <Scroll of Greed> d11/11
dwCode == 'voi2' || // <Scroll of Sloth> d11/11
dwCode == 'voi3' || // <Scroll of Envy> d11/11
dwCode == 'voi4' || // <Scroll of Wrath> d11/11
dwCode == 'voi5' || // <Scroll of Gluttony> d11/11
dwCode == 'voi6' || // <Scroll of Lust> d11/11
dwCode == 'vor1' || // <Ring of Pride> ?????
dwCode == 'vor2' || // <Sigil of 7 Deadly Sins> d11/11
dwCode == 'voDX' || // <Enchanting Crystal> d11/11
dwCode == 'voXX') // <Rathma's Supremacy> d11/11
return TRUE;
//SUMMONING approved
if (
dwCode == 'a60 ' || // <The Butcher's Tooth> s1/11
dwCode == 'a58 ' || // <Scroll of Kings> s2/11
dwCode == 'a61 ' || // <Sacred Worldstone Key> s3/11
dwCode == 'a57 ' || // <Visions of Akarat> s4/11
dwCode == 'adi ' || // <By Richard Knaak | Legacy of Blood> s5/11
dwCode == 'yqe ' || // <By Richard Knaak | Moon of the Spider> s6/11
dwCode == 'r97 ' || // <Unknown Skull> s8/11 OR u7/12 either sk1 or sk2 DUBLICATE
dwCode == 'r99 ' || // <Unknown Skull> s8/11 OR u7/12 either sk1 or sk2 DUBLICATE
dwCode == 'x@x ' || // <The Glorious Book of Median> s9/11
dwCode == 'lawl' || // <Soulkeeper | Congratulations!> s10/11
dwCode == 'a67 ') // <Congratulations.You got it | Spirit of Damnation> s11/11
return TRUE;
//UBERLEVELS approved
if (
dwCode == '0u1 ' || // <Hammer of the Taan Judges> u1/12
dwCode == 'yq1 ' || // <Sunless Crystal Bird> u2/12
dwCode == 'yq2 ' || // <Six Angel Bag> u2/12
dwCode == 'kZ8 ' || // <Sunless Crystal Bird> u2/12
dwCode == 'yq8 ' || // <Zakarum's Ear> u3/12
dwCode == 'x#x ' || // <Sunstone of the Elements> u4/12
dwCode == 'x1x ' || // <Sunstone of Fire> u4/12
dwCode == 'x2x ' || // <Sunstone of Ice> u4/12
dwCode == 'x3x ' || // <Sunstone of Thunder> u4/12
dwCode == 'x4x ' || // <Sunstone of the Gods> u4/12
dwCode == '2x5 ' || // <Alpha Brain> u5/12
dwCode == '2x6 ' || // <Beta Brain> u5/12
dwCode == '2x7 ' || // <Gamma Brain> u5/12
dwCode == '2x8 ' || // <Delta Brain> u5/12
dwCode == '2x9 ' || // <Epsilon Brain> u5/12
dwCode == '\\8 ' || // <Lucion's Soulstone> u6/12
dwCode == '\\7 ' || // <Tome of Possession> u6/12
dwCode == 'Kx1 ' || // <Earth Stone> u7/12
dwCode == 'Kx2 ' || // <Magic Stone> u7/12
dwCode == 'Kx3 ' || // <Poison Stone> u7/12
dwCode == 'Kx4 ' || // <Light Stone> u7/12
dwCode == 'Kx5 ' || // <Ice Stone> u7/12
dwCode == 'Kx6 ' || // <Fire Stone> u7/12
dwCode == 'r98 ' || // <(Can't be Unsocketed)|Legendary Rune|Kabraxis' Stone> u7/12
dwCode == 'r97 ' || // <Unknown Skull> s8/11 OR u7/12 either sk1 or sk2 DUBLICATE
dwCode == 'r99 ' || // <Unknown Skull> s8/11 OR u7/12 either sk1 or sk2 DUBLICATE
dwCode == '`^` ' || // <Trader's Chest> u7/12
dwCode == '`^# ' || // <Mystic Shard> u7/12+h4/6
dwCode == 'x0x ' || // <Eternal Bone Pile> u8/12
dwCode == 'l@l ' || // <Skinrender's Sigil> u10/12
dwCode == 'm@m ' || // <Spinecracker's Sigil> u10/12
dwCode == 'o@o ' || // <Eyegouger's Sigil> u10/12
dwCode == 'p@p ' || // <Fleshcutter's Sigil> u10/12
dwCode == 'q@q ' || // <Bonehexer's Sigil> u10/12
dwCode == 'r@r ' || // <Ring of the Five> u10/12
dwCode == 's@s ' || // <Assur's Bane> u10/12
dwCode == 't@t ' || // <Demonsbane> u10/12
dwCode == '|\\ ' || // <The Ancient Repositories> u11/12
dwCode == '||_ ' || // <Cube Reagent | Cursed Crystal> u12/12
dwCode == '|\# ') // <Brachyceran's Token> u12/12 /// NEED TO CHECK THIS!!!maybe long not hex
return TRUE;
//HEROIC approved
if (
dwCode == 'az! ' || // <Fool's Gold> h1/6
dwCode == 'aq! ' || // <Silver Seal of Ureh> h2/6
dwCode == 'k@k ' || // <The Book of Lies> h3/6
dwCode == '@## ' || // <Deity's Bow> h4/6
// NOOOO VALKARIES PRIME LISTED!!!!!!!!!!!!!!!!!!!!!!! h4/6
dwCode == '#X1 ' || // <Token of Suffering> h4/6
dwCode == '#X2 ' || // <Token of Pain> h4/6
dwCode == '#X3 ' || // <Token of Hatred> h4/6
dwCode == '#X4 ' || // <Token of Terror> h4/6
dwCode == '#X5 ' || // <Token of Destruction> h4/6
dwCode == '#X6 ' || // <Token of Lies> h4/6
dwCode == '||. ' || // <Cube Reagent | Blessed Crystal> h4/6
dwCode == '||` ' || // <Broken Crystal> h4/6 ?????
dwCode == '||l ' || // <Cube Reagent | Book of the Wise> h4/6
dwCode == 'ab! ' || // <Astrogha's Venom Stinger> h5/6
dwCode == 'brx ' || // <Scroll of Kabraxis> h6/6 ??
dwCode == 'bxa ' || // <Soul of Kabraxis> h6/6
dwCode == '\\1 ' || // <Great Rainbow Stone> h6/6
dwCode == '\\2 ' || // <Great Skull> h6/6
dwCode == '\\3 ' || // <Great Topaz> h6/6
dwCode == '\\4 ' || // <Great Saphire> h6/6
dwCode == '\\5 ') // <Great Ruby> h6/6
return TRUE;
//Monster Tokens / Veteran approved
if (
dwCode == '!@1 ' || // <Evil Eye of the Clawstorm>
dwCode == '!@2 ' || // <Evil Eye of the Landmass>
dwCode == '!@3 ' || // <Evil Eye of the Glowing Blob>
dwCode == '!@4 ' || // <Evil Eye of the Fairy Witch>
dwCode == '!@5 ') // <Evil Eye of the Bane Hunter>
return TRUE;
//Monster Tokens / ActBoss approved
if (
dwCode == '!@6 ' || // <Dogma of Suffering>
dwCode == '!@7 ' || // <Dogma of Pain>
dwCode == '!@8 ' || // <Dogma of Hatred>
dwCode == '!@9 ' || // <Dogma of Terror>
dwCode == '!@A ') // <Dogma of Destruction>
return TRUE;
//Challenges LC0 approved
if (
dwCode == 'zen ' || // <Median XL : Ultimative XVI | Don't read me!>
dwCode == '#X8 ' || // <Instructions | Level Challenge 0>
dwCode == '#X7 ') // <Level Challenge 0>
//NOOOO HARKON CRYSTAL LISTED!!!!!!!!!!!!!!!!!!!!!!!!!!!
return TRUE;
//Different trash approved
if (
dwCode == 'j34 ' || // <A Jade Figurine>
dwCode == 'g34 ' || // <The Golden Bird>
dwCode == 'bbb ' || // <Lam Esen's Tome>
dwCode == 'box ' || // <Horadric Cube>
dwCode == 'tr1 ' || // <Horadric Scroll>
dwCode == 'tr2 ' || // <Cube Reagent | Scroll of Resistance>
dwCode == 'mss ' || // <Mephisto's Soulstone>
dwCode == 'ass ' || // <Right Click to learn skill of your choice | Book of Skill>
dwCode == 'qey ' || // <Khalim's Eye>
dwCode == 'qhr ' || // <Khalim's Heart>
dwCode == 'qbr ' || // <Khalim's Brain>
dwCode == 'ear ' || // <Ear>
dwCode == 'ice ' || // <Keep it to thaw Anya | Malah's Potion>
dwCode == '0sc ' || // <Scroll of Knowledge>
dwCode == '#X91' || // <Special Box>
dwCode == '#X9 ' || // <Gift Box>
dwCode == 's0m ' || // <Book of Summoning>
dwCode == 'u@+ ' || // <I Am Rich>
dwCode == 'yq9 ' || // <Aerial's Skull>
dwCode == '96- ' || // <Pearl of Wisdom>
dwCode == 'b@b ' || // <Goodberry> ///Cube Reagent
dwCode == 'zog ' || // <Life Pack>
dwCode == 'zoh ' || // <Energy Pack>
dwCode == 'c@c ' || // <Moon Symbol> ///Cube Reagent
dwCode == '98- ' || // <Pearl of Wisdom>
dwCode == '>.< ' || // <Character Orb>
dwCode == 'yq7 ' || // <Hard Mode Charm> ?????
dwCode == 'k.Z ' || // <Key of Damnation> ?????
dwCode == 'u@v ' || // <for an upgrade!| See the documentation | You're not cool enough!|Poser!>
dwCode == '#X0 ' || // <Gem>
dwCode == '#1^ ' || // <Diablo's Essence>
dwCode == '#2^ ' || // <Pandora's Box> ///Cube Reagent
dwCode == '#Y^ ' || // <Creator's Hand|Congratulations!>
dwCode == 'µ99 ' || // <Learn to Read Trophy>
dwCode == 'µ98 ' || // <Cleanup Trophy>
dwCode == '||# ' || // <Book of Ultimative> ///Cube Reagent
dwCode == '||* ' || // <Book> ///Cube Reagent
dwCode == '||; ') // <> // WTF?????
return TRUE;
////Class Charms approved
//if (dwCode == 'x01 ' || dwCode == 'x02 ' || dwCode == 'x03 ' ||
// dwCode == 'x04 ' || dwCode == 'x05 ' || dwCode == 'x06 ' ||
// dwCode == 'x07 ')
// return TRUE;
//Yshari sets incase need them with regular sets turned off approved
if (dwCode == 'Ysh1' || dwCode == 'Ysh2' || dwCode == 'Ysh3' ||
dwCode == 'Ysh4' || dwCode == 'Ysh5' || dwCode == 'Ysh6' ||
dwCode == 'Ysh7' || dwCode == 'Ysh8' || dwCode == 'Ysh9')
return TRUE;
//UNIQUE MYSTIC ORBS
if (dwCode == '&66 ' || dwCode == '&67 ' || dwCode == '&68 ' ||
dwCode == '&69 ' || dwCode == '&70 ' || dwCode == '&71 ' ||
dwCode == '&72 ' || dwCode == '&73 ' || dwCode == '&74 ' ||
dwCode == '&75 ' || dwCode == '&76 ' || dwCode == '&77 ' ||
dwCode == '&78 ' || dwCode == '&79 ' || dwCode == '&80 ' ||
dwCode == '&81 ' || dwCode == '&82 ' || dwCode == '&83 ' ||
dwCode == '&84 ' || dwCode == '&85 ' || dwCode == '&86 ' ||
dwCode == '&87 ' || dwCode == '&88 ' || dwCode == '&89 ' ||
dwCode == '&90 ' || dwCode == '&91 ' || dwCode == '&92 ' ||
dwCode == '&93 ' || dwCode == '&94 ' || dwCode == '&95 ')
return TRUE;
//CYCLES approved
if (dwCode == 'cm1 ' || dwCode == 'cm2 ' || dwCode == 'cm3 ' || dwCode == '\\6 ')
return TRUE;
{//ARCANE SHARDS and CRYSTAL --WORKING
unsigned long items[] = { 'eur ', 'eus ', 'eut ', 'eux ',
'qus ', 'qut ', 'qux ', 'quy ',
'qum ', 'qul ', '#3^ ', '#4^ ', '#5^ ' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
{//OILS + Catalysts + blessed oil of luck + Belladonna Extract --WORKING
unsigned long items[] = { '0oµ ', '1oµ ', '2oµ ', '3oµ ', '4oµ ', '5oµ ', '6oµ ', '7oµ ', '8oµ ', '9oµ ', '6xµ ', 'toa ' };
for each (unsigned long item in items)
if (dwCode == item)
return TRUE; }
return FALSE;
}
D2DropFilter.cppFINISHED (all uber stuff included, can create custom filter if need)p.s.
► the one im using atm, most usefull sacred rares only of all sacreds
D2DropFilter.dllCode: Select all
dwCode == 'rin ' ||
dwCode == 'amu ' ||
dwCode == 'jew ' ||
dwCode == '@15 ' || // <Ancient Armor(Sacred)>
dwCode == '67@ ' || // <Short War Bow(Sacred)>
dwCode == '!07 ' || // <Naginata(Sacred)>
dwCode == '@21 ' || // <Crown(Sacred)>
dwCode == '@61 ' || // <Crown Shield(Sacred)>
dwCode == '@70 ' || // <Diadem(Sacred)>
dwCode == '@32 ' || // <Plated Belt(Sacred)>
dwCode == '@37 ' || // <Gauntlets(Sacred)>
dwCode == '@42 ' || // <Greaves(Sacred)>
dwCode == '@27 ' || // <Gothic Shield(Sacred)>
dwCode == '@14 ' || // <Full Plate Mail(Sacred)>
dwCode == '@13 ' || // <Gothic Plate(Sacred)>
dwCode == '59@ ' || // <Scythe(Sacred)>
dwCode == '68@ ' || // <Long War Bow(Sacred)>
dwCode == '72@ ')) // <Grim Wand(Sacred)>