Basically you would need to download this package, build it - it uses cmake to create vsproj files which you should then compile with vs and copy the library path to this project linker -> additional dependancies. Also change the include path in cppsucks.cpp. This library is used for decompression of dxt compressed textures from the Zone file.
Additionally you would need to download sketchup SDK and include it in the include path plus mklink in the headers sub-directory from SketchupAPI to slapi. Or you can just replace slapi in rmxtoskp.c with SketchupAPI. And also of-course add the libraries in linker -> additional dependancies.
You would notices I've included the header files inside several functions - that is because the structures declarations are relative. They need variable declarations to be present. Based pointers for more info. Also I've prefixed them with __ptr32 since the file format uses 32 bit words for offsets. Also you would notice some superfluous parentheses around declarators and comma operators in place of semicolon - the later is actually needed when being the inner statement of a loop or conditional statement but other than that this is a trade-mark. I've also used old style function definitions.
actually the only users I would get since I'm ussing based pointers
You would get some initial errors because of an union inside a structure in some sketchup header - you would need to extract it in file scope to make things work.
- rmx file
- zone file
- input skp file (optional - if specified apply patches to game files, otherwise write to new_model.skp extracted data)
Considerting you are reading this I've probably provided you with a sample. If not you would need nakamichi680 ungmx tool to appy to unlz-ed level from the cache directory - it's in the root of the game folder. You would obviosuly need to start up the game with the level you want to extract first.