Results 1 to 14 of 14

Thread: Identifiying that strange file format: coderz out there, we needz u.

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Ketzerfreund's Avatar Domesticus
    Join Date
    Nov 2006
    Location
    Berlin, Germany
    Posts
    2,233

    Default Identifiying that strange file format: coderz out there, we needz u.

    Hello out there,

    there are several threads in here now that ask for how this or that or yonder can be changed.
    Unfortunately, almost all relevant text files are not really pure text files; not even xml.
    The directories under ..\data\db\, for example, contain some of the most relevant files regarding gameplay mechanics. So far, the files look like this in text editors (in this case Textpad; Notepad++ looks even more messed up, because it uses a genuine symbol for nul-characters (00 in hex), which is far broader and renders this stuff completely illegible.

    Now, I've got a Linux install besides my WinXP on my disk and I handed one of those files under the ..\db directories to the file command. To those that don't know: It's a Unix command that identifies file types.
    So, file spits out this:
    Code:
    ~> file ./factions 
    ./factions: 370 XA sysV pure executable  not stripped - version 116 - 5.2 format
    So, anyone out there knows how to "strip" (and re-unstrip) those files?
    If these files are in fact some kind of engine-internal executable, might there be a way to decompile them?

    Or am I completely off-track here (which I deem quite possible, if not even probable)?


    Thanks, for any insight given,
    -Euer werter Ketzerfreund.
    "Oh, to be truly happy! To be an imbecile." - Wobbly Headed Bob

  2. #2

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Quote Originally Posted by Ketzerfreund
    If these files are in fact some kind of engine-internal executable, might there be a way to decompile them?
    Short answer:

    No.

    IF they are, as you propose, internal game engine executable files, (compiled source-code) then "stripping, editing then un-stripping." is basically reverse-engineering the game's core files.

    Which, as we all know, is not only a no-no of any modding community, but is also illegal, since all (or most) EULAs that you have to agree to when installing software (including games) state that editing such files is a legal no-no. (and can land you in court if you're found out.)

    IF however, they are files for containing unit stats and such, and are meant to be edited, then I'm sure CA will give us some tools soon, they said they would.
    Last edited by Captian Barbossa; March 04, 2009 at 04:30 PM.
    My named ships in Empire Total War: (that i can remember)

    Fifth Rate, HMS Poseidon.

    Fifth Rate, HMS Dauntless.

    Fifth Rate, HMS Enterprise NCC-1701

    Fifth Rate, HMS Simi.


    ------
    "Ya best start believing in ghost stories Miss Turner. You're IN one!"

  3. #3

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Except it won't be compiled C++ will it? What are they unlinked object files they decided to throw in that they'd link and build a new exe on the fly? Umm..no. They are almost certainly binary data files used for faster parsing of information, we do something similar at our studio in some projects.

    Additionally the EULA isn't worth a damn legally. Surprise, a company can't actually put whatever it wants in a contract and expect it to be legal. EULAs don't stand up in court. Stop trying to pointlessly scare someone that knows slightly less than you do.

  4. #4
    DeadlyBlowfish's Avatar Tiro
    Join Date
    Feb 2009
    Location
    South East, United Kingdom
    Posts
    218

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Quote Originally Posted by Captian Barbossa View Post
    Short answer:

    No.

    IF they are, as you propose, internal game engine executable files, (compiled source-code) then "stripping, editing then un-stripping." is basically reverse-engineering the game's core files.

    Which, as we all know, is not only a no-no of any modding community, but is also illegal, since all (or most) EULAs that you have to agree to when installing software (including games) state that editing such files is a legal no-no. (and can land you in court if you're found out.)

    IF however, they are files for containing unit stats and such, and are meant to be edited, then I'm sure CA will give us some tools soon, they said they would.
    Ahem... Fair Use.

    IMPORTANT:
    If you wish to use, modify, build on or do just about anything to or with any of my mods, feel free to do whatever you want. All I ask is to have my name in the credits somewhere :-)

  5. #5
    Ketzerfreund's Avatar Domesticus
    Join Date
    Nov 2006
    Location
    Berlin, Germany
    Posts
    2,233

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    [/sigh]

    Glad, however, that you spared me the long answer.
    "Oh, to be truly happy! To be an imbecile." - Wobbly Headed Bob

  6. #6

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    The first part of my post WAS the long answer.
    My named ships in Empire Total War: (that i can remember)

    Fifth Rate, HMS Poseidon.

    Fifth Rate, HMS Dauntless.

    Fifth Rate, HMS Enterprise NCC-1701

    Fifth Rate, HMS Simi.


    ------
    "Ya best start believing in ghost stories Miss Turner. You're IN one!"

  7. #7
    Ketzerfreund's Avatar Domesticus
    Join Date
    Nov 2006
    Location
    Berlin, Germany
    Posts
    2,233

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Don't worry, Kaelic, I haven't felt scared. But thanks for caring.

    My problem is, if any kind of decompilation is needed for those files, changing them and re-releasing them to the world might carry the same legal implications that changing and re-releasing an *.exe would. And for proper executables to be hacked and distributed to be illegal, no EULA is even needed. As far as I know, that's covered by the ordinary copyright mumbo-jumbo. Or is it?
    "Oh, to be truly happy! To be an imbecile." - Wobbly Headed Bob

  8. #8

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    My problem is, if any kind of decompilation is needed for those files, changing them and re-releasing them to the world might carry the same legal implications that changing and re-releasing an *.exe would. And for proper executables to be hacked and distributed to be illegal, no EULA is even needed. As far as I know, that's covered by the ordinary copyright mumbo-jumbo. Or is it?
    But they're not compiled. At best they're byte compiled, in that it's something like a binary lua which is not going to be covered by any kind of copyright. I'm surprised nobody has even checked to see if they were binary lua files.

  9. #9

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    I think DB table is not an executable, only it's a binary file so we can't read it with plain eyes.

    CA you have done a great job so far, keep up the good work!!

    Why there is no German-Axis FPS game?
    Thank You for the rep+ given!:wink:

  10. #10

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Like that other guy said, fair use laws apply here. As long as nobody makes a profit off any tools they make to modify those files it's legal. Now someone hurry up and make a tool that lets us edit them!!!


    NAO!!!!


    alpaca, us unwashed peasants of the forum need you to deliver us from the darkness of ETW un-modability!

  11. #11
    DeadlyBlowfish's Avatar Tiro
    Join Date
    Feb 2009
    Location
    South East, United Kingdom
    Posts
    218

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    here here!
    IMPORTANT:
    If you wish to use, modify, build on or do just about anything to or with any of my mods, feel free to do whatever you want. All I ask is to have my name in the credits somewhere :-)

  12. #12
    Ketzerfreund's Avatar Domesticus
    Join Date
    Nov 2006
    Location
    Berlin, Germany
    Posts
    2,233

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Kaelic, the only LUA decompiler available on The Net that I could find is LuaDec, it's targeted at a specific Lua version, and, well, doesn't work on those ..\db files.

    You seem to be ~knowing~ of such matters, so, what other promising approaches can you offer?
    "Oh, to be truly happy! To be an imbecile." - Wobbly Headed Bob

  13. #13
    Libertus
    Join Date
    Aug 2007
    Location
    Leeuwarden, The Netherlands
    Posts
    92

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    It looks like there are some special separator/identifier characters used.
    Hopefully the mailman plays nice and delivers my copy of E:TW today so I can take a better look at those DB files with a HEX editor.

    It could very well be its some kind of custom serialization format used to deflate/store objects to disk and inflate/read objects from disk.

    I don't know why this data is not in xml or basic lua format like the rest.
    But it could very wel be that storing it this way helps performancewise.

  14. #14

    Default Re: Identifiying that strange file format: coderz out there, we needz u.

    Why didn't you just look at the existing "db editing" threads? Because you were too lazy to search and bump the existing threads, all these people are confused. I will bump the good threads that explain the db files and why editing them is nothing but a short-term hack.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •