2. identify and "reduce score"
From the "school" I'm coming from leecher is given the benefit of the doubt, i.e. since potentially he might become a source I prefer the identify and "reduce score" approach.
Here is my new idea :
Until now identified leechers data was preseved between mod activation so that known leechers can be treated as such "on sight".
My idea :
embedded SUQWT with "no SUQWT" for leechers and each activation of mod starts with clean (or none) collected data (can be done otherwise with altered constructor - however for a demo it proves my point) :
// By Taz - no SUQWT for ModThief or NickThief bool was_thief = pAntiLeechData->GetBadForThisSession(AT_NICKTHIEF); // <------- no SUQWT for ModThief or NickThief pAntiLeechData->Check4NickThief(); //collector // By Taz - no SUQWT for ModThief or NickThief if (Credits() && !was_thief && pAntiLeechData->GetBadForThisSession(AT_NICKTHIEF)) // 1'st identify Credits()->ClearUploadQueueWaitTime(); // <------- no SUQWT for ModThief or NickThief
same goes for identify mod thieves.
Newly detected thief leechers do not earn their wait in queue from previous sessions thus are inferior and upload queue sure seems cleaner ...
BTW: ideally working reduce score system should have caused leechers to be longest waiting, "least" getting anyway ...