Sonic and Sega Retro Message Board: Sonic Heroes Hacking/Modding - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
  • 2 Pages +
  • 1
  • 2
    Locked
    Locked Forum

Sonic Heroes Hacking/Modding I promise it's the last one

#16 User is offline Aquaslash 

Posted 05 December 2017 - 03:43 AM

  • Emerald Dragoon
  • Posts: 2816
  • Joined: 17-November 04
  • Gender:Male
  • Location:Hampton, VA
  • Project:The S Factor: Sonia and Silver
  • Wiki edits:1,144
That wasn't me on youtube, but it's nonetheless good to see the issue appears to be a small one

#17 User is offline sewer56lol 

Posted 07 December 2017 - 10:32 AM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader
Alright, even with the limited time that I've had as I've been busy this week I've managed to find myself some time in which I could take the current sources, move them to .NET 4.5 and recompile them.
This was a bit tedious as with new changes, literally every single mod had to be moved down to .NET 4.5 (some from not me are on .NET 4.6) and moved onto the new template due to the internal changes.

I've recompiled virtually everything I had at hand except for Magnetic Barrier and Direct2D Sample as Vanilla-Tweakbox has improved versions of those.

I've not had the chance to test it on a Windows 8 VM (or Windows Vista) but everything here does function as expected on my machine, so I suppose here's another download such that Win 8 (not 8.1) users (potentially) don't get boned anymore (see edit).

I also threw some basic Riders stuff in there for good measure:
Posted Image

Edit:

I might aswell use the Retro Wiki for this: https://info.sonicre...Loader-NET45.7z

Note to Staff: Feel free to remove old revisions if you believe that sometimes periodic uploads would bully the Retro wiki in terms of storage space too much.
This post has been edited by sewer56lol: 08 December 2017 - 05:19 AM

#18 User is offline Chris Highwind 

Posted 11 December 2017 - 08:46 PM

  • Posts: 2056
  • Joined: 30-August 08
  • Gender:Male
  • Location:Mooresville, NC
  • Project:Slacking
  • Wiki edits:13

View PostDark Sonic, on 04 December 2017 - 07:56 PM, said:

View PostIrixion, on 04 December 2017 - 01:27 PM, said:

We have fully customization levels in Heroes now and people are still going on about Forces? Psh. Nicely done.

Yup, because Heroes was garbage :v:


And Forces isn't? :v:

No, but seriously, I always love it when we get a large modding community for a Sonic game, and I'm going to follow this as well.
This post has been edited by Chris Highwind: 11 December 2017 - 08:47 PM

#19 User is offline sewer56lol 

  Posted 20 December 2017 - 02:30 PM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader
I have recently identified a regression.
It would appear that on certain hardware configurations, starting with the Windows 10 Fall Creators Update (1709), there's achance that the WS_EX_LAYERED extended window style may be broken, both separately and in conjunction with WS_EX_TRANSPARENT.
Windows would fail to properly handle the WS_EX_LAYERED property, there appears to be zero proper alpha blending to be exhibited (no transparency) and even after adding WS_EX_TRANSPARENT, the window would still be hit tested (reacts to mouse clicks).

Windows Insider builds would appear to break things further. Topmost windows using WS_EX_LAYERED
would fail to stay topmost (tested w/ build 17035).
What does this mean to you?

To put it quite blandly, if you run into this you're FUCKED when it comes to anything that uses the external overlay.
At the moment, this is only Tweakbox and the D2D Overlay Sample which use this.
There does not appear to be a workaround, at least after 8 hours of Windows build switching, playing aroundwith DWM and registry, trying toggling of blur for window, disabling + re-enabling DWM at runtime, setting extendedwindow classes after window creation and/or during creation, changing window class styles, etc...
Just to name a few things that I've tried.

Spread
It is unknown who is affected and who isn't, no patterns in terms of hardware.
There are 2 (maybe 3) known cases whereby this breakage has been observed.

