But it kept all armor tink rares and some strength and focus rares? The strength and focus rares it handed, did you happen to see if those were rares it just received (iow: did it hand them from the first slot of the mainpack)?
I went over my code again and the only way I can see this happening is under the following conditions:
- rare A is a rare that should be handed and has guid X
- Character hands in MMDs, rare A, the next batch of MMDs, receives new rare B which should be kept and has guid X again
- The "destroy item" message for rare A did not reach the client until this point OR WF for some reason did not handle it properly*
I am in no way an expert on AC protocol or inner workings of WF, but from what I know about it this seems the most plausible way. Maybe Virindi or hazridi can shed some light on this?
If I am right about what is happening, I think I can reduce the likelihood of this happening a good deal without sacrificing speed noticeably.
Oh and just out of curiosity: Do you happen to know how long it took the plugin to "burn" through those 500MMDs?
lino
*: Just guessing here, but if guid X exists in WF, the "destroy item" message gets lost (or simply lags behind) and there is a "create item" message for guid X, I assume WF does not overwrite the existing object (or at least not right away?).