Reference Layer Help (Indexed Image)

Hey; not 100% sure how to ask this, even.

Can I load a reference image into a palettized sprite, without that reference image then being put into the palette I’m working with?

What I want at the end: a workflow for making old-school Doom / Quake palettized textures … but with support for doing PBR (normal / occlusion / metal / roughness / etc) on additional layers. Think Valheim, with the blocky look but realistic materials… except, using the old-world techniques instead of modern engines.

Can’t have it without a major Lua undertaking; fine.
Can’t support multiple palettes at the moment; fine.

So for now, I am trying to load a finished layer as a reference image for the next layer. Even trying to save out .pngs.

Example flow that I’d like to work:

  1. make full-color grass texture, using a saved 256 color palette
  2. export to png (not needed for anything but reference image)
  3. make new layer with new palette (normals or elevation or emissives)
  4. load reference .png and have it keep looking like the .png, and not have it converted to “nearest match” within the current palette
  5. run monstrous Lua script that bundles this all into .WAD files (or exports in some other intermediary format)

Is there any hope, or should I be looking at something like trying to design some method in Lua for dynamically building a massive palette, that takes inputs for albedo / emissive / normals / etc, and then figuring out how to extract the separate palettes / layers, after the fact?