@Override
    public void deserialize(Buffer buf) {
        super.deserialize(buf);
        staticInfos = ProtocolTypeManager.getInstance().build(buf.readShort());
        staticInfos.deserialize(buf);
        ageBonus = buf.readShort();
        if (ageBonus < -1 || ageBonus > 1000)
            throw new RuntimeException("Forbidden value on ageBonus = " + ageBonus + ", it doesn't respect the following condition : ageBonus < -1 || ageBonus > 1000");
        lootShare = buf.readByte();
        if (lootShare < -1 || lootShare > 8)
            throw new RuntimeException("Forbidden value on lootShare = " + lootShare + ", it doesn't respect the following condition : lootShare < -1 || lootShare > 8");
        alignmentSide = buf.readByte();
        keyRingBonus = buf.readBoolean();
    }