sewer56 / heroes.graphics.essentials.reloadedii Goto Github PK
View Code? Open in Web Editor NEWA Reloaded II mod for Sonic Heroes focused on Graphics, providing essentials such as widescreen support and fast load times.
A Reloaded II mod for Sonic Heroes focused on Graphics, providing essentials such as widescreen support and fast load times.
Purpose of Patch 1.4.2
https://discord.com/channels/288415776782942210/288417145493258240/1223814148610068520
On this user's 1440p panel with display scaling, game did not correctly set the render region for some strange reason. Both with and without dxvk.
For now we force a window resize to correct it, but in the long run, we should do a more proper patch and figure out what the game does during window resize, and replicate that.
I am dumbfounded, speechless and in the last two days, cannot come to a conclusion.
There appears to be a possibility of either a very deeply rooted runtime bug in the .NET Core runtime involving managed -> unmanaged code transition that is exposed hooking certain functions or heap corruption when hooking some functions.
Specifically compiling the Hooks Project of Graphics Essentials in Release Mode causes the following side effects:
Stage Injector
NullReferenceException in the following hook to get end position, despite the object nor delegate being null which could be verified by debugging/printing the line before:
https://github.com/Sewer56/Heroes.StageInjector.ReloadedII/blob/228799a995ff047100955af9939b351469d71f2e/sonicheroes.utils.stageinjector/StageCollection.cs#L115
Controller Hook
https://github.com/Sewer56/Heroes.Controller.Hook.ReloadedII/blob/bc40b3f0c8ffb27d47c83113a706d91f0268007e/Heroes.Controller.Hook/ReloadedController.cs#L61
Passing the interface to constructor of ExtendedController caused an access violation... for passing an object on the stack.
This error was only triggered in Special Stages, whereby the game would crash when the emerald indicator is drawn.
These initial problems may have been fixed by adding the ESI parameter into the following function used to draw the emerald indicator:
Which the previous lack of may have possibly caused memory corruption.
Directly related to the heading above, and the same function.
Compiling the library as Release still causes the game to freeze when the emerald indicator is drawn. The game works for another 2-3 frames, until it freezes without crashing.
According to the Crash Dumps %localappdata%\Crash Dumps
, the error is 0xC0000409 (Stack Overflow/Stack Buffer overrun) however debugging the process I could not find any evidence of a stack overflow.
This might be a case of perhaps an expected register to be callee preserved used later in code, I have yet unfortunately not figured out.
Help would be appreciated.
Is it possible to configure anti-aliasing with this mod?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.