don't click here

Sonic Generations Hacking (and More!)

Discussion in 'Engineering & Reverse Engineering' started by Andrew75, Jun 23, 2011.

  1. Lobotomy

    Lobotomy

    35% Cognac Banned
    4,394
    1
    0
    Traverse City
    Project: Matter/Energy
    Oh wow, that works surprisingly well. I bet it would look fantastic with normal maps, GI and some pretty textures. :D
     
  2. TheKazeblade

    TheKazeblade

    "Our Life is More than a Side-Effect" Member
    It's really starting to look good! I always wished I could play Kingdom Valley in a good game, so seeing it here is very awesome. Can't wait to see that complete! My only issue thus far are those cliff-textures... they were ugly in '06, and they're ugly in Generations too :P I'd love to see some improved ones with some normal mapping!

    This probably isn't possible, but I sure think it would be cool if you could put in Sliver's portion, but make it playable as Classic Sonic! I'm assuming that Modern and Classic can't swap in the same area, though, so yeah... :flunked:

    Also, have you considered instead of floating springs at the rope section switching it with swinging poles?

    Reaaaaaally excited to see this finished! I can't believe how close we are to a fully-functional Sonic '06 with a decent engine backing it :eng101:
     
  3. Paraxade

    Paraxade

    Member
    186
    0
    0
    Oh also, I figured out something interesting the other day. It turns out the rotation of the results screen is determined by the rotation of the goal ring. Maybe other people already figured that out, I never heard about it though so just in case :P

    Ha, yeah, unfortunately the original game didn't seem to use normal maps and I don't do any texture work, so there won't be normal maps unless someone wants to make some custom ones. :P Definitely doing GIA though, but that's going to be one of the last things.

    I actually do think Silver's part would work decently well as a 3D Classic stage. I'm just iffy about it because of the spindash problem. Plus not sure I want to sink more time into making another level, heh.

    Yeah, that's been brought up a few times. I really don't se how it would work. The ropes are purely vertical and the swing poles are more horizontal-oriented, they would just fling Sonic into the wall.

    One other thing. Does anyone know how I'd go about swapping out the Crisis City roads for the Kingdom Valley bridges? They're really weird. There are two components to it: the actual road, and the breakable pillar underneath it. The weird part is that there are three .hkx files: breakroadA, breakroadA_road, and breakroadA_piller. The latter two are the collision files for the road and the pillar and I have no idea what the first one is. But even though there are three .hkx files, the entire thing is in just one .model. It seems to use bones to distinguish between different parts of the bridge; there's a bone for the road, a bone for the pillar, and then a bunch of bones for the breakable parts.

    Would much appreciate some help on that. I tried to change one of the collision files and it just crashed the game, heh. No idea what to do with it.
     
  4. Azu

    Azu

    I must be stupid. Member
    If you ripped that Kingdom Valley from Sonic Blitz, then it won't have the normal maps. You should ask someone who has Sonic2k6 to rip all the textures for you.
     
  5. Dario FF

    Dario FF

    Tech Support Hotline Tech Member
    I've been fooling around with the LUA scripts today, and I managed to get this working.



    All it involves is using a modified script in #Application.ar.00... if Korama can come up with some way to integrate it into CPKREDIR(maybe having some way to access the current version in memory built into the CPK table, and able to modify it with GenArcEd), I'd definitely consider adding the option into SonicGMI as a dropdown menu. Basically, it supports booting straight into the game with the following variables:
    - Stage name
    - Mission Number
    - Classic Sonic, Modern Sonic, Final Boss Super Sonic(which crashes in almost every stage anyway)

    Benefit to regular users? Not much, other than if it really takes off it could solve the dilemma of "adding more stages" to the HUB, since there would be no HUB. :v: However most projects like to actually use HUBs anyway. Apart from that, this is the perfect way to test your stages quickly without wasting time on the logos, title screen, hub, etc, since in something like this, reducing iteration time is vital.
     
  6. KuroBit

    KuroBit

    Member
    38
    0
    0
    That would be incredibly helpful! I was really hoping someone would figure out how to do this at some point, thanks for figuring this out!

    I would ask how you got this done exactly, but I only have knowledge of LUA through NES hacking, and I don't really understand what that would have to do with hacking Generations :P, so it's probably way beyond me. I'm just a bit surprised that you mentioned LUA.
     
  7. SonicHyuga

    SonicHyuga

    Member
    48
    0
    6
    Tennessee
    Sky Rail (Generations) and Aquarium Park (Generations)
    That would cut time testing stages drastically.

    So we're not limited to just the 9 stages now?
     
  8. Could we possibly use this, or something like it, to connect levels directly to each other like the Genesis games? It'd be interesting to make a series of levels that start automatically after beating the previous one.
     
  9. Chimera

    Chimera

    I'm not a furry. Tech Member
    1,272
    17
    18
    Castlevania prettyness
    That's actually what I asked Dario to look into this for in the first place; As I recall he said that works, so yes, a "classic" progression style is very possible!
     
  10. Dario FF

    Dario FF

    Tech Support Hotline Tech Member
    Azu sent me a while back the #Application.ar file from the 360 version, which has text-LUA scripts, in contrast to the compiled scripts that come with the PC version. These text-LUA scripts work just fine with the PC version, so I spent some time studying how it works.

    After trying a lot of stuff, I didn't manage to be able to skip the Logo and NoticeBoard sequences, but I could skip the title one, and make it switch to the stage module. Prior to setting up the stage module, I forced it to Setup either Classic or Modern Sonic, and the stage I wanted. Couple that with the LogoRemoval mod by Korama, some tweaks to reduce the display time of the non-existent logos to the minimum, and you got your instant-boot.

    I won't go into detail yet, because I'm wondering if it's possible to skip the Logo sequence altogether without having to make it invisible. Also, I'd like to extend the script to work in a way that when a variable is turned on, this functionality will toggle, otherwise, it'll work like it always did. After clearing the stage, the game goes into the real Title Screen.

    Depends on how you want to look at it! Technically, all it's doing is just forcing the stage to boot into that slot. If you wanted to design a mod system around the idea that EVERY level is ghz200, and just select the level from a list, it would work! However, I think we would like to keep the mod system set up as it is to avoid confusion.


    You can make a brand new story unlocking and level progression system if you want. You can manage calling events, game modules, NPC saving, skill unlocks, even achievements. I have no idea how feasible it is to modify the actual events for animations and dialogue, but yeah, you can easily have your classic progression system as soon as you hit New Game. You can scrap the entire HUB altogether if you want.

    There's quite a lot of potential on these LUA scripts for the stuff they didn't hardcode.

    EDIT: Here's the vid I showed to Chimera earlier, how the HUB would be scrapped if it just booted straight into a stage. You could make a Classic Progression system like that, since the last stage in progress would be saved, and you can just boot into the last non-completed stage. Like Sonic 3!
     
  11. Azu

    Azu

    I must be stupid. Member
    Dario, try enabling Debug mode. It seems it won't boot with debug mode enabled, but it might with your instant-boot method.
    You have to edit it in the MainSequence.Lua. Should be the very first line. Also, if it alright with the rules, I can post the Xbox360 version of the text-based lua scripts.
     
  12. Dario FF

    Dario FF

    Tech Support Hotline Tech Member
    All the debug variable does is just control what modules are executed. There's some inconsistency between what's considered "Debug" and "Demo" as well. I did it as it should be, just executing the Debug Menu(MODULE_DEBUGINIT and then linked to MODULE_DEBUGMENU) after the logos, and it hangs after Debug Init, so I'm not even sure if the relevant stuff is in the game anymore. Looks like there's something missing that should load the Debug Launcher instead.

    You can still load the Trial Menu with the other script though by doing a simple swap, if anyone finds some use for it(which lets you select between Green Hill Zone classic and Modern and goes back to the Title Screen after playing).
     
  13. Azu

    Azu

    I must be stupid. Member
    Sorry about the borders. Tried removing them in another version, but Sony Vegas is being kind of derpy.


    Yes, this has been done before, but I did it using the Lua scripts.
    Yes, you can force Super Sonc, but it will crash. I still haven't found out how to get the "regular" super sonic show here. http://www.youtube.c...h?v=L8zh2lNGjho
     
  14. S0LV0

    S0LV0

    Sonic Generations Helpdesk Tech Member
    586
    1
    0
    Spagonia
    Abusing SMPS
    Currently, me and Sky The Destroyer are working on a joint Windy Valley mod, with him handling Windy Hill and me handling The Air. I was wondering if anyone knew how to get the BGM changing trigger functioning for a stage that isn't SPH or CTE. If this isn't possible, no big deal; we can port over one of those instead. It'd be nice to know if it is possible though.
     
  15. Whatever happened to the Unleashed Portin'? Haven't heard anything in like, forever :V



    Edit: Also does anyone have a 'for dumbass' guide to start importing stuff?
     
  16. Dario FF

    Dario FF

    Tech Support Hotline Tech Member
    2 weeks = forever? :v:(Last Savannah Citadel video) We're always working on it, it's just that there's not much stuff that I'm researching like I was before, because there's not much stuff left to discover that we need. Working on the stages is the tough part, and Rooftop Run was basically started from scratch(after having to be debugged for several days with a terrain crashing conversion problem).

    One would think it would be easier to port since there's already a Generations version, but that couldn't be farther from the truth, due to just how long and detailed the original version is...
     
  17. S0LV0

    S0LV0

    Sonic Generations Helpdesk Tech Member
    586
    1
    0
    Spagonia
    Abusing SMPS
    http://info.sonicretro.org/SCHG_How-to:Import_Levels_Into_Sonic_Generations
     
  18. So, out of curiosity, did the Generations Rooftop Run level have all the textures you needed, or did you have to import them as well?

    Possibly a stupid question, I haven't tried porting any levels yet, myself.
     
  19. Azu

    Azu

    I must be stupid. Member
    What is the .xml to dae exporter for in SonicGLVL?
     
  20. SonicHyuga

    SonicHyuga

    Member
    48
    0
    6
    Tennessee
    Sky Rail (Generations) and Aquarium Park (Generations)
    I believe it's just another option to convert the collision. (Preview Tool > Export As XML)