There's three categories of .itp's, so you should make sure that you keep them separated in your head. The .itp files most people are used to knowing exist are the cus.itp files. It's a little backwards to start with them, but since they are the most front facing, I'll start with them. The cus.itp files are a saved, compiled collection of categorized blueprints created from taking everything in your custom palette (blueprint files, like .utp placeable blueprints) and listing them in a hierarchy. As far as I can tell, these .itp files have no use whatsoever in the toolset. They also are not used by the server. They are only for making human readable lists in the Creator for DM's (and players using DebugMode), and are sent to DM's when they connect to a server and stored locally temporarily. They are a product of the toolset, the toolset makes these files for DM's when you save the module. Moving backwards are the std.ip files. The "standard" itp's are just like the cus.itp files, used to display all of the "vanilla" content in the creator for DM's and players in the game. They were produced by Bioware, and the Toolset does not export new copies because generally the standard palette is read only, so everyone's standard palette is the same. (I've customized mine at times to reveal the familiars/summons etc) The third and primary .itp category has no suffix, so that would be something like "placeablepal.itp", and these are the most important categories for the toolset and custom content. These main .itp files are framworks for the toolset palette, and when you load a module, it uses this framework and the blueprints in the module, and combines them to populate the blueprint lists you see in the toolset. When you save the module, it also uses these .itp's to generate the cus.itp's also by detecting and sorting the blueprints in the module.
So, if you do something like make "custom palettes" for the toolset, like CEP does, you have made a new pal.itp file with new structure, new categories, which are classified purely by number by blueprints, and the presence of this pal.itp override allows you to break the normal layout of the toolset palette, as well as manufacture DM palette palcus.itp files for your running module.
When you reload the palette in the toolset, this wipes the temporary toolset palette (which isn't a palcus.itp), and starting from scratch, grabs the pal.itp, detects all blueprints in your module, and sorts them into your toolset palettes based on the category number of each of those blueprints.
Making it So Custom Templates (Blueprints) Do Not Appear on the Palettes
Although not recommended, some Builders and CC makers find it convenient to directly modify the template files (e.g. UTC, UTI, UTP files, etc.) for vanilla resources, placing them into a HAK file attached to the module. Unfortunately, this method has the undesired affect of having the modified template appear on both the Standard and Custom Palettes. You can fix this by opening the template file with GFF Editor (available in the /util/win32 folder of your EE installation) and changing the PaletteID to 255. The modified template will still appear on the Standard Palette but not on the Custom Palette.
-written by Symphony in Discord