The2Banned2One Posted July 22, 2012 Share Posted July 22, 2012 Does anyone know which BOB/BOD file contains Pepper's model, animations, and textures? Thanks in advance. Also, just felt like I'd drop this right here. Link to comment Share on other sites More sharing options...
lol username Posted July 22, 2012 Share Posted July 22, 2012 The LI2 files are terribly unorganized... There's random stuff everywhere, like a Bull's shield texture in the Skate Park files. What I'm saying is that I have no idea where it might be. Also, I like the little explorer thing you made for the island. I did something like that in Unity (also did the cave, Adventurers Island, and Ogel Island, but the latter two weren't used for anything more then getting maps of them), but I didn't set the angle smoothing right so the shading didn't get blended between all the sub-meshes for various ground textures... Looked kinda awkward. Yours is nice and smoothed out though. Only two main issues with the island importing... There seem to be a couple mis-applied textures here and there (especially around the little inlets), and it's entirely mirrored. For some reason, all the LI2 models come out flipped like that... Link to comment Share on other sites More sharing options...
Fluffy Cupcake Posted July 22, 2012 Share Posted July 22, 2012 You can probably find them in almost every bod/bob file since Pepper is the main character and is everywhere. Link to comment Share on other sites More sharing options...
The2Banned2One Posted July 22, 2012 Author Share Posted July 22, 2012 Does anyone know what the files are prefixed with? Also, is there a batch file or something that automatically extracts all the BOBs/BODs? There seem to be a couple mis-applied textures here and there (especially around the little inlets), and it's entirely mirrored. If you could point out the mistakes and what they should be I would very much appreciate it. I did this in a very short amount of time and used only a top down picture of the island as a reference. EDIT: Updated the link at the top with a newer version. I fixed some of the textures. EDIT 2: Re-imported land.obj and this time it actually loaded all the textures. Updated the link in first post. Link to comment Share on other sites More sharing options...
pivke_oldaccount Posted July 22, 2012 Share Posted July 22, 2012 Also, is there a batch file or something that automatically extracts all the BOBs/BODs? Actually my multitool can do this kind of stuff, but it isn't released by now. Search for "LI2 Explorer" by "legomoe", he wrotes an extractor. Anyway, there seems to be a prefix (not for each model). The meshes for the hair/hat's for example have some prefixes like: ANDY_HRhair2.msh. (CHARACTERNAME_type/hair-id). Link to comment Share on other sites More sharing options...
The2Banned2One Posted July 22, 2012 Author Share Posted July 22, 2012 Actually my multitool can do this kind of stuff, but it isn't released by now. Search for "LI2 Explorer" by "legomoe", he wrotes an extractor. That's what I'm using currently, but I wish there was a quick way to extract all of them at once. Also it would be nice if there was a batch file for converting msh's to obj. EDIT: I made this for quick converting all the msh files in a directory to obj. Anyway, there seems to be a prefix (not for each model). The meshes for the hair/hat's for example have some prefixes like: ANDY_HRhair2.msh. (CHARACTERNAME_type/hair-id). I guessed that PEPP_ was the prefix for all the Pepper stuff, but I found really weird stuff that didn't seem to belong to Pepper's models. Link to comment Share on other sites More sharing options...
legomoe Posted July 25, 2012 Share Posted July 25, 2012 I'm not sure about animations (I think Pepper probably uses the same animations as all the other characters), but I think Pepper's mesh files are: PEPP_**.msh PEPP_**bag.msh PEPP_**hat.msh PEPP_**head.msh PEPP_**lhand.msh PEPP_**rhand.msh Where '**' is either HR, LR, MR, or SLR. I think these refer to different 'level of detail' (LOD) levels. Pepper's textures (at lease for his body) should be (in the z02LGI archive): text377.tga text378.tga text379.tga text380.tga text381.tga text382.tga text383.tga text384.tga I'm not sure where his face texture is. I know that his face appears on a lot of other character's face animation sheets in the unused spaces (but always the same image), but I've never been able to find Pepper's actual face texture. Link to comment Share on other sites More sharing options...
pivke_oldaccount Posted July 26, 2012 Share Posted July 26, 2012 @legomoe I think the information should be given in the .msh-files itself. "MATL" should represent the material data. I'm not the best at researching game files, but I didn't even get, what the data of "MATL" is pointing out. So, as that tag doesn't show any information like texture-name, somewhere have to be a values that give indices to the texture-files. But finally I didn't get anything out of it. Very weird tag to me. Link to comment Share on other sites More sharing options...
legomoe Posted July 26, 2012 Share Posted July 26, 2012 @legomoe I think the information should be given in the .msh-files itself. "MATL" should represent the material data. I'm not the best at researching game files, but I didn't even get, what the data of "MATL" is pointing out. So, as that tag doesn't show any information like texture-name, somewhere have to be a values that give indices to the texture-files. But finally I didn't get anything out of it. Very weird tag to me. I originally thought that the 'MATL' section would tell the model what texture to use, but since a lot of models don't even seem to HAVE a 'MATL' section, it must mean something else. (perhaps it's used for decals, sprites, or animated texture information, I don't know) I have a bad feeling that textures are assigned based on code in the EXE file. This would make sense, since it would have allowed the developers to skin bricks and the like with any colored texture they wanted, but it kind of sucks for people who want to try and mod the game. Link to comment Share on other sites More sharing options...
pivke_oldaccount Posted July 26, 2012 Share Posted July 26, 2012 I originally thought that the 'MATL' section would tell the model what texture to use, but since a lot of models don't even seem to HAVE a 'MATL' section, it must mean something else. (perhaps it's used for decals, sprites, or animated texture information, I don't know) I have a bad feeling that textures are assigned based on code in the EXE file. This would make sense, since it would have allowed the developers to skin bricks and the like with any colored texture they wanted, but it kind of sucks for people who want to try and mod the game. Yes, I've noticed that too. But it could also possible, that "MATL" gives some information about the texture (as already said, index, pointer or something) and those, who even haven't "MATL", could be hardcoded in the exe (for colouring). But it's also weird, that you can't find any information about map-coordinates or something in this direction. I also wondered about the "GTOM" section. Maybe it holds some transformation-matrix data? And btw, I can't imagine that LEGO-developers (LEGO!!!) are about to break every design-pattern-rules with hardcoding that stuff. That would be really ugly and uncomfortable... Link to comment Share on other sites More sharing options...
legomoe Posted July 28, 2012 Share Posted July 28, 2012 I also wondered about the "GTOM" section. Maybe it holds some transformation-matrix data? Ha! Your a genius!! That's exactly what "GTOM" must stand for: Geometric TransfOrmation Matrix, and "MATL" probably stands for something like Model ATtachment Location! You see, each "MATL" sub-section is 9 4-byte floats long, 3 for location, 3 for rotation, and 3 for scaling! The "GTOM" section has exactly the same number of subsections as the grouping section, and each sub-section of "GTOM" is a 4-byte integer that refers to a transformation matrix, which is applied to the corresponding model group! You can see this for yourself. Open any of the building models (they should all have "GTOM" and "MATL" sections) and try mixing and matching the values in the "GTOM" section, it should swap the different parts of the buildings around! I'm going to have to update my .msh converter... Link to comment Share on other sites More sharing options...
Fluffy Cupcake Posted July 28, 2012 Share Posted July 28, 2012 I'm going to have to update my .msh converter...Indeeeed! Link to comment Share on other sites More sharing options...
pivke_oldaccount Posted July 28, 2012 Share Posted July 28, 2012 @legomoe That's right. But notice, that not every mesh-file has GTOM and MATL sections. Not even every building. Link to comment Share on other sites More sharing options...
legomoe Posted July 29, 2012 Share Posted July 29, 2012 Notice that not every mesh-file has GTOM and MATL sections. Not even every building. Oh, that's it! I think the transformation matrix stuff has to do with parts of buildings that are dynamic (doors that open, the security camera on the Information Center, etc). That would explain why not all the buildings have GTOM and MATL sections. I've been thinking, if we can figure out how to interpret .msh animation data in the SVWL and AVW2 sections (which probably hold vertex weight info), we'll need to find another 3D format to convert to other than .obj. Don't get me wrong, .obj format is a good format, but it can't support things like vertex weighting or skeletal joints. Is there another format anybody can think of that can support these features that we could convert to? I was thinking maybe Autodesk's .fbx format? Link to comment Share on other sites More sharing options...
pivke_oldaccount Posted July 29, 2012 Share Posted July 29, 2012 Notice that not every mesh-file has GTOM and MATL sections. Not even every building. Oh, that's it! I think the transformation matrix stuff has to do with parts of buildings that are dynamic (doors that open, the security camera on the Information Center, etc). That would explain why not all the buildings have GTOM and MATL sections. I've been thinking, if we can figure out how to interpret .msh animation data in the SVWL and AVW2 sections (which probably hold vertex weight info), we'll need to find another 3D format to convert to other than .obj. Don't get me wrong, .obj format is a good format, but it can't support things like vertex weighting or skeletal joints. Is there another format anybody can think of that can support these features that we could convert to? I was thinking maybe Autodesk's .fbx format? Sound's logical. But it seems that the GTOM, and it's subsections, don't give any information about what mesh-group has to be transformed ("animated"). So i think: -first GRPL-entry == first GTOM-entry -second GRPL-entry = second GTOM-entry -... So you have to find the matching entry "by hand". Yes, I already got the thing with the file-format. Luckily I've didn't start with the OBJ-ex- and importer for the MultiTool yet. I took a quick look at the .fbx-format, it looks good for our pupose. The only problem is, that this format isn't supported by the most popular editors. Some years ago, I wrote a 3ds-viewer (just for fun). As I can remember, this format can hold weight data and keyframe- and skeleton-animation. The only problem; I'm not really familiar to animation-formats. I'm going to check out how they are working, so far I'm not any help for you :-D Keep up the great work legomoe! Link to comment Share on other sites More sharing options...
legomoe Posted July 31, 2012 Share Posted July 31, 2012 Yes, I already got the thing with the file-format. Luckily I've didn't start with the OBJ-ex- and importer for the MultiTool yet. I took a quick look at the .fbx-format, it looks good for our pupose. The only problem is, that this format isn't supported by the most popular editors. Some years ago, I wrote a 3ds-viewer (just for fun). As I can remember, this format can hold weight data and keyframe- and skeleton-animation. The only problem; I'm not really familiar to animation-formats. I'm going to check out how they are working, so far I'm not any help for you :-D Hmm, I'd forgotten about 3DS format, I'll have to look into that. In the mean time, I've worked up a new version of my .msh converter, and I've made a new program for converting .obj files back into .msh format. You can find the topic here: http://www.rockraidersunited.org/topic/3878-li2-msh-tools-v10/ These new tools should work just fine for anything that's not animated, and once we figure out how to read SVWL and AVW2 sections, I cant write new tools to convert to and from another format. Link to comment Share on other sites More sharing options...
Recommended Posts