BaNNshEy Jul 16 @ 12:29pm
Modding/Inner Workings of Majesty
Disclaimer: The information you see presented here is neither officially endorsed or verified, and I am not responsible for any actions or damages caused or created by viewing this. Use this infomation at your own risk.

Hello, So I was wondering "Could the game be modified to accept new content or change existing?" So I did a little research, and... Its fairly lacking. I found a tool on the internet that lets you access (rip) the Majesty Data files from their cam archives (ext: "*.CAM") called FxRipper, an open source tool available from SourceForge[sourceforge.net]

So I ripped Majesty HD Edition in the "*/Data" directory.

here are my findings:

ALL sound file/assets (with exception to the soundtrack) are formatted and encoded in Windows lossless WAV format
(ext: "*.wav")

(!SPECULATION!) All Tiles/images are stored in a bitmapped rasterised ansi c language memory arrays
(ext: "*.til")

(!SPECULATION!) Much of the ingame text is stored in c language ASCII strings
(ext: "*.STR")
The games custom font is stored in the tilesetdata.cam using the .til format.

There are still mulitple file types whose functions are unknown as I have just lightly delved into it. I have not looked at any of the "/DataMX" .cam files or at any other versions of majesty.
I still have no way to veiw or edit the .til files as I have no idea of their file structure and google has nothing as far as I can tell. The .STR files are human readable with exception to their headers and metadata.
I still have no way to repackage the files into .cam archives.

I used FxRipper to rip the .cam archives from /Data Directory, Emacs for initial assesment of unknown files types, Foobar2000 to veiw audio files, and Code::Blocks Hex Editor for in depth analysis.

Any input, advice, or suggestions would be appreciated.