Sorry for my late answer, but okh seems to have found the issues in your
PluginFurnitureCatalog.properties file, right?
About id management, when a piece of furniture with an existing
id is read, it's simply ignored. So, what is important is to know which piece will be read first when a piece is found twice or more with the same
id.
Furniture is read first from the default library (the ones listed in
DefaultFurnitureCatalog.properties and
ContributedFurnitureCatalog.properties, and stored in the
Furniture.jar installed file).
Then, the ones in sh3f files are read in reverse alphabetical order and reverse order of their version number, so a model with a given
id will be read in a file named [font=courier new]xyz.2.sh3f[/font] and ignored if found again in [font=courier new]xyz.1.sh3f[/font] or in [font=courier new]xxx.2.sh3f[/font]. This rule allows to give a higher priority to newer libraries and is used also for sh3t textures files, sh3p plug-in files and sh3l languages files.
Finally, furniture that was individually imported is read, but as you can't specify an id when you import an individual model, it's not important in this case.
Unfortunately, this rule forbids to replace a piece found in the default library by an other one.