Sonic and Sega Retro Message Board: Sonic Generations Hacking (and More!) - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Loading News Feed...
 

Sonic Generations Hacking (and More!) Generations Cracked wide open (Custom Levels are an ongoing event!

#1621 User is offline Dude 

Posted 26 April 2012 - 11:08 PM

  • 3ds MAX Help Desk
  • Posts: 2623
  • Joined: 11-September 04
  • Gender:Male
  • Location:Southbridge, MA
  • Project:Sonic Adventure Generations
  • Wiki edits:43
I've been getting this problem for awhile, I have no idea why but sometimes if I add a new ring and then delete it, the program just closes.

http://x-hax.cultnet.net/data.7z

That is my current #ghz200.ar.00 data folder, so if you want to recreate the bug, just load that up and try adding and deleting a ring.

#1622 User is offline Korama 

Posted 27 April 2012 - 02:25 AM

  • Posts: 232
  • Joined: 18-May 04
It's done!
Finally. Took a lot more work than I anticipated.

Download CPKREDIR v0.2

It works with the original (partially compressed) CPK files now and the test files that Dario gave me.
Let me know how it goes.
Maybe I'll make a new thread for it if it turns out to be reasonably stable, and after I've polished the code a bit more.

#1623 User is offline Dario FF 

Posted 27 April 2012 - 07:18 AM

  • Tech Support Hotline
  • Posts: 828
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl

View PostDude, on 26 April 2012 - 11:08 PM, said:

I've been getting this problem for awhile, I have no idea why but sometimes if I add a new ring and then delete it, the program just closes.

http://x-hax.cultnet.net/data.7z

That is my current #ghz200.ar.00 data folder, so if you want to recreate the bug, just load that up and try adding and deleting a ring.

Tried doing exactly what you said, and I can't reproduce it. Perhaps it's a terrain related problem? Some obscure memory bug? If it just closed it likely threw an exception and it was stored in the Ogre.log.

View PostKorama, on 27 April 2012 - 02:25 AM, said:

It's done!
Finally. Took a lot more work than I anticipated.

Download CPKREDIR v0.2

It works with the original (partially compressed) CPK files now and the test files that Dario gave me.
Let me know how it goes.
Maybe I'll make a new thread for it if it turns out to be reasonably stable, and after I've polished the code a bit more.

This is incredible. I've tried it with my Windmill Isle files and I could play the level with no problems.

There's only 1 issue with some files I tested. ghz_cmn.ar.00 for example has the following files:
ghz_cmn.ar.00
ghz_cmn.ar.01
ghz_cmn.arl

My mod uses 5 AR files for ghz_cmn though, so when I tried placing them over, it just crashed after the Havok screen, before getting to the main menu. So I guess it's possible it's just an issue with how the TOC is generated.

This is easily fixable as I guessed, by just not using split files and saving the stuff with MM's editor to a single big AR file with an ARL that only lists 1 file. I had to do the same with the ar files in the packed folder. This isn't such a big issue really since it actually helps me organize stuff better by not having so many split AR files! But I thought I might just let you know of it, since most users are likely to run into this issue. Luckily the crash is just at the main menu, so it's just probably an issue with the TOC, just how it crashes for me when my CPK created files are wrong. Here are the ghz_cmn.ar files I tested with.

If you manage to get it past the main menu crashing with those files it likely means it's working.

Other than that, it's perfectly functional as long as I don't use split AR files. Did you just go for recreating the entire TOC from the files in the redirection directories? It's really impressive.

#1624 User is offline Korama 

Posted 27 April 2012 - 01:19 PM

  • Posts: 232
  • Joined: 18-May 04

View PostDario FF, on 27 April 2012 - 07:18 AM, said:

This is incredible. I've tried it with my Windmill Isle files and I could play the level with no problems.

There's only 1 issue with some files I tested. ghz_cmn.ar.00 for example has the following files:
ghz_cmn.ar.00
ghz_cmn.ar.01
ghz_cmn.arl

My mod uses 5 AR files for ghz_cmn though, so when I tried placing them over, it just crashed after the Havok screen, before getting to the main menu. So I guess it's possible it's just an issue with how the TOC is generated.

Thanks for the feedback and the new test files.
For some unknown reason, the game closes bb.cpk for good when those files are in the redirection folder. I guess it finds fault with something when it examines the header or TOC of the virtual CPK that is created. I'll try to track down the cause.

View PostDario FF, on 27 April 2012 - 07:18 AM, said:

Other than that, it's perfectly functional as long as I don't use split AR files. Did you just go for recreating the entire TOC from the files in the redirection directories? It's really impressive.

Thanks! Yes, I create a new CPK header, using the original one as a template, and a new TOC that contains all files in the redirection folder plus the files from the CPK that do not exist in the redirection folder.
I've got the CPK file format (and the UTF tables it uses) pretty much figured out now and wrote some classes that can read and write the data. If there's demand, I might release a CPK unpacker (and maybe packer) later. I know there's that QuickBMS script, but it's inaccurate and fails to extract certain valid types of CPK files. Before I can do that, I need to do some research on the CPK internal "CRILAYLA" compression, though, I haven't looked at that yet.

Impressive work on SonicGLvl, by the way!

#1625 User is offline Dario FF 

Posted 27 April 2012 - 05:19 PM

  • Tech Support Hotline
  • Posts: 828
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl

View PostKorama, on 27 April 2012 - 01:19 PM, said:

...

Another idea I had is how hard do you think it would be to be able to add more redirection directories to your DLL? The point of it is I was thinking I could work on some sort of mod loader. It would work essentially like this:

ModFolder1="./mod/Unleashed"
ModFolder2="./mod/SilverSwapMod"

In short, all it would do is search the directories in order for setting up your CPK Header at start. Say, perhaps the first mod has a Sonic resources file, but the Silver mod would replace the Sonic file. Just simply overriding any previous files, giving more priority to the later folders.

The point of it I was just thinking of writing some sort of GUI Mod Loader with your DLL. What it would do is create a copy of the standard game executable patched(and it's quite a fairly trivial patch to do, since it's just a hex string search), and it would autodetect the folders in a mod subfolder, and let you choose the order. Then a simple Run button would execute the patched exe instead! If people wanted to play the original game they just run the standard game. With this method, all the user has to do is drop the Mod Loader to the game's folder without modifying anything, and dropping any mod folders to the "mods" folder.

In short, all my GUI would do is modify the INI your DLL uses, and create on its own a patched exe that doesn't tamper with the original game.

It should be fairly easy to make it happen... what do you say?
This post has been edited by Dario FF: 27 April 2012 - 05:20 PM

#1626 User is offline CrashSG32 

Posted 27 April 2012 - 08:17 PM

  • Posts: 20
  • Joined: 02-October 11
  • Gender:Male
  • Location:Australia
  • Project:Project Crash & Generations Hacking
^So what you are saying is that we can put different hacks in separate folders in a mods folder, than load the program, choose the mod and then it will run the game with the hack?

That'd be absolutely awesome! It needs to happen... please? :)

#1627 User is offline Jason 

Posted 27 April 2012 - 08:22 PM

  • This is how I look after seeing how far people take rule 34.
  • Posts: 574
  • Joined: 20-October 10
  • Gender:Male
  • Location:Clarksburg, MD
Bit of a tangent.

Can one of you be so kind as to render an image of the area where the goal ring is for GHZ Act 2, without HUD, Sonic, Dash Pads, Rings, or Goal Ring, at 1080p? I would really like that as a desktop background.

#1628 User is offline P3DR0 

Posted 28 April 2012 - 07:49 AM

  • L the Hedgehog
  • Posts: 299
  • Joined: 09-April 10
  • Gender:Male
  • Project:Sonic the Hedgehog

View PostDario FF, on 27 April 2012 - 05:19 PM, said:

View PostKorama, on 27 April 2012 - 01:19 PM, said:

...

Another idea I had is how hard do you think it would be to be able to add more redirection directories to your DLL? The point of it is I was thinking I could work on some sort of mod loader. It would work essentially like this:

ModFolder1="./mod/Unleashed"
ModFolder2="./mod/SilverSwapMod"

In short, all it would do is search the directories in order for setting up your CPK Header at start. Say, perhaps the first mod has a Sonic resources file, but the Silver mod would replace the Sonic file. Just simply overriding any previous files, giving more priority to the later folders.

The point of it I was just thinking of writing some sort of GUI Mod Loader with your DLL. What it would do is create a copy of the standard game executable patched(and it's quite a fairly trivial patch to do, since it's just a hex string search), and it would autodetect the folders in a mod subfolder, and let you choose the order. Then a simple Run button would execute the patched exe instead! If people wanted to play the original game they just run the standard game. With this method, all the user has to do is drop the Mod Loader to the game's folder without modifying anything, and dropping any mod folders to the "mods" folder.

In short, all my GUI would do is modify the INI your DLL uses, and create on its own a patched exe that doesn't tamper with the original game.

It should be fairly easy to make it happen... what do you say?

Sounds great to me. Not really sure how you would do it, but if you can pull it off, I guess that would be a big step for the modding community since now we wouldn't need to have a copy of the game installed in another folder for other mods or have backups taking HDD free space.

#1629 User is offline sonicblur 

Posted 28 April 2012 - 01:25 PM

  • Posts: 567
  • Joined: 18-February 08
  • Gender:Male
  • Wiki edits:6

View PostP3DR0, on 28 April 2012 - 07:49 AM, said:

Sounds great to me. Not really sure how you would do it, but if you can pull it off, I guess that would be a big step for the modding community since now we wouldn't need to have a copy of the game installed in another folder for other mods or have backups taking HDD free space.

You wouldn't have that with the way it is now though. From what I read on the previous page, the mod path is configurable. What Dario wants is multiple mods stacked on top of one another.
You could probably achieve this as-is without Korama adding it as an official feature, if you built a "combined" mod directory using symlinks to files. But symlinks are only supported on Vista and Windows 7 or newer.

#1630 User is offline Jeffery Mewtamer 

Posted 28 April 2012 - 02:47 PM

  • Posts: 573
  • Joined: 28-December 03
  • Gender:Male
Some awesome stuff is being done here, and I especially like the idea of creating a system for selectively loading multiple mods.

I just have one question(sorry if this is the wrong place to be asking this): Is there anyway of getting Generations running on my computer short of going to hassle of setting up a dual-boot?(I have a legitimate copy of Windows 7 that came with the machine, but I am currently running only Debian).

#1631 User is offline Aerosol 

Posted 28 April 2012 - 02:56 PM

  • FML
  • Posts: 5368
  • Joined: 27-April 08
  • Gender:Male
  • Location:New York
  • Project:Sonic (?): Coming summer of 2055...?
You could use virtualization software, but I'm not sure how well it'd work.

#1632 User is offline Morph 

Posted 28 April 2012 - 04:17 PM

  • AKA SonicFreak94.
  • Posts: 362
  • Joined: 01-August 08
  • Gender:Male
  • Location:San Diego, Calfornia
  • Project:Sonic Adventure DX: Fixed Edition
  • Wiki edits:11
Virtualization probably won't work well for Generations at all, considering the graphical detail. Or maybe it would, but I'm sure there would be a catch somewhere. It would probably work well (enough) for 2D games, though.

#1633 User is offline sonicblur 

Posted 28 April 2012 - 05:22 PM

  • Posts: 567
  • Joined: 18-February 08
  • Gender:Male
  • Wiki edits:6

View PostJeffery Mewtamer, on 28 April 2012 - 02:47 PM, said:

I just have one question(sorry if this is the wrong place to be asking this): Is there anyway of getting Generations running on my computer short of going to hassle of setting up a dual-boot?(I have a legitimate copy of Windows 7 that came with the machine, but I am currently running only Debian).

The WINE AppDB claims that the game works fine, without sound. I personally cannot confirm or deny this, as I always get the infamous "configuration doesn't match" error when I try it in CrossOver. The configuration tool works just fine though, since .NET 3.5 is supported in the latest version of WINE. The sound problem could be caused by the lack of a prerequisite in the WINE bottle. I know Sonic Adventure DX installs fine in WINE but doesn't have sound unless you install Windows Media Player. Perhaps it's a similar situation? (But I know Generations doesn't use WMA audio like DX did)

#1634 User is offline Korama 

Posted 28 April 2012 - 05:39 PM

  • Posts: 232
  • Joined: 18-May 04

View PostDario FF, on 27 April 2012 - 05:19 PM, said:

Another idea I had is how hard do you think it would be to be able to add more redirection directories to your DLL? The point of it is I was thinking I could work on some sort of mod loader. It would work essentially like this:

ModFolder1="./mod/Unleashed"
ModFolder2="./mod/SilverSwapMod"

In short, all it would do is search the directories in order for setting up your CPK Header at start. Say, perhaps the first mod has a Sonic resources file, but the Silver mod would replace the Sonic file. Just simply overriding any previous files, giving more priority to the later folders.

That should be possible, but I'd have to make some adjustments of course. I was already thinking myself about some alternatives to the way it is now (external files must be in subfolders in the same place where the original CPK is).

Anyway, how the game will take it is another matter. I keep running into strange problems, unfortunately.
I've found and fixed some bugs and your large, split ghz_cmn is working now - until I try to play Sky Sanctuary modern, then the game suddenly crashes.

Here's the update.

In the INI file, "PlaceTocAtEnd" should be kept at 1 until further notice. Placing the TOC at the start is bugged at the moment (and has been so previously). I'll probably fix that in the next release.
Hopefully I can figure out that Sky Sanctuary ghz_cmn crash... if not, we'll have to avoid split .ar files, as you've already said (if those work any better).

#1635 User is offline Lanzer 

Posted 28 April 2012 - 08:35 PM

  • The saber calls for its master...
  • Posts: 4148
  • Joined: 27-February 09
  • Gender:Male
  • Location:California
  • Project:Doing Stuff.
  • Wiki edits:1
Just thought I'd stop in and share what were talking about at SSMB:


Someone has restored the original rank animations from the demo.

  • 243 Pages +
  • ◄ First
  • 107
  • 108
  • 109
  • 110
  • 111
  • Last ►
    Locked
    Locked Forum

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