只需移动一格就能显示物品id
查找：

    public short getSlotMax(MapleClient c, int itemId) {
                 if (c.getPlayer().isGM()) {
	c.getPlayer().dropMessage(5, "物品/" + itemId );//添加
        }
        Short slotMax = slotMaxCache.get(itemId);
        if (slotMax != null) {
            return (short)(slotMax + getExtraSlotMaxFromPlayer(c, itemId));
        }
        short ret = 0;
        MapleData item = getItemData(itemId);
        if (item != null) {
            MapleData smEntry = item.getChildByPath("info/slotMax");
            if (smEntry == null) {
                if (ItemConstants.getInventoryType(itemId).getType() == MapleInventoryType.EQUIP.getType()) {
                    ret = 1;
                } else {
                    ret = 100;
                }
            } else {
                ret = (short) MapleDataTool.getInt(smEntry);
            }
        }

        slotMaxCache.put(itemId, ret);
        return (short)(ret + getExtraSlotMaxFromPlayer(c, itemId));
    }



另外一个地址（两个地址只需要修改一个地址就可以了）：


    private static short getExtraSlotMaxFromPlayer(MapleClient c, int itemId) {
        short ret = 0;
                 if (c.getPlayer().isGM()) {
	c.getPlayer().dropMessage(5, "物品/" + itemId );//添加
        }
        // thanks GMChuck for detecting player sensitive data being cached into getSlotMax
        if (ItemConstants.isThrowingStar(itemId)) {
            if(c.getPlayer().getJob().isA(MapleJob.NIGHTWALKER1)) {
                ret += c.getPlayer().getSkillLevel(SkillFactory.getSkill(NightWalker.CLAW_MASTERY)) * 10;
            } else {
                ret += c.getPlayer().getSkillLevel(SkillFactory.getSkill(Assassin.CLAW_MASTERY)) * 10;
            }
        } else if (ItemConstants.isBullet(itemId)) {
            ret += c.getPlayer().getSkillLevel(SkillFactory.getSkill(Gunslinger.GUN_MASTERY)) * 10;
        }

        return ret;
    }