The MSH format (pronounced mesh) is a proprietary model format owned by Pandemic Studios and used in Battlezone II. After reading an ASCII dotXSI (or X) file, the game munges it to a binary MSH file for more efficient use and stores it in the binData folder.
MSH models make use of the same hierarchy structure as their XSI equivalents, with frames containing other frames or primitive mesh components comprised of vertex co-ordinates that combine to produce the full model, though less is known about the format due to its less accessible nature. The format also includes some junk data in each frame that is generally ignored by the game and used only in some special case models for treads and collision meshes; this is referred to as "local mesh" data, as opposed to the "global mesh" data actually used by the game.
Using MSH Files Edit
As a result of the format's proprietary nature only a few programs are able to view or otherwise use it, though munged MSH files can be successfully edited with a hex editor to allow basic changes such as texture swapping provided the file's length is not changed. Only two other programs are able to edit MSH files; both were created by members of the community in order to convert them back to dotXSI files and neither has been released to the public in order to prevent the conversion of MSH files without the permission of their original creator:
- Original converter: The original MSH to XSI converter was created by OvermindDL1 and was tightly controlled to prevent the conversion of MSH files without the permission of their original creator. This program was never distributed to anybody else, and has since been permanently lost. This converter was only able to account for local mesh data, and as a result was unable to accurately convert some models.
- MSH2XSI: A less featureful but more accurate converter created by John Klein, capable of accounting for both local and global mesh data and exporting the model as dotXSI or JSON. Like the original converter it is tightly controlled, though copies of the program are held by three other trusted individuals for safekeeping and their own maintenance and archiving efforts.
The Battlezone II demo uses a different version of the MSH format which is incompatible with the version used in the final release, and the format has demonstrated instabilities when used with a different version of the game than that it was munged with. Further, inconsistencies have been observed when two different installations of the same version are used to munge the same dotXSI file that result in multiplayer incompatibilities; in order to avoid Bad Assets errors, developers are required to distribute the munged files with their releases instead of the originating dotXSI. If edits are made to a dotXSI model after it was loaded in the engine, the resultant MSH must be deleted before the change can be tested in-game.