Jump to content

  •  

  • iBotModz CBox


    Photo

    User Content Library


    • Please log in to reply
    6 replies to this topic

    #1 DEEhunter

    DEEhunter

      Corporal Grade 2

    • Members+

    • 228 posts
    • Joined: 19-June 08

    Posted 04 September 2010 - 10:53 PM

    This C# library will allow you to load any halo reach user content file into a neat object to access its data. It will only read, and not write. From the looks of things, Bungie has made a lot of consideration into user exploitation. The Tag object stores an array of nested tags that can be accessed like so:
    Tag[0]
    To return the tag in the first index.
    Or the much nicer:
    Tag["chdr"]
    Which would return the tag named "chdr".

    A tag object contains 3 feilds.
    Name, a 4 character ASCII string which contains the tag name
    Size, an Int32 which stores the size of the entire tag(Including the name and size bytes)
    Data, a byte array containing the tag's information.

    The Data field can be accessed via byte array or BinaryReader.

    Tag files can be initialized either directly from a STFS file(using DJ SkunkieButt's X360 Library), or from an already extracted file, and even directly from a stream.
    Here is an example of me loading a Tag from a STFS(con) file.
    Derp = new Tag();
                    Derp.LoadFromSTFS(openFileDialog1.FileName);

    Included in the download is the Library its self, along with the source of an application that shows how to use it properly.


    I only ask that you give credit to me and DJ SkunkieButt for its use, and maybe add some of your tag research to the modhalo wiki.
    Have fun.

    Posted Image

    Download

    #2 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

    • 6,570 posts
    • Joined: 29-July 07
    • Gender:Male
    • Location:Kansas

    Posted 05 September 2010 - 06:42 AM

    Very nice.

    Thank you.

    #3 Rogue Modder

    Rogue Modder

      Class of 2008

    • VIP

    • 1,328 posts
    • Joined: 02-January 09
    • Gender:Male
    • Location:London, UK

    Posted 05 September 2010 - 02:04 PM

    Nice. :p BTW my blf info was just for blf Map Image files in the game, not screenshots. ;) (grunt told me you said mine was, primitive to say the least.) Also, is it just me reading the info incorrectly in Hex Workshop or do screenshots now seem to store some basic Map and Player information?

    #4 gruntmods

    gruntmods

      Commander Grade 2

    • Donors+

    • 1,889 posts
    • Joined: 26-November 08
    • Gender:Male
    • Location:Unknown World

    Posted 05 September 2010 - 05:14 PM

    Nice. :p BTW my blf info was just for blf Map Image files in the game, not screenshots. ;) (grunt told me you said mine was, primitive to say the least.) Also, is it just me reading the info incorrectly in Hex Workshop or do screenshots now seem to store some basic Map and Player information?

    not sure if he frequents this site, might want to check modhalo

    #5 DEEhunter

    DEEhunter

      Corporal Grade 2

    • Members+

    • 228 posts
    • Joined: 19-June 08

    Posted 06 September 2010 - 03:08 AM

    Also, is it just me reading the info incorrectly in Hex Workshop or do screenshots now seem to store some basic Map and Player information?

    It is called Exif data, it is used as one of the precautions that bungie took to screenshot exploits. And to give bungie some sense of exclusiveness once halo reach screenshots start flooding the internet.

    Read up

    Also, the _blf format is used for nearly every external tag system. All tags between the _blf header and _eof footer is included in that file's tag system. In which the BLF header stores the name of the file, sometimes in several different languages. Other than that, the format for all blf files are essentially the same.
    Read up

    Edited by DEEhunter, 06 September 2010 - 03:21 AM.


    #6 Rogue Modder

    Rogue Modder

      Class of 2008

    • VIP

    • 1,328 posts
    • Joined: 02-January 09
    • Gender:Male
    • Location:London, UK

    Posted 12 September 2010 - 04:33 PM

    That extra player data is used to detect players in a screenshot. So on Bnet, hover over a player and it'll tell you who it is.

    http://www.bungie.ne...ls.aspx?fid=661 Example, its 100% server generated. No user tagging is involved.

    Edited by Xerax, 12 September 2010 - 04:34 PM.


    #7 DEEhunter

    DEEhunter

      Corporal Grade 2

    • Members+

    • 228 posts
    • Joined: 19-June 08

    Posted 17 September 2010 - 11:33 PM

    Um, ok?
    The user content files store no information to detect players WITHIN a given screenshot. The only note-able player information is stores is the user that created the screenshot, the user who last modified it, and the EXIF data embedded in the jpg.
    I may be wrong though, it has been a while since I looked into any of the tags.

    Edited by DEEhunter, 17 September 2010 - 11:35 PM.