MaxBOOST Posted May 20 Share Posted May 20 (edited) I have no idea what actually are these files, but i do know what they do. They basically hold information on a .clu's extra data, such as the position of each mesh and what texture they use, and that's something useful to properly extract the track models. Any help ? I included a .trk file alongside the .clu files and .tga/.dds files it uses and converted versions of the .clu files to .dae for reference: Moorhuhn Kart.zip P.S: See this Post for more info on MHKE's .clu files: Edited May 20 by MaxBOOST added link to more info on .clu files Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 27 Author Share Posted May 27 I looked a bit more into it and i found other games to use it, but they don't use the same model filr, so i think this .trk file is proprietary Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 27 Author Share Posted May 27 ok so i viewed it in a hex editor, and the header starts with TRK.V07. Not sure what format has that same key though Link to comment Share on other sites More sharing options...
shak-otay Posted May 29 Share Posted May 29 (edited) The "positions' part" is totally simple: https://imgbox.com/ULOLSLWd Positions' list should be aesy to obtain: https://imgbox.com/gBLXEKcF Edited May 29 by shak-otay 1 Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 29 Author Share Posted May 29 THAT'S GREAT NEWS ! Maybe we can somehow get the .clu files to use the .trk files as some kind of reference ? Link to comment Share on other sites More sharing options...
shak-otay Posted May 30 Share Posted May 30 Of course we could, I guess. But I'd do it step by step. Is there ingame screenshots of "kaugummi" or "holzhammer"? (the place where they are to be found?) What are your plans (other than waiting for someone doing it for you)? 1 Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 30 Author Share Posted May 30 5 hours ago, shak-otay said: Of course we could, I guess. But I'd do it step by step. Is there ingame screenshots of "kaugummi" or "holzhammer"? (the place where they are to be found?) What are your plans (other than waiting for someone doing it for you)? Oh, yeah uhh those are powerups, and they are their own separate model (they use the power rendet object format .pro) Will send a screenshot of them later today, but they arent part of the clu files for sure Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 30 Author Share Posted May 30 2 hours ago, MaxBOOST said: Oh, yeah uhh those are powerups, and they are their own separate model (they use the power rendet object format .pro) Will send a screenshot of them later today, but they arent part of the clu files for sure Those power ups are pretty much placed by the player, but they are picked up on track from a row of 4 gift boxes spread across the track. The models of said boxes ARE in the .clu files however Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 30 Author Share Posted May 30 soo i can't take a screenshot of the game cuz it softlocks me out of it when i do, but i can send a video of the track i sent first track in the video 1 Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 30 Author Share Posted May 30 (edited) 12 hours ago, shak-otay said: Of course we could, I guess. But I'd do it step by step. Is there ingame screenshots of "kaugummi" or "holzhammer"? (the place where they are to be found?) What are your plans (other than waiting for someone doing it for you)? well i have some experience on ripping some games and looking thru them with a hex editor (namely wxHexEditor), but my skillset doesn't really help me much. i TRIED making a bms script for a game file before, but i failed miserably Edited May 30 by MaxBOOST misspelled miserably Link to comment Share on other sites More sharing options...
shak-otay Posted May 30 Share Posted May 30 (edited) 2 hours ago, MaxBOOST said: i TRIED making a bms script for a game file before, but... Thanks for the video. Couldn't find any item maps such like this one for SeaOfThieves: How an item map could look like (other game!) Quickbms usually is used for unpacking archives. If you used it to create obj files from a game's models (did you?) I'm not surprised of less to no success... Edited May 30 by shak-otay Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 30 Author Share Posted May 30 38 minutes ago, shak-otay said: Thanks for the video. Couldn't find any item maps such like this one for SeaOfThieves: How an item map could look like (other game!) Quickbms usually is used for unpacking archives. If you used it to create obj files from a game's models (did you?) I'm not surprised of less to no success... well not really, i used it for something else, but when i wanted to rip the .obj and .clu models (which was around when i first started to have even the slightest idea of what hex editing is), i used wxHexEditor and Hex2Obj to figure it out. I kinda asked around in case i didn't find a solution back then, but by the time i figured out what to do, you and someone else responded, and the .clu files were the same as the .obj files, albeit bigger and way more time consuming to rip by hand, and i couldn't make sense of the .trk files at all, especially since i am still getting the hang of hex editing. Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 9 minutes ago, MaxBOOST said: well not really, i used it for something else, but when i wanted to rip the .obj and .clu models (which was around when i first started to have even the slightest idea of what hex editing is), i used wxHexEditor and Hex2Obj to figure it out. I kinda asked around in case i didn't find a solution back then, but by the time i figured out what to do, you and someone else responded, and the .clu files were the same as the .obj files, albeit bigger and way more time consuming to rip by hand, and i couldn't make sense of the .trk files at all, especially since i am still getting the hang of hex editing. anyways i would've done the whole (get the .clu files to use the .trk files) myself, if i had a much more extensive knowledge on how to use python to make it do such a thing. Link to comment Share on other sites More sharing options...
shak-otay Posted May 31 Share Posted May 31 (edited) 6 hours ago, MaxBOOST said: anyways i would've done the whole (get the .clu files to use the .trk files) myself, if i had a much more extensive knowledge on how to use python to make it do such a thing. At this point you don't need python, just hex2obj (or meshreaper, whatever). Moorhuhn Kart has nice 3D formats to start with. It requires some basic knowlesge only (what are floats, why is (little endian) 0000803F = 1.0 ? and such). A hex2float converter might be useful. (Some hexeditors have integrated data conversion for it.) hex to float (shows hex representation from left to right, btw: 3f800000, starting with MSB, most significant byte) object in .clu file Edited May 31 by shak-otay Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 6 hours ago, shak-otay said: At this point you don't need python, just hex2obj (or meshreaper, whatever). Moorhuhn Kart has nice 3D formats to start with. It requires some basic knowlesge only (what are floats, why is (little endian) 0000803F = 1.0 ? and such). A hex2float converter might be useful. (Some hexeditors have integrated data conversion for it.) hex to float (shows hex representation from left to right, btw: 3f800000, starting with MSB, most significant byte) object in .clu file Fair, but forgive me if this comes out as rude in any way, but how can this help us find which model in the .clu file goes where. Oh and one more thing i forgot to mention: all models are flipped on the x axis in game Link to comment Share on other sites More sharing options...
shak-otay Posted May 31 Share Posted May 31 4 minutes ago, MaxBOOST said: Fair, but forgive me if this comes out as rude in any way, but how can this help us find which model in the .clu file goes where. Yes, sounds rude, because... I thought is was a great progress to know which models are contained in .clu files. Or did you know that already? Quote Oh and one more thing i forgot to mention: all models are flipped on the x axis in game That's how they come out. It's easier to leave the unflipping to the customer than searching for the rotation matrices, if any, which contain position offsets and maybe a-1 for the flipping. Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 1 hour ago, shak-otay said: Yes, sounds rude, because... I thought is was a great progress to know which models are contained in .clu files. Or did you know that already? oh well i did know that, that's why i apologized. i converted the .clu files to .dae with noesis (and before that i did one of them with hex2obj.) and i kinda have a basic idea on how the tracks work, which i will explain in another post Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 (edited) so as i was saying: the game first reads an ini file which contains info on the tracks like which .trk file to load and what lighting to use. then the .trk file itself contains the names of the .clu files it will load, and where each mesh in said .clu files is placed (after all clu here stands for clustered (found this out when i opened the exe in IDA) the .trk file also has some extra info relating to power ups and player start positions which i didn't really figure out to be honest. (as you can tell by the powerup:kaugummi (which is german for chewing gum) or powerup:holzhammer (german for wooden hammer)) if you try to convert an entire .clu file alone in any of the programs i mentioned, you will get the meshes, sure, but they are all placed at the origin or elsewhere, but they seem to have the correct rotation (minus the x-flipping part), which made me assume the the .trk files can only edit positions, hence why i asked here because the .trk file was a bit too complicated for my simple newbie hex editor brain. again, i am sorry if i sounded rude, i really didn't mean for it to come off like that 😅 Edited May 31 by MaxBOOST added some more info. Link to comment Share on other sites More sharing options...
shak-otay Posted May 31 Share Posted May 31 (edited) 1 hour ago, MaxBOOST said: the .trk file also has some extra info relating to power ups and player start positions which i didn't really figure out to be honest. Where is that extra info (file offset)? Quote if you try to convert an entire .clu file alone in any of the programs i mentioned, you will get the meshes, sure, but they are all placed at the origin or elsewhere, So you think, their absolute or world positions are stored in the track file? Why? In my experience most (if not all) 3D formats, where the models come out clumped contain related matrices (rotation/position) where that position must be used. May be different here, but it must be proven. edit: are the meshes from a .clu file clumped at origin? If 'no', i.e. they're placed around the origin chances are high that a track file contains world positions for each .clu it loads. Edited May 31 by shak-otay Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 (edited) 5 minutes ago, shak-otay said: Where is that extra info (file offset)? at the end of the file i believe Quote So you think, their absolute or world positions are stored in the track file? Why? In my experience most (if not all) 3D formats, where the models come out clumped contain related matrices (rotation/position) where that position must be used. May be different here, but it must be proven. because some tracks are divided into multiple .clu files like the one i just sent, and there are references to said .clu files if you check the .trk files. And one of the images you sent in this thread (namely this one https://imgbox.com/ULOLSLWd) literally shows the exact layout and map of the entire track when all .clu files are put together properly. Edited May 31 by MaxBOOST Link to comment Share on other sites More sharing options...
shak-otay Posted May 31 Share Posted May 31 (edited) Just saw that the positions are known (see 2nd picture in the post you referred to, Wednesday 10:10). If you have some basic coding knowledge in any programming/scripting language the list is easy to obtain. If 'no' I'll care for it sooner or later. (Too busy atm.) Edited May 31 by shak-otay Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 7 minutes ago, shak-otay said: Just saw that the positions are known (see 2nd picture in the post you referred to, Wednesday 10:10). If you have some basic coding knowledge in any programming/scripting language the list is easy to obtain. If 'no' I'll care for it sooner or later. (Too busy atm.) i can do that sure Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 (edited) 1 hour ago, MaxBOOST said: i can do that sure but my issue isn't just obtaining the list, it's having, say something like noesis for example, take values from that list and assigning them to the proper meshes. thanks for helping though Edited May 31 by MaxBOOST Link to comment Share on other sites More sharing options...
shak-otay Posted May 31 Share Posted May 31 (edited) I'd do it step by step. With 2 or three meshes, as a test. You could load a track level (as .obj, see other thread) into blender. Then the three meshes. Then add the positions from the list. If you can't do it by script (google for "object location in blender") you can change the coordinates manually. As soon as you find those 3 objects being at the correct place you can proceed. Edited May 31 by shak-otay Link to comment Share on other sites More sharing options...
MaxBOOST Posted May 31 Author Share Posted May 31 15 minutes ago, shak-otay said: I'd do it step by step. With 2 or three meshes, as a test. You could load a track level (as .obj, see other thread) into blender. Then the three meshes. Then add the positions from the list. If you can't do it by script (google for "object location in blender") you can change the coordinates manually. As soon as you find those 3 objects being at the correct place you can proceed. good idea, i'll start now Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now