Well, it looks like it was added into the source:
Quote:
==01/15/2005
Doodman: Fixed charges/quantity
Doodman: Fixed IsStackable()
Doodman: Fixed some empty Handle() functons.
Doodman: Added instance level nodrop.
Required SQL:
alter table inventory add instnodrop tinyint(1) unsigned default 0 not null;
|
The following is where instnodrop is referenced in the source:
common/patches/Titanium.cpp
common/Item.h
common/Item.cpp
common/shareddb.cpp
Looking at all of that, it seems the main issue is that
SetInstNodrop() is never called anywhere, but it seems like the client sets it, which is probably why it shows as nodrop until you zone. I have a feeling this probably is related to a missing OpCode or some other packet telling the server it's now nodrop.