Members mrmaller1905 Posted November 8, 2023 Members Posted November 8, 2023 (edited) I tried Hex2Obj and Noesis plugin but I got clumped characters. Can someone fix this? projectigi_characters.rar Edited January 23, 2025 by mrmaller1905
Engineers shak-otay Posted November 8, 2023 Engineers Posted November 8, 2023 (edited) How far did we get on Xentax with these .mef? I feel we were done.:D You could use the output of Durik's script for 015_01_1.mef to find out where some "positioning" matrices are to be found, maybe in section D3DR or TAMC (what do these signatures mean? Direct3D rotation, etc?) btw, "chank" might mean "chunk" (but not sure) Detected file type: IGI (chank:HSEM, offset: 20, size: 156, next: 172) (chank:ATTA, offset: 192, size: 0, next: 16) (chank:XTVM, offset: 208, size: 0, next: 16) (chank:TROP, offset: 224, size: 0, next: 16) (chank:XVTP, offset: 240, size: 0, next: 16) (chank:CFTP, offset: 256, size: 0, next: 16) (chank:D3DR, offset: 272, size: 56, next: 72) (chank:DNER, offset: 344, size: 5768, next: 5784) (chank:XTRV, offset: 6128, size: 47160, next: 47176) (chank:HSMC, offset: 53304, size: 64, next: 80) (chank:XTVC, offset: 53384, size: 7504, next: 7520) (chank:ECFC, offset: 60904, size: 7392, next: 7408) (chank:TAMC, offset: 68312, size: 96, next: 112) (chank:HPSC, offset: 68424, size: 44328, next: 44344) (chank:XTVC, offset: 112768, size: 0, next: 16) (chank:ECFC, offset: 112784, size: 0, next: 16) (chank:TAMC, offset: 112800, size: 0, next: 16) (chank:HPSC, offset: 112816, size: 0, next: 0)[/code] Edited November 8, 2023 by shak-otay
Members mrmaller1905 Posted November 22, 2023 Author Members Posted November 22, 2023 (edited) What is .iff and has anyone tried to reverse engineer this and convert to .fbx? projectigi_iffs.rar Edited February 19, 2024 by mrmaller1905
Members mrmaller1905 Posted October 9, 2024 Author Members Posted October 9, 2024 (edited) Can someone help me fix this clumped character by making a new Blender or Noesis plugin for IGI 1 or other tools? Edited October 9, 2024 by mrmaller1905
AexaDev Posted December 14, 2025 Posted December 14, 2025 On 11/8/2023 at 10:52 AM, mrmaller1905 said: I tried Hex2Obj and Noesis plugin but I got clumped characters. Can someone fix this? projectigi_characters.rar 376.32 kB · 12 downloads That honestly looks like a skinned character whose IBM has not been properly applied
Members Solution mrmaller1905 Posted February 21 Author Members Solution Posted February 21 (edited) So, here is the download link for the MEF converter scripts in Python https://www.mediafire.com/file/dgya95p5eqtcmbq/IGI_MEF_CONV.7z/file IGI MEF CONV.zip Edited February 21 by mrmaller1905
Engineers shak-otay Posted February 21 Engineers Posted February 21 Did you try out one of the commands? I get ModuleNotFoundError: No module named 'lxml', so using pipinstall might be required.
Members mrmaller1905 Posted March 3 Author Members Posted March 3 Here is the binary template for IGI 1 .mef igi1_mef_binarytemplate.rar
Engineers shak-otay Posted March 3 Engineers Posted March 3 Sadly pfp can't process this bt line switch(ReadString(FTell(), 4)) (not implemented error)
Engineers h3x3r Posted March 4 Engineers Posted March 4 (edited) I think you can replace it with if/else function Looks like these values are responsible for mesh position. Edited March 4 by h3x3r
Engineers shak-otay Posted March 4 Engineers Posted March 4 Problem is not the "switch", it's the ReadString() (should have been more precise, sorry).
Engineers h3x3r Posted March 4 Engineers Posted March 4 (edited) Try this one. But i think that local variable will be problem here. local string Sign; struct { ILFF_HEADER header; CH formatid[4]; // OCEM while(FTell() < FileSize()) { Sign=ReadString(FTell(),4); if (Sign == "HSEM") { HSEM hsem; } else if (Sign == "ATTA") { ATTA atta; } else if (Sign == "XTVM") { XTVM xtvm; } else if (Sign == "TROP") { TROP trop; } else if (Sign == "XVTP") { XVTP xvtp; } else if (Sign == "CFTP") { CFTP cftp; } else if (Sign == "D3DR") { D3DR d3dr; } else if (Sign == "DNER") { DNER dner; } else if (Sign == "XTRV") { XTRV xtrv; } else if (Sign == "PMTL") { PMTL pmtl; } else if (Sign == "HSMC") { HSMC hsmc; } else if (Sign == "XTVC") { XTVC xtvc; } else if (Sign == "ECFC") { ECFC ecfc; } else if (Sign == "TAMC") { TAMC tamc; } else if (Sign == "HPSC") { HPSC hpsc; } else if (Sign == "TXAN") { TXAN txan; } else { Assert(false, "Parsing error: unhandled block type"); } } } igi1_mef; or change function on ReadUInt(FTell()) but you must also change exception value to uint. > if (Sign == 1296388936) // HSEM sign Edited March 4 by h3x3r 1
Engineers shak-otay Posted March 4 Engineers Posted March 4 Thanks. That problem solved. local UINT32 Sign; local UINT32 x; struct { ILFF_HEADER header; CH formatid[4]; // OCEM while(FTell() < FileSize()) { x = FTell(); FSeek(x); Sign=ReadUInt(); if (Sign == 1296388936) //HSEM { HSEM hsem; } else { Assert(false, "Parsing error: unhandled block type"); } } But the next error to appear: "could not resolve field header". (I had to insert the include .bt files into the main bt). error line: if(header.chunksize > 0) I think, I'll need to wait for an update of pfp master.
Members mrmaller1905 Posted April 12 Author Members Posted April 12 (edited) What is .cmd .ctr and .hmp and does anyone have an idea to start a new terrain editor that creates custom terrains? projectigi_terrainfileformats.rar Project-IGI-Terrain-main_bin.rar Edited April 12 by mrmaller1905 1
Engineers shak-otay Posted April 13 Engineers Posted April 13 (edited) On 4/12/2026 at 4:49 PM, mrmaller1905 said: and does anyone have an idea to start a new terrain editor that creates custom terrains? Well, I know, you're constantly switching between hundreds of requests so I don't know how deep your interest is in this one. I compiled the project and seems it's a terrain viewer: If anyone is competent to develop an IGI terrain editor then the author of this project should be. Why not ask him? There's also another project that could come in handy (but it's not a terrain editor). edit: I read a review that said/confirmed the environment being "bleak and boring" so dunno whether it's worth bothering. (If you don't suffer from nostalgia it would make more sense, imho, to care for games with modding tools, such as "Beyond Enemy Lines".) Edited April 16 by shak-otay
Members mrmaller1905 Posted May 24 Author Members Posted May 24 Recently Jones-HM has released a 3D terrain editor which allows authors to create custom missions and terrain models. https://github.com/jones-hm/project-igi-toolkit 1
Engineers shak-otay Posted May 24 Engineers Posted May 24 I didn't expect Jones to be still working on this. The feature "Level ToolKit" of the igi-toolKit would be the first thing to use (if I had the game).
Members mrmaller1905 Posted May 24 Author Members Posted May 24 (edited) 8 hours ago, shak-otay said: I didn't expect Jones to be still working on this. The feature "Level ToolKit" of the igi-toolKit would be the first thing to use (if I had the game). Ok analyze the source code for this repo and see what the IGI 1 3D level editor can do. https://github.com/jones-hm/project-igi-editor Edited May 24 by mrmaller1905
DKDave Posted May 24 Posted May 24 1 hour ago, mrmaller1905 said: Ok analyze the source code for this repo and see what the IGI 1 3D level editor can do. https://github.com/jones-hm/project-igi-editor Alternatively, you could analyse it yourself instead of just demanding people do it for you. Just download the release and try it.
Members mrmaller1905 Posted May 31 Author Members Posted May 31 Excuse me I'm looking for a Blender plugin that exports custom IGI 1 MEF files with support for bone models.
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