Jump to content

  •  

  • iBotModz CBox


    Photo

    Halo CE Modding Research Thread


    • Please log in to reply
    26 replies to this topic

    #1 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:07 AM

    On first glance, the initial disc structure is very different. I attribute this to the kinect features, and the ability to revert back to the "orginal" mode at any time.

    Posted Image

    Gonna look into those fancy s3dpaks. I'm too scared to look at the .map right now.


    Notes:
    • Requires updated (13604 kernel) ? link
    • CFG Files explained link


    #2 fattwam

    fattwam

      General Grade 2

    • Sub-Admins

    • 3,979 posts
    • Joined: 18-August 07
    • Gender:Male

    Posted 11 November 2011 - 11:11 AM

    Un-rar'ing mine now =]
    Though i have no idea how to use my JTAG, lol this is gonna be a struggle.
    Last time i used it it said the HDD was full even though there is nothing on it.

    #3 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:12 AM

    Wow.

    There is the maps folder for those Halo CE maps remade for Reach, but then maps_original could possibly be another .map structure. Promising.

    Un-rar'ing mine now =]
    Though i have no idea how to use my JTAG, lol this is gonna be a struggle.
    Last time i used it it said the HDD was full even though there is nothing on it.


    All those HDDs programs out there corrupt drives like crazy. I bought Eaton's lol. Never bought a modding tool, but I don't have to worry about unallocated space and stupid other programs effing up my drive.

    #4 fattwam

    fattwam

      General Grade 2

    • Sub-Admins

    • 3,979 posts
    • Joined: 18-August 07
    • Gender:Male

    Posted 11 November 2011 - 11:16 AM

    Any idea how to fix ? Or at least how to tell WTF my JTAG is ? lol
    *Shame... Sub admin of iBotModz is a total noob :( I miss the old days :cry:

    #5 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:21 AM

    You gotta reformat the drive and start over. The allocation of used/free space is effed up.

    #6 fattwam

    fattwam

      General Grade 2

    • Sub-Admins

    • 3,979 posts
    • Joined: 18-August 07
    • Gender:Male

    Posted 11 November 2011 - 11:26 AM

    Dam... I PM'ed ya :)

    #7 deadcanadian

    deadcanadian

      Private Grade 2

    • Members+

    • 90 posts
    • Joined: 27-April 08

    Posted 11 November 2011 - 12:42 PM

    i wish my download was faster to get this game. i plan to check a bunch of the files for the .maps and see whats different in them. as well as the original maps. cause if they use part of the old engine some of the format should be the same such as how they are saved. so hopefully modding should be similar to before.

    and xex with map encryptions removed i can easily make once i get my hands on one. i just need to decompile it and find out where its function is and break a branch to make it skip it like ive done in previous games.

    EDIT: thx fattwam, decompiling it now. ill update once i find some things for the time being
    EDIT2: that xex makes no sense, no individual variables at the top, and no Xecrypt. so apperently theres no checks if thats true. but no variables leads me to think the xex is wrong.

    Edited by deadcanadian, 11 November 2011 - 01:14 PM.


    #8 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 02:02 PM

    Very strange.

    My IDA is crashing trying to open it. So wow. Gotta fix that.


    EDIT: Its open now, but I don't know what the hell I'm doing. So forgot it.

    #9 AMD

    AMD

      Recruit

    • Members

    • 2 posts
    • Joined: 16-August 10

    Posted 11 November 2011 - 02:29 PM

    Can somebody send me one of those s3dpak files? I'd like to take a look but the ISO is still downloading...

    #10 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 02:31 PM

    Can somebody send me one of those s3dpak files? I'd like to take a look but the ISO is still downloading...


    The file deletes in 1 hour :p

    http://minecraft.ibotmodz.net/a50.rar

    #11 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 10:58 PM

    GameOpt = {
       DefaultDifficulty = 1
       ConstReticle = No
       HideHUD = No
       Blood = Yes
       Subtitles = No
       Time_hints = 1
       Def_hints = Yes
       ShowHints = Yes
       WeaponBar = Yes
       AutoSwitch = Yes
       CameraShake = Yes
       ScreenFlashes = Yes
       TimeShortcuts = No
       ToggleCrouch = Yes
       Skulls = {
    	  BonusSkullUnlocked = No
    	  skull01 = FALSE
    	  skull02 = FALSE
    	  skull03 = FALSE
    	  skull04 = FALSE
    	  skull05 = FALSE
    	  skull06 = FALSE
    	  skull07 = FALSE
    	  skull08 = FALSE
    	  skull09 = FALSE
    	  skull10 = FALSE	 
    	  skull11 = FALSE
    	  skull12 = FALSE
    	  skull13 = FALSE
    	  skull14 = FALSE
    	  skull15 = FALSE
       }
    }
    

    This code was in user.cfg. Then boom, I changed all the skull things to TRUE. Seems too easy.

    #12 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:05 PM

    Wait is it possible we have a non-retail rip?

    Multiplayer = {
       Mode = Single
       ServerIP = 192.168.1.40
       ServerLocation = multiplayer1
       Difficulty = 1
       TrafficLogging = 0
       EventLogging = 0
       ServerModeIdx = 0
       GameTypeStandard = 1
       StandardModifier = 1
       ServerTypeNum = 0
       ServerMapId = 2
    }
    

    All these cfgs files, I've never ever seen in any other game and its just weird.

    #13 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:39 PM

    Dashboard Kernels and the Game

    Okay,

    It appears the game requires above or at the 13604 kernel. It has the kernel update included (like all games), but this game won't run on anything older. It will simply fail to load. I tested this by flashing old kernels on my JTAG and they would fail to load. However, on this kernel (13604) it runs perfectly. It seems they must be using something new in that XEX? The XEX doesn't really match the structure of other games XEXs. Its almost like its a new revision of them. Then again, I'm an idiot with this stuff. Just commenting what I see.

    #14 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 11 November 2011 - 11:54 PM

    CFG Files

    Okay, we have user.cfg and game.cfg in the root of our game. Most of these configs are just settings and controls that can be changed in game, so its actually more difficult to change them via this files. As this makes them the default.

    For example, you set all the skull values in user.cfg to TRUE, and before you start a game. It will say "15 Skulls Enabled" as that is now the default. So we at least know our changes are taking effect.

    There are video sections and DEBUG sections located in the game.cfg file, that I'm trying to get mapped out and seeing all the effects they have.

    Spoiler


    These are interesting due to the fact they say "Unlock Skulls, Bonus Skulls, Terminals, Kinect & Library". All in all, these are a fun little quick way to experiment instead of diving right into the .map files. There seems to be around 200 lines total between these 2 files, so there are plenty variables to change. I'll start going through the important looking ones and see if we can get any cool effects or changes.

    EDIT: Confirming that unlocking the Terminals does unlock them. I don't know what unlocking the library is. So no clue what it did.

    Edited by iBotPeaches, 12 November 2011 - 12:15 AM.
    added unlocking terminals


    #15 deadcanadian

    deadcanadian

      Private Grade 2

    • Members+

    • 90 posts
    • Joined: 27-April 08

    Posted 12 November 2011 - 02:02 PM

    for those two cfg files. the game.cfg should be the main one youll mod. however if you didnt know you can add code into them that can correspond with the code in the xex. so if you knew where things were you could add other things. as well for the debug functions i was wondering if you would be able to call some of the old halo 1 ones such as teleporttocamera and so forth.

    #16 Rogue Modder

    Rogue Modder

      Class of 2008

    • VIP

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

    Posted 12 November 2011 - 05:01 PM

    To add on to DeadCanadian, it seems CEA was built on-top of Gearbox's 2003 PC ported codebase, and not Bungie's 2001 Xbox Codebase. So that probably would in-fact work.

    Edited by Xerax, 12 November 2011 - 05:02 PM.


    #17 Twis7eD

    Twis7eD

      Private Grade 2

    • Members+

    • 89 posts
    • Joined: 19-December 09

    Posted 13 November 2011 - 06:09 PM

    Dashboard Kernels and the Game

    Okay,

    It appears the game requires above or at the 13604 kernel. It has the kernel update included (like all games), but this game won't run on anything older. It will simply fail to load. I tested this by flashing old kernels on my JTAG and they would fail to load. However, on this kernel (13604) it runs perfectly. It seems they must be using something new in that XEX? The XEX doesn't really match the structure of other games XEXs. Its almost like its a new revision of them. Then again, I'm an idiot with this stuff. Just commenting what I see.

    That would make sense. I removed the library limit on the xex and DLL's like I normally do to allow the games to function on any kernel, but that didn't work. The multiplayer part of the disc (ReachTU1.xex) will run fine, but not the campaign. Hopefully other games don't start to do this as well or else everyone will have to keep up to date on the most recent kernel to be able to play all games.

    #18 deadcanadian

    deadcanadian

      Private Grade 2

    • Members+

    • 90 posts
    • Joined: 27-April 08

    Posted 14 November 2011 - 11:21 AM

    EDIT: Confirming that unlocking the Terminals does unlock them. I don't know what unlocking the library is. So no clue what it did.

    i believe the library involves the new analyze feather they put in with kinect. such as unlocking the library will likely make everything already scanned.

    #19 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 14 November 2011 - 01:34 PM

    I tried messing around with the s3dpak files, then no matter what I did I couldn't read the stream all the way though without it erroring out. xmt along with AMD made a nice little decompression tool.

    source: http://www.halomods....ndpost__p__4716
    Attached File  hcea_decompress.zip   36.4KB   478 downloads

    #20 iBotPeaches

    iBotPeaches

      General Grade 6

    • Owner

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

    Posted 15 November 2011 - 11:50 AM

    As I'm sitting in class I was browsing through IDA.

    ppc.PNG

    I changed all those offsets to 01 (which I think sets the bool/byte to true/1). However nothing changed in game. Damn, no aim assisting. This XEX stuff is fun, but quite overwhelming. A couple of weeks of this and reading up on assembly and I think I'll be able to pick some of this apart.


    EDIT:

    Question for those who know this. Say I find something in IDA at offset 825D5DC8. I was told to ignore the first 2 chars as those are part of the memory IDA something. So then I have 5D5DC8. I goto that offset in hXd (hex editor) and my data isn't there. I do a search for the string of hex values (about 4 will do) and sure enough I find the string of chars a few lines down. So the offset is off. I subtract the difference after locating the value and it was 98 (hex). I tried to add 98 to the next offset I found, and it wasn't right. It was 540 (hex) that time.

    Sooo whats with the difference of offsets between IDA and HxD?

    Edited by iBotPeaches, 15 November 2011 - 11:54 AM.
    added question