Material Layering

At the moment, I’m making a suit of armor. Eventually, I want to make several different colored versions of it. Just palette swaps basically. At present, I have all parts of it so far with a base colored metal material that I want to use. Now, on top of this, I need to apply decals for texture detail. These decals are unique to each part though. The only way I know how to do this, is to create a single user copy of the material for each decal-ed part, and apply the decal as a texture layer to that. The problem here, though, is that if I want to bake with a different base metal color, I now have several different materials to edit, and duplicate settings from. This seems counterintuitive, and there must be a better way. I want one base material that I can edit, where the edits will in turn apply to all other materials using the base. I think this is possible with material nodes, but I’m not sure how. Can anyone advise?