Sonic and Sega Retro Message Board: Sonic 06 (Xbox 360) - Reverse Engineering - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Page 1 of 1
    Locked
    Locked Forum

Sonic 06 (Xbox 360) - Reverse Engineering My finds so far. (hopefully stuff that hasn't been documented)

#1 User is offline codenamegamma 

Posted 28 June 2018 - 08:31 PM

  • Posts: 71
  • Joined: 29-August 17
Hi,
For the past few days I have been hacking around with Sonic 06 using my RGH console it seems like there's not too much information out there on the EXE or the how the game actually works side of things so here is what I got and what I learned so far.

So first thing i did was dump the xex to my PC and using an old guide, i managed to get it converted and open in IDA for further research. the first thing i did was dump a list of floats and start going down the list poking them, Here is the full list of floats. https://docs.google....dit?usp=sharing the first thing did was start working down the list and managed to do 150 so far out of 1200+ here's the interesting stuff i found.

Speed (In Game) DEF: 0.01666667
0x82000B88

Changes Game Rendering Mode? DEF: 0
0x82000DD8

Changed Rendering Scale? DEF: 0.5 - Don't go above that.
0x82000DDC

Image Strech X DEF: 2
0x820013A0

Graphics Changes - Falling Peds DEF: 0.0099999998
0x82001418

Messes up graphics - Image Scaling? DEF: -1
0x82001530

Fog? DEF: 2
0x82001594

Mini-Map Placement- DEF: 0.25
0x82001930

Skybox Distace? DEF: 20000
0x82001B60

Sound Effects Buffer Volume. DEF: 0.001
0x82001F88

Peds Shake? DEF: 0.01745329
0x82001FE0

Mini-Map Icon Size DEF: 200
0x82002038

Camera Distance DEF: -0.7853982
0x82002230

Camera - Causes it to spin out if set to 1.
0x820022B8

Funky Spinning Models if modified
0x82002370


TOD / Lighting?
0x8200246C

Load Sound FX sometimes?
0x82004514

Spin for Picked up Objects.
0x82007D94

Infinite Time? - Breaks Stage Timer.
0x82008230

I've been using Ascensions Advanced poker to change them, The first one that I tried effects the timescale the game is running at, this is also the case for the E3 (XBL) Demo of the game, where I also did the same process and dumped those floats as well. where there are 1093 of them, a few less than the full release.

There are references to debug mode and I've been trying to get it enabled but my limited knowledge of PPC Assembly is preventing me from getting it enabled, but nothing I've seen in the code of the game so far makes me think that it's not possible to one day enable it. below is a link to a screenshot of ida with the code itself, so if you know please let me know.
https://i.imgur.com/ZSrSjN6.png


PS Sorry about the new thread on something so old, as far as i can tell information on this is sparse and extremely old so rather than bumping a 10 year old thread I wanted to opt for something new as with the rise of Xenia modding the core code of the game will probably be increasingly more important as time goes on and more people start running this game on emulators.

#2 User is offline biggestsonicfan 

Posted 28 June 2018 - 11:12 PM

  • Model2wannaB
  • Posts: 746
  • Joined: 09-May 07
  • Gender:Male
  • Project:Formerly Sonic the Fighters
Well, the game used unencrypted LUA scripts, wouldn't the values just.... be in those, or are these constants from the engine itself?
This post has been edited by biggestsonicfan: 29 June 2018 - 05:07 AM

#3 User is offline codenamegamma 

Posted 29 June 2018 - 09:00 AM

  • Posts: 71
  • Joined: 29-August 17

View Postbiggestsonicfan, on 28 June 2018 - 11:12 PM, said:

Well, the game used unencrypted LUA scripts, wouldn't the values just.... be in those, or are these constants from the engine itself?

I think stuff like Sonic's Speed for example, might be in those Lua scripts. but at least for something like GameSpeed since those are hard coded they're in the xex

#4 User is offline Irixion 

Posted 29 June 2018 - 03:26 PM

  • Posts: 1521
  • Joined: 30-December 04
  • Gender:Male
  • Location:Ontario, Canada
  • Project:Life
  • Wiki edits:152
Information on this is indeed very sparse. I've seen a few videos lying around on YouTube of changed hard coded values. Is it possible to recompile the .xex?

For the record I'm a junkie for this game. DM me if you'd like to discuss. Though I won't be much good with IDA.
This post has been edited by Irixion: 29 June 2018 - 03:27 PM

#5 User is offline codenamegamma 

Posted 29 June 2018 - 04:45 PM

  • Posts: 71
  • Joined: 29-August 17

View PostIrixion, on 29 June 2018 - 03:26 PM, said:

Information on this is indeed very sparse. I've seen a few videos lying around on YouTube of changed hard coded values. Is it possible to recompile the .xex?

For the record I'm a junkie for this game. DM me if you'd like to discuss. Though I won't be much good with IDA.

well right now if i could find someone whos good with xbox 360 hacking or ppc assembly that would be ideal. as to get debug mode working i think I'm going to have to figure out what that code does then change it in memory as the game is running, or hex edit the exe. as far as recompiling idk.... but at least ida can tell what it is so thats a start.

#6 User is offline Irixion 

Posted 29 June 2018 - 05:25 PM

  • Posts: 1521
  • Joined: 30-December 04
  • Gender:Male
  • Location:Ontario, Canada
  • Project:Life
  • Wiki edits:152
Have you tried looking at the PS3 executable? What about the demo? As far as debug, the flag for it can be set, but it looks like something overwrites the lua variables, as some variables don't seem to do anything when changed at all. I'm assuming this is because of the hard coded values in the executable.

#7 User is offline codenamegamma 

Posted 29 June 2018 - 07:56 PM

  • Posts: 71
  • Joined: 29-August 17

View PostIrixion, on 29 June 2018 - 05:25 PM, said:

Have you tried looking at the PS3 executable? What about the demo? As far as debug, the flag for it can be set, but it looks like something overwrites the lua variables, as some variables don't seem to do anything when changed at all. I'm assuming this is because of the hard coded values in the executable.

the debug code seems diffrent in the demo. as far as debug theres a no-clip kinda mod in the lua that i know about but nothing that will give us a menu.

#8 User is offline Irixion 

Posted 18 July 2018 - 09:49 PM

  • Posts: 1521
  • Joined: 30-December 04
  • Gender:Male
  • Location:Ontario, Canada
  • Project:Life
  • Wiki edits:152

View Postcodenamegamma, on 29 June 2018 - 07:56 PM, said:

View PostIrixion, on 29 June 2018 - 05:25 PM, said:

Have you tried looking at the PS3 executable? What about the demo? As far as debug, the flag for it can be set, but it looks like something overwrites the lua variables, as some variables don't seem to do anything when changed at all. I'm assuming this is because of the hard coded values in the executable.

the debug code seems diffrent in the demo. as far as debug theres a no-clip kinda mod in the lua that i know about but nothing that will give us a menu.



It's probably overridden by the .xex then...like much of the other stuff. I'll disassemble it and have a look myself. I may not be excellent at IDA but I have to start somewhere :v

Page 1 of 1
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users