#1: Laptop w/ an i5-5200u CPU, integrated graphics. (That's mine)
#2: PC with i7-6700, GTX 1060 (6GB) (Prebuilt)
#3: Unknown machine owned by S0LV0 (Experienced during SHC week)

While not with me as I'm away from my regular room, my Desktop (4790k, 2x R9 290) is not affected by this.

Extra Appendix
This is exclusive starting with Fall Creators Update (1709), the overlay wasn't affected by thealready prior created breakages for overlays and external overlay issues introduced in
Creators Update (1703).
One thing I've not tried is manually creating the window with native functions,
declare WNDCLASSEX, register with RegisterClassEx() and create window with CreateWindow().
This problem is also not exhaustive to the mod loader nor the loader's overlay unfortunately and likely affectsmany other overlays using blending and/or transparency, mainly in the multiplayer game hack space.

Libraries providing external overlays are also broken.

Status?
After a good few hours of tampering and multiple OS reinstalls and build changes to test on real HW,I'll simply say that I wouldn't be "fixing" this in the meantime (it's a Windows bug).
There is no known reasonable/sensible "fix" that I know of which wouldn't harm anything
else in question, diminish performance or not bring forth undesired effects.

It simply means that I'll have to put implementing the Internal Overlay above all else
after I get around to finishing refactoring of the loader and main library.
Note to self: You probably shouldn't use text centering ever again, manual formatting looks bad on small windows/screens.

This post has been edited by sewer56lol: 20 December 2017 - 03:06 PM

#20 User is offline sewer56lol 

  Posted 24 January 2018 - 11:41 PM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader
Posted Image

Opening the gates of IRC

I thought I'd give a small update on the state of the communications.

The gates have been opened and there now exists a sister IRC channel.

The channel can be found on the Badnik IRC under channel #HeroesHC.The channel supports a relay bot, hosted on my RasPi, relaying messages from and to Discord.

I am also now making use of an IRC bouncer (ZNC) hosted on the same Pi.
I wouldn't be missing any messages //forums.sonicretro.org/public/style_emoticons/default/wink.png.

Channel Mapping
Messages from multiple Discord channels are merged onto the IRC channel.
Messages from IRC are only relayed onto one channel however (#hacking-general).

The piped channels are generally low-activity channels which do not
generally include off-topic conversations.

Here is a list of piped Discord channels:

Posted Image

Answering questions should preferably from the IRC side should
preferably be performed by tagging the original poster with the @ symbol.

(oh, and we also do Shadow The Hedgehog stuff :P)


Posted Image
Mod Loader Status

Mod loader wise, I'm working on things.
Seeing that there was enough interest to gauge satisfying me, I've beganto rewrite the code from scratch to meet my new set quality standards.
The rewrite so far has been going pretty smoothly. Most of the work on the back/mod-end has been done and I'mcurrently working on the launcher.

I can't give any guarantees but maybe late February/March could
be a reasonable timeframe for seeing something out of this thing.

Sonic Heroes wise, as for how active modding this game has been...
I can't tell you. January saw almost nothing while December was
very active compared to the norm, perhaps some people are waiting...

We'll see soon enough...

Here's some launcher WIP till then (dummy text)...
Spoiler

Note to self: You weren't meant to use center text again, dummy.

This post has been edited by sewer56lol: 25 January 2018 - 12:07 AM

#21 User is offline ShadowBlitz 

Posted 07 July 2018 - 03:01 PM

  • Posts: 12
  • Joined: 28-October 14
  • Gender:Male
Posted Image
So as it turns out, Heroes modding isn't dead. I'd like to present the first serious stage import that uses publicly available tools! Only a tad bit of code and what I did code was just for end level rank scores. It took a while, but hopefully this shows that Heroes modding has come quite a long way. (and yes, for the record, I go by Shadowth117 on other sites)
https://gamebanana.com/maps/200670

https://youtu.be/MdcqrSudtmo
This post has been edited by ShadowBlitz: 07 July 2018 - 03:02 PM

#22 User is online Josh 

Posted 19 August 2018 - 03:13 PM

  • TGC Warrior
  • Posts: 1373
  • Joined: 22-January 08
  • Gender:Male
  • Location:USA
  • Wiki edits:1
So, I figure I'll ask here, because if anyone would know, it'd be you guys.

On the newest update of Windows 10, using the widescreen mod, I seem to be having some frame rate issues. The game regularly drops, and stays, well below 60fps on a GTX1080. I'm capturing footage of the game for an episode, and I can go frame-by-frame to confirm this.

I've tried running the game in compatibility mode for XP, and adjusting the render distance, neither of which seem to have made any difference. I've searched Google, and found other users with the same issue, but no solutions.

#23 User is offline sewer56lol 

Posted 19 August 2018 - 05:25 PM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader

View PostJosh, on 19 August 2018 - 03:13 PM, said:

So, I figure I'll ask here, because if anyone would know, it'd be you guys.

On the newest update of Windows 10, using the widescreen mod, I seem to be having some frame rate issues. The game regularly drops, and stays, well below 60fps on a GTX1080. I'm capturing footage of the game for an episode, and I can go frame-by-frame to confirm this.

I've tried running the game in compatibility mode for XP, and adjusting the render distance, neither of which seem to have made any difference. I've searched Google, and found other users with the same issue, but no solutions.


Would you happen to be running Nvidia's GeForce Experience?
While it may or may not have been fixed, it's known for causing significant framerate drops with this game - or as least has historically been known for doing so.

There is also a known timing issue over the years where the game performs frame pacing incorrectly somewhere - I've never been able to look into it personally as the last time I've experienced it was all the way back in 2014.

Back then, the consistent workaround for that issue has been to run the ENBSeries DX8 wrapper, which did run perfectly but had the side effect of not displaying the team members' faces on the HUD.

You can find that wrapper here: http://enbdev.com/do...or_dx8todx9.htm
But if you get that point, before you do that, you should try Crosire's d3d8to9 wrapper which has no visual side effects in this game: https://github.com/c...3d8to9/releases

---------------------------------------------------------------------------

Edit:

I thought that there's actually something else worth bringing up.

When it comes to playing Heroes, I often find that people use non-stock executables for playing the game.

Many of them will often grab it from a random source and in some cases - grab not just only a widescreen hack but also an executable containing other modifications.
YouTubers are particularly guilty of this.

You should use along with a stock, clean executable - such as this one without SecuROM DRM which is the one that all official Heroes re-releases seem to use and was nicely tagged by the Scene group, Reloaded in the PE header.

For widescreen, the current preferred option is running my own set of Graphics Essentials for Reloaded Mod Loader. This solution lets you set an arbitrary resolution, gives you some options for controlling the game window and has an automatic widescreen hack which responds to window resizes in real time.

Bear in mind that you'll probably want to set your game to windowed mode for now, I didn't implement fullscreen as I never planned to release it as I was not done with it (which is why I've not shared it on here, GameBanana or any other source). In case you are curious, setting the resolution to your display's and enabling borderless will get you the borderless fullscreen window you desire. (Edit 2: Someone apparently linked that on WSGF... fine, I'll switch back to this for ~2 hours and implement fullscreen toggle and tallscreen hack... then score out this text)


Alternatively if you would really rather prefer a clean widescreen hack in .exe form, Jackfuste's executables are the preferred ones, though the resolutions and widescreen hack aspects are hardcoded.
This post has been edited by sewer56lol: 20 August 2018 - 12:38 AM

#24 User is offline sewer56lol 

Posted 19 August 2018 - 11:01 PM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader
Okay, have you ever before noticed that Sonic Heroes takes exponentially slower to load while playing the game in windowed? What if I told you that it's not the slow loading times that are the bug; but the fast load times are the bug.

Basically the game is meant to play the entire intro animation for the titlecard before letting the stage load continue; but because modern hardware is simply SO FAST, some stuff is done faster than the minimum time granularity the Operating System reports back to the game.

This actually causes two different titlescreen functions (which I assume are for interpolation) to receive the same system time when they should not, and the game skips the entire intro sequence.
This post has been edited by sewer56lol: 19 August 2018 - 11:01 PM

#25 User is online Josh 

Posted 20 August 2018 - 09:44 AM

  • TGC Warrior
  • Posts: 1373
  • Joined: 22-January 08
  • Gender:Male
  • Location:USA
  • Wiki edits:1

View Postsewer56lol, on 19 August 2018 - 05:25 PM, said:

But if you get that point, before you do that, you should try Crosire's d3d8to9 wrapper which has no visual side effects in this game: https://github.com/c...3d8to9/releases


Thanks, that seems to have done the trick!

Quote

Many of them will often grab it from a random source and in some cases - grab not just only a widescreen hack but also an executable containing other modifications.
YouTubers are particularly guilty of this.


I know, my profession is the scum of the earth. :P I used the widescreen fix that was, until a few days ago, the only one linked on the PC Gaming Wiki. (Namely this one.) Will that cause serious issues, or should I try to find a better option?

Seriously, thank you for the help! I couldn't find this info anywhere!
This post has been edited by Josh: 20 August 2018 - 09:46 AM

#26 User is offline sewer56lol 

Posted 20 August 2018 - 02:44 PM

  • I eat Sonic Heroes for breakfast.
  • Posts: 24
  • Joined: 04-June 12
  • Gender:Male
  • Location:United Kingdom
  • Project:[Reloaded] Mod Loader

Quote

I know, my profession is the scum of the earth. :P I used the widescreen fix that was, until a few days ago, the only one linked on the PC Gaming Wiki. (Namely this one.) Will that cause serious issues, or should I try to find a better option?


Hahah, don't worry - I love geeking while you're critiquing.
I'd probably go on PCGW myself if I was going to play an older game for the first time on a PC.

The updated version of ThirteenAG is absolutely fine as a widescreen hack; it's relatively quite barebones and it basically runs on a mini mod loader of its own - a generic DLL injector (with DLLs renamed .asi) which is very similar to what I do under the hood.

There are no culling issues or side effects to it - both the recipient view window (as RenderWare calls it) is squished to render more on the sides and the camera's perspective clip planes (used for object culling) are patched to accomodate more objects on the side provided you update the ThirteenAG download, you get pretty much just enough/what you need to play the game in fullscreen. If what you want is just a very simple widescreen hack, then it works fine.

On the negative side, there is no Y scaling, "tallscreen hacking" as I call it (or any other goodies), resulting in this once you go below 1:1 aspect:
Spoiler


(In short: No visual artifacts on ThirteenAG, does its job as expected. Behaviour is correct so long as you play widescreen - no extra goodies/options though :/)

As an extra note, for the sake of comparison, the improvements that my own solution has over ThirteenAG are the following (at the time of writing):

- Y-Scaling (as seen in the spoiler).
- Hack for extreme aspect ratios, tested it with 172.8:9 and beyond [that said, it looks exactly like you'd expect at that aspect].
- Borderless windowed (optional)* [see footnote].
- Resizable windowed (with real time aspect ratio adjustment).
- Disabling frameskip and playing 2P at 60FPS.
- Hack for stupidly fast load times.
- Extra option for locking the game's HUD aspect for those people who desire it (default behaviour, alternate behaviour [forced 16:9 HUD - auto increased FOV to accomodate]).

And I should probably add Field of View scaling as an option sometime soon.

Everything aside from the widescreen hack itself is toggleable.

* A generic borderless windowed utility would not work with Heroes as you'd expect; the game stores the resolution in memory and makes use of it between stage to menu switches - once you'd enter a stage, the area once taken by the window borders would be all black (albeit stacked at the bottom and right of the window); the result would be something that looks like this (see bottom and right).
This post has been edited by sewer56lol: 20 August 2018 - 02:54 PM

  • 2 Pages +
  • 1
  • 2
    Locked
    Locked Forum

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