Krisztian1990 Posted November 2, 2023 Share Posted November 2, 2023 Hello, guys! I'm sorry to writing this, but I really need your help. I'm working on a tool for a strategy game, which has two different archives: the *.box (I have the structure, so i can extract and build *.box archives), and the *.opf archive, which is a data container that contains the assets of the game... All I want to know is: What is the file structure for the .opf archive? I'm not good at using any hex editors, so I need your help in this. This file was created by the devs with an external tool named: UnitDeveloper Tool. Attached, I sent you the .opf file. *Watto tried to write the file structure, but his structure is not "accurate". Thank you very much for all of your comments / replies in advance. Krisztian PackedProject.zip Link to comment Share on other sites More sharing options...
ikskoks Posted November 2, 2023 Share Posted November 2, 2023 13 minutes ago, Krisztian1990 said: and the *.opf archive, which is a data container that contains the assets of the game... Is it from "The Outforce" game on PC? It seems like a continuation of the topic from xentax https://forum.xentax.com/viewtopic.php?t=24423 13 minutes ago, Krisztian1990 said: This file was created by the devs with an external tool named: UnitDeveloper Tool. How do you know that? I couldn't find too much info on this tool online. Do you have this tool? Link to comment Share on other sites More sharing options...
Krisztian1990 Posted November 2, 2023 Author Share Posted November 2, 2023 Hello! I checked the game manual. Btw please check my program I uploaded for the game. I'm working on tools for another games as well. But I really need to know more about the .opf file. 😞 Link to comment Share on other sites More sharing options...
Krisztian1990 Posted November 2, 2023 Author Share Posted November 2, 2023 10 minutes ago, ikskoks said: Is it from "The Outforce" game on PC? It seems like a continuation of the topic from xentax https://forum.xentax.com/viewtopic.php?t=24423 How do you know that? I couldn't find too much info on this tool online. Do you have this tool? Yes, it is for The Outforce. We managed to save the game, now it is re-released on Zoom-platform . com site. I need the .opf file structure. 😞 I also created some good maps (skrimish / multiplayer), I'm also working on an external TCP/IP client <-> host server tool. The only obstacle for me is the .opf file. Link to comment Share on other sites More sharing options...
Engineer wssdude Posted November 5, 2023 Engineer Share Posted November 5, 2023 00..1B is probably just some ID bit Afterwards, 2 bytes seem to relate to string size followed by string of that length (no null terminator it seems) up to offset 0x4E where I suppose size is encoded in 32-bit value for some reason... As it seems to correspond to the next string right after, which now seems to have null terminator... Maybe it has not, but unsure how to translate that inconsistency atm... Kinda messy lol... Cause otherwise, it is not really string size in that case or it starts with null and size is 24-bits which sounds like it shouldn't be the case... Unsure what 0xD6-0xE4 is now, but there seems to be same pattern of 2 bytes + string without null, 3 entries in succession till offset 0x150. There seems to be some header, I suppose it has size 0x7C, followed by some data... Then the pattern seems to repeat, with another 3 strings written like that with 0x7C length header followed by some data. I can at least see similar weird string pattern applied throughout the file, this is another such block (offset 0x41C7) and length of that weird header seems to be right after with some more data with JFIF magic... Provided that is the data start at least... Link to comment Share on other sites More sharing options...
Engineer wssdude Posted November 5, 2023 Engineer Share Posted November 5, 2023 0x72 offset in the mentioned header before each entry seems to contain size of data after it (when I go 4 bytes after that, to offset 0x1C6 for example from beginning of the file) and try to jump to other offset from there with same value (0x4002 for the first file), I seem to end up right at the next repeat of the pattern I mentioned before (in this case, offset 0x41C8 from the beginning of the file) Link to comment Share on other sites More sharing options...
Engineer wssdude Posted November 5, 2023 Engineer Share Posted November 5, 2023 0xE0 from beginning of the file seems to contain number of entries (found by @Sor3nt) Just making a copy of what they posted, we sort of both had a look at the same time in different places lol... Quote 0x000000E0 is your entry count loop string internalName; string localName; string targetfolder; char fileInfos[117] <= width, height.... also somewhere the data length char data[fileInfos.dataLen] guess after the 339 entries, there is more, new struct Link to comment Share on other sites More sharing options...
Krisztian1990 Posted November 5, 2023 Author Share Posted November 5, 2023 Thank you 😞 Well, I need something like this: http://www.watto.org/specs.html?specs=Archive_OPF_OUTFORCE . But this structure is not proper. There are some problems with it. For example, There's 64 unknown instead of 74 - Unknown... There are another 4 unknown bytes in the images section. Link to comment Share on other sites More sharing options...
Krisztian1990 Posted November 5, 2023 Author Share Posted November 5, 2023 so watto's file structure for the *.opf archive is not proper Link to comment Share on other sites More sharing options...
Engineer wssdude Posted November 5, 2023 Engineer Share Posted November 5, 2023 Bit sad you share that now tbh, cause it does seem to be correct... You probably read the info there wrongly... Matched up pretty much everything me and @Sor3nt found, and more... 1 Link to comment Share on other sites More sharing options...
Engineer wssdude Posted November 5, 2023 Engineer Share Posted November 5, 2023 Guess I should verify next time that no info is somewhere before blindly looking at a file lol... Lesson learnt... Thought you tried to look it up already... 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