D2Stats 3.11.1

Discuss Median XL!
Ibra1
Abomination
151 | 0
I can see how to get the drop filter to not show a single type of item, such as white or Blue Magic arrow quivers or whatever.

Right now, it hides white, grey and blue magic items below Sacred. It SHOWS white and grey and blue sacreds (I think if they are superior) I cannot see, in the D2DropFilter.cpp file where it makes a distinction here... I want to hide the white/grey/blue sacreds, but don't see where it can even determines level of sacreds.

EDIT: Ok, some success. I found (Earlier in this thread, post #432 by PaintedDots (Thank you sir) about the item quality level:

1 = Low Quality
2 = Normal
3 = Superior
4 = Magic
5 = Set
6 = Rare
7 = Unique
8 = Crafted

I added the following line to the D2DropFilter.cpp.

if (dwQuality == 3)
return FALSE;

Now, all Superior white or gray items are nicely hidden. (This might not hide the magic Sacreds though, so I have to test that tomorrow. Sleepy now)
User avatar
annoying cat
Monkey King
278 | 1
Ibra1 wrote:
annoying cat wrote:what do i use to edit the source code?

thanks.


annoying cat,

It's frustrating isn't it? I've been trying for WEEKS to get a step by step on editing the dropfilter myself and have spent many hours just trying to turn the original source code, without any edits, into a .dll file to no avail. VS gives me errors saying that a file is missing when I try to actually build the .dll, but I've downloaded the entire source code, so everything SHOULD be there. I can open this or that file with Notepad++, but what good does it do me to tinker with the source code files, if the programs I use can't even make a .dll file out of the original unchanged files?

Everyone says "use this program" or "this program works great" but what most of us need is a 1. 2. 3. on how to get it to compile the .dll. It wouldn't take more than 15 minutes I'd think.
1. First, Dowload the full Dropfilter source code. (I've done this)
1. Download "THIS" program to work with the source code, to make the dropfilter.dll (I've done this with different programs. VS, Autoit)
2. THIS file in the source code files is the one that excludes items, and THIS file in the source code files INCLUDES items. Don't mess with the rest of the files. (I've opened pretty much every file inside of Notepad++, and other editors, and looked around. NOT totally cryptic, I think I can make edits here no problem)
3. Now, click "Here" in the ".dll building program" and tell it to "build .dll" This is where I get the hang-up. I can't seem to get a program to make a .dll file, without errors, WITHOUT doing anything to the original source code.

I have tried doing research into VS online, but making the dropfilter.dll file is a VERY specific use and all the online documentation tells you how to do other things with Virtual Studio.


(I DO want to say that I and others have gotten some help along these lines. (THANK YOU Kyromyr!!) I want to thank everyone that has posted suggestions in this and other threads. What I'm trying to say here, is that if just one person would make a unique thread, with the procedures for making edits to the dropfilter.dll, what to use to do edits, and then how to compile the .dll itself, then many people wouldn't ask so many questions, then give up trying after they hit a few road-blocks.) I bet the creator of that thread would get lots of cookies! I guarantee, that if I figure this out, I WILL make the 'edit the dropfilter' post to help out everyone else on here! Booya![/quote

damn great job on everyone who got to mess around with this before i did! :salut: if i did, i'd have a prob with .dll extension also. i hope that this will have normal eth sacred items notification and detection added.

8-) googling ms virtual studio right now.
fbkkrieger
Jungle Hunter
27 | 4
Great Supporter Badge
Donated 5 times
Great Patron Badge
Patreon Contributor
Common Auction Badge
Won 50 auctions
Hmm the screenshot with the debug is wrong i have made it before i did the dll thing. As long as the plattform is x86/win32 you are good.

So now you want to edit the dropfilter what you need is the items.txt which shows you the internal code for the item.


Here is my drop filter its more a white-list where i select which items the filter will show on the ground:
Sorry the formatting is lost. And if you copy this code remember these are my filter settings so don't complain if something you like isn't showing on the screen!!! And again it could be better coded or structured but i tried not to get too much into it and play more median =)

► Show Spoiler


The last block if else if.

here you will hide everything else which is not handled by your white-list and it has to be on the bottom else it won't work correctly.

Oh i see the ring and amulet is redundant i filtered them already above out.

This one imports the file generated by the lua script which hides items like chipped gems, ... and TU items except unique versions because on top if its a unique item it will always be shown on the ground. You can edit the lua script and run it with run.bat to create a new exception list. You could edit it for an leveling filter.

else if (pItem->dwClass < sizeof(excludes) && excludes[pItem->dwClass])
return FALSE;


This last line will filter out all items which are yellow blue grey white and it doesn't matter if its sacred or not.
else if ((dwQuality == 4) || (dwQuality == 3) || (dwQuality == 2) || (dwQuality == 6) || (dwQuality == 1) || (dwQuality == 0))
return FALSE;


Ok if you have more questions just ask i will try to answer them.

Regards =)
Ibra1
Abomination
151 | 0
Thanks again for the info fbkkrieger! I was actually wondering how it was filtering out the lower gems, and runes, and other low level things, as that didn't seem to be addressed by the D2DropFilter.cpp file. The Lua file does that then? How does that work? I looked into the excludes.lua file, and see how the lower runes & gems are being hidden. So, you are saying that after I make a change, then run the Lua.bat to put them into effect?

EDIT: Ok, yes, it works as described above. Edit the excludes.lua file according to what items are hidden, and then run the .bat file. After encoding, it now hides the Pgems like I want it to.
Edited by Ibra1 6 years.
Ibra1
Abomination
151 | 0
One more problem that I'm having.

After encoding the dropfilter.dll, it works just fine on my computer. However when I send it to a buddy and he tries to run it on his system, he gets a "Failed to inject DropFilter." message.

The original dropfilter that came from the original gethub works fine on his system. So i'm thinking that maybe the .dll's that I'm encoding are using a different VC_redist than he has on his system. On my system, I have a BUNCH of VC_redist installed...

Image

On his system, he has 2008, 2010, and 2015. So how can I tell my VS to encode using the right one (Or what is most likely to be on other people's system) OR, how can I figure out which my VS is using? Haha, maybe it doesn't even work the way I'm thinking and something else is wrong?

EDIT: One more odd thing. The Dropfilter.dll that is downloaded off of github is 15KB. When I run the source files through VS, the DropFilter.dll that I make is 53KB. Why would it be almost 3 times as big? Wondering if this is why it isn't working on other people's systems...
User avatar
Crash
Madawc
6799 | 327
Great Posting Badge
Posted over 2.500 messages
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Great Supporter Badge
Donated 5 times
Common Showcase Badge
Median XL Broadcaster
Common Guide Badge
Created a complete character guide
Common Contribution Badge
Has collaborated to our forums, realms or mod
Common Auction Badge
Won 50 auctions
When wearing heavier armor like Gothic Plate, I get -5% frw in the skill category, not the item category. Intended/accurate?
User avatar
Quirinus
Team Member
1510 | 184
Common Posting Badge
Posted over 1.000 messages
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Common Supporter Badge
Donated 1 time
Legendary Contribution Badge
Median XL Team Member
L H wrote:When wearing heavier armor like Gothic Plate, I get -5% frw in the skill category, not the item category. Intended/accurate?


yes, shield and armor -%frw is skill frw (sometimes called velocity on some skills), it slows you down more than just regular item %frw
"but if it's simple it's not that hard" - Quirinus 2017
"small things like this are not a big deal" - Quirinus 2017
User avatar
Crash
Madawc
6799 | 327
Great Posting Badge
Posted over 2.500 messages
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Great Supporter Badge
Donated 5 times
Common Showcase Badge
Median XL Broadcaster
Common Guide Badge
Created a complete character guide
Common Contribution Badge
Has collaborated to our forums, realms or mod
Common Auction Badge
Won 50 auctions
So the difference in velocity vs frw is just in the fact that its skill vs gear?
chickenfeeder
Grubber
322 | 0
there is 'd2stats.exe' file in the extracted folder and there are these lines: 'notify-tiered=1'; 'notify-sacred=1';.... Can i add another type of item here directly? Like 'notify-ancient_armor' or smthing like that?
Kyromyr
Cog
207 | 115
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Common Contribution Badge
Has collaborated to our forums, realms or mod
chickenfeeder wrote:there is 'd2stats.exe' file in the extracted folder and there are these lines: 'notify-tiered=1'; 'notify-sacred=1';.... Can i add another type of item here directly? Like 'notify-ancient_armor' or smthing like that?


No.