Jax64 on 16/7/2022 at 06:13
While just checking for a populated pal directory in an OldDark mission is probably sufficient in practice due to the fact that only a small handful of missions include replacement palettes, this is not really foolproof. To be absolutely sure that the mission was designed for a replacement palette to be used with palettized object textures, you should first check the name of the global palette by querying the "default_game_palette" configuration variable. This variable is usually defined in dark.cfg and is "darkpal" in the original game's configuration. If the mission packages a palette with the same name as the retrieved value, then it was intended to be used with the included palette. All of this is only relevant for OldDark missions, of course, since NewDark's default behavior is to ignore the global palette when converting palettized object textures.
Following this procedure should eliminate any possible false positives. For example, we can be sure that The Burrick's Head Inn VE was intended to be used with the included palette because "default_game_palette" was not changed from the standard "darkpal" and it includes darkpal.pcx in the pal resource directory.
As for missions that include replacement palettes, from a quick search it seems to be just Ranstall Keep (both the Thief Gold and Thief 2 releases), The Burrick's Head Inn VE, A Better Tomorrow, Last Caress, and the original version of What Lies Below. It is possible that there are more, however.
FenPhoenix on 16/7/2022 at 09:55
Fantastic, thanks. That logic works perfectly in testing. I'll implement that as an automatic feature, and the "disable new mantle for OldDark missions" as an optional one.
SlyFoxx on 16/7/2022 at 11:54
You'll suss it out Fen.
Oh Master Builder. We prey that you guide this taffer's hands that he might add greater functionality to his magnificent creation and that we all come to benefit. :angel: