Results 1 to 6 of 6

Homeworld2.exe - All the strings!!

  1. #1
    Member Dim@'s Avatar
    Join Date
    Jul 2007
    Location
    Battlecruiser complete

    Homeworld2.exe - All the strings!!

    Hello, everyone!

    I got tired of searching through the Homeworld2.exe to see if something was hardcoded, or to see all the possible options for a variable.
    So I decided to extract all the strings, to make things easier for me, and post them here, to make things easier for you.

    I uses Sysinternals' string extractor: http://technet.microsoft.com/en-us/s.../bb897439.aspx

    By default, it basically takes anything that is 3 or more printable characters in a row, and saves them. I made it 4 or more. Nevertheless, it still retains a large amount of executable code, so I had to clean it up. That basically means that some of the strings may be wrong. In particular, any string 3 chars or less won't be there, nor will any string that looks like garbage. I have kept things that look like printf/sprintf etc. statements, so some garbage may be left. Also, many strings had a "?" or "<" or " A" at the start, which I'm guessing is garbage left by the string table formatting. I removed these, but there may be some similar cases where I shouldn't have done it.

    I have also tried to add divisions in places where they seem logical, or to highlight important parts, by adding blank lines. These divisions may be WRONG, so make sure you check around them to see if I've missed anything.

    Finally, the lower half of the file was mostly dll references, and more code that is probably added by the compiler, and has nothing actually to do with Homeworld 2, so I place it in a separate section.

    Something approaching the complete list of Homeworld 2 strings



    Okay, that is everything but the final bit at the bottom.
    You may want to copy it into a text file and save it. If you have some time, look through it, you may find something interesting. If you need reference on the possible variables of something, for example, you just search for one the known possible values, and see the text around it. In particular, I notice, for example, that the possibilities for "NewShipType.SMRepresentation" are:
    HardDot
    Mesh
    SoftDot
    Invisible

    The last two of which I didn't know about before.
    It's possible they won't work, of course, but they're worth a try!!

    Another use for this list is to find out is something's hardcoded or not. For example, we know now that the four types of sybsystem (Sensors, Generic, Production and Innate) are hardcoded. Just search for the string you are looking for, and if it's found in the exe, it's probably hardcoded.

    One issue I remember that this is useful for is finding the research and AddSubSystemAbility names for abilities (since those names are different from the AddAbility ones). There is a section, which I have posted before, which seems to have a list of these, but the list is obviously not COMPLETE, since, apparently, "DefenseField" actually works. Maybe it is somewhere else? There is an area that I have actually added a comment into that seems important, containing strings like "ResourceCommand", perhaps some of those strings can also be used??

    I hope this is useful for people, I will post the last section next.

    PS. "AddNebulaAbility()"???? WOW, that would be awesome if only we knew the arguments. Think of the possibilities! If only the AI didn't ignore nebulae...

    ----------

    And now, the lower section, much less related to Homeworld 2. Most of it is just references to dlls, lists of all the functions and stuff.
    Might be useful to someone, I dunno.

    The other part

    Destroying things is easy.
    Creating things is hard.
    Creating things in order to watch them explode is just plain fun.

    Explosion Damage Script, Scripting Tutorial

  2. #2
    This is pretty interesting. I'll have to take some time and have a look through the whole thing at some point. Thanks for extracting all the strings!

  3. #3
    Member BloodFleet's Avatar
    Join Date
    Nov 2007
    Location
    The Naggarok
    I only wish it wasn't illegal to mess with the .exe and stuff (beast infection beam, and a lot of other abilities, working in hw2 would be real useful lol)

    Heh I didn't know of SoftDot, never seen it in a .ship before (did know of Invisible though, it is used by missiles so they don't show in sensors)

    AddNebulaAbility hmm? What like gravity well dust clouds lol? Would be good to know how that string works...
    I r modder (dur)...my ModDB page is http://www.moddb.com/members/bloodfleet/mods

    btw my XFire is raaminator if you wanna play my mods (or any other) I will play if I am online.

  4. #4
    Member Dim@'s Avatar
    Join Date
    Jul 2007
    Location
    Battlecruiser complete
    I only wish it wasn't illegal to mess with the .exe and stuff
    You'd need to know how to do that, first ...
    If they released source code, I think I could get something done, but I wouldn't be able to reverse-engineer an exe into anything useful .. even if it was legal.

  5. #5
    Member BloodFleet's Avatar
    Join Date
    Nov 2007
    Location
    The Naggarok
    Well yeah, in other words I'm saying "RELIC, release HW2 source k?" (they did for hw1 so why not)

  6. #6
    Well why not just ask relic directly on their site or what not.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Tags for this Thread

Posting Permissions

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