What if instead of putting the item drops in mob_db.txt you used a script to control them?
delete the item drops for you mob (/db/mob_db.txt or the SQL table)
configure the drops here in the "dropitem" section
- script custom_itemdrops -1,{
function dropitem;
OnNPCKillEvent:
if (killedrid == <your_custom_mob_id>) {
// dropitem <item_id>,<chance>;
dropitem 911, 10000; // 100.00% chance
dropitem 911, 5000; // 50.00% chance
dropitem 911, 100; // 1.00% chance
dropitem 911, 1; // .01% chance
}
end;
function dropitem {
set .@item_id, getarg(0);
set .@drop_per, getarg(1);
if (rand(10000) < .@drop_per) {
if (checkweight(.@item_id,1)) {
getitem .@item_id,1;
} else {
getmapxy(.@map$,.@x,.@y,0);
makeitem .@item_id,1, .@map$,.@x,.@y;
}
announce "'"+strcharinfo(0)+"' got "+getmonsterinfo(killedrid,MOB_NAME)+"'s "+getitemname(.@item_id)+" (chance: "+ (getarg(1)/100 + "." + getarg(1)%100) +"%)", bc_all;
}
return;
}
}
</chance></item_id></your_custom_mob_id>