Code Monkey home page Code Monkey logo

mgshdfix's People

Contributors

cipherxof avatar emoose avatar lyall avatar shizcalev avatar yoyossef avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mgshdfix's Issues

Intro Logo's not skipping

Hi

Not sure if this is the right place to report it, very new to github, but got your recent release with the feature to skip intros.

Playing MGS3-NA and the logos aren't bring skipped, I do have the upscaled logos from Nexus Mods but that's just visual so I doubt they would be the cause etc.

When I come to test MGS2 and the different regions etc. I'll let you know if I get the same results.

Also, thanks for working on the fixes :)

Doesn't work

Unlike the other MGS2 and 3 mod which also had this dll and a copy paste of files which worked, this one doesn't. With these files in the folder with the exe the game simply doesn't start.

Use DXVK and this mod

I can't install this mod and DXVK(need this otherwise my game won't open), is there any way to use both dll's at the same time?

Disable Background Input

I frequently Alt-Tab and type, but MGS3 acts a bit like a keylogger and reads all input, regardless of whether it has focus. As I type this, Snake is crouch spamming, shooting, spinning in circles, equipping and unequipping items, everything but standing still. Somehow I even managed to tranq something.

This feature may not entirely be within scope of the mod, but I figure it's worth a shot with the mouse settings implemented.

If possible, I'd like to keep background input only for controllers, but that may be asking a bit much.

[Feature Request] Add Contrast adjustment

If you add 50% contrast in Photoshop, you can match the Master Collection to the PS3 HD release. Would it be possible to make a contrast adjustment in the .ini file?

20231112104221_1
PS3 HD vs Steam MC w/ Contrast adjustment @ 50%

[Bug] MGS2/3HD issue: FOV too tight indoors

Below is an image of MGS2 HD as it stands.
image
Below is an image of a bug that regresses the camera to its default for a single frame. (Press first person view button, then one frame later pause)
image

One of the biggest issues with MGS2 is the viewport being too tight, characters often disappear off-screen entirely.

Default:
image

Older FOV:
image

Thank you for considering this issue.

incorrect aspect ratio

Game assumes aspect ratio by reading highest available resolution for desktop instead of using curently selected resolution in game as source for aspect ration or primary resolution as source or current desktop resolution.

This leads to incorrect scalling issues.

Many 4k tvs and displays has resolution 4096x2160 supported which is 17:9 but should be scalled to 16:9 by tv. Primary resolution is 16;9 - 3840x2160. Game wronly assumes 4096x2160 resolution as source of aspect ratio, and 17/9=1.8888.

When all kinds of resolution selected, lets say 16:9 game thinks that it needs to be corrected and that its actually 1.88888 instead of 1.77777. And so it vertically stretching ABSOLUTELY EVERY GAME IN MASTER collection and add vertical pillar boxes.

I think this can be fixed by preventing game from reading maximum available resolution and only allowing it to consider currently selected resolution as maximum one. So some sort of enumerated resolutions list filtering needs to be done before giving this data to games.

Add volume adjusters

MGS3 especially has horrible mixing and sounds are often far louder than they need to be. To the point where it sounds like one of those deep fried memes you'd see on youtube, that along with compressed audio in cutscenes adds to an overall poor experience. If there can be a way to fix both that would make this close to the definitive fix for this game.

Game crashes after enable mouse sensitivity multiplier

The other fixes worked fine in my game, but after i tried to enable the mouse sensitivity multiplier, the game would just pops up white screen and then it just crashes. Tested on NA version of the game
Edit: I just found out that I have to reopen the game about 3 times to get the game works with that fix enabled.

Numerous issues on 5120x1440 monitors (MGS3)

Edit: retracted (crossed out) some statements as they were not specific to the patch.

This is tested on MGS3 so far.

With a 32:9 monitor the patch seems to ignore the custom width setting.
With width set to 2560 the game still runs at 5120 and stretches everything to the entire screen width. Aspect ratio setting does not have effect on this.
Windowed causes the game to drop down to 2-3 FPS when the window is in focus and 60FPS when not in focus.
Borderless does not work as the game tries to display on the left side of the screen , then proceeding to cause my monitor to lose signal and crash the game shortly after, restoring the signal (weird one).

Would really love to use this patch for the intro skip features, but have to fallback to MGSResolutionPatch for working pillarboxed solution. Can provide further info if needed.

[Feature Request] Add remappable controls

Someone at Konami thought that it would a good idea to assign some actions to keys that are way too far from WASD. Adding an option to remap these actions to another key would be nice.

Windowed/borderless modes

Would be nice to add windowed & borderless options, for windowed mode I found a pretty easy patch for it (included in the steam forums mod), haven't seen any major issues from that yet, though it did need an extra patch to hide mouse cursor since game was calling SetCursor all the time.

(for finding that patch, it seems the Renderer.dll they shipped isn't actually a DLL but a .lib file with function names & a couple structs, from that I saw a CRenderBackend::CreateSwapChain func gets called by CRenderBackend::CRenderBackend with a param that sets it fullscreen, changing that param in the EXE from 1 to 0 seems to be enough to let it stay in windowed mode.)

Seems the game actually has some logic for storing/retrieving window position too, but not really sure how good that is, saw a few mentions that moving the window had issues.

Tried looking into making it borderless too, AFAIK this usually just needs the CreateWindowExA style parameter changed to remove the border/maximize/minimize/etc flags, but when I tried that with this the game window just failed to render, cursor would stay locked in the borders it should have but nothing showed, not sure what's up with that... game does seem to have weird code for rendering the window as a child window of something else, maybe that's interfering somehow.

Use without needing the game's launcher

I had assumed I was the only one that was having issues with this mod not working as I saw no body else saying the same. I now realize that it's because I renamed METAL GEAR SOLID 3.exe to launcher.exe as to skip the launcher and have steam go directly into the game, which evidently negates nearly every feature of this mod and the game actually looks worse. Is it possible to remedy this and still bypass the launcher?

For what it's worth, the MGSResolutionPatch mod works fine in this scenario but lacks the other features of MGSHDFix

MGS3: Widescreen 16:9 HUD does not work properly

Hello,

Knowing this feature is experimental, I didn't see anyone complaining about a gap when [Fix HUD] is enabled on a 21:9 screen, my resolution is 3440x1440 and I wish to have original HUD and movies content on this kind of resolution. Don't know if this option was intended for that but seems to.

Here some screenshots of the result when enabling this feature.

20231106140256_1

20231106140303_1

20231106140309_1

Playing without is ok otherwise, wish this feature will do its job one day without breaking stuffs! :P

Borderless and Windowed issue

The borderless mode has an issue with freezing of the game when I alt+tab the game, if there is a way to continue the game that would be great.
Windowed mode has the opposite problem where it continues to input game keys when you're not using the game application. If I type WSAD or Space on another application outside of the game, it'll register that input in the game.

[Bug] Post-processing issues, more info needed

Seen a lot of mentions about post-processing being broken when resolution is changed, not sure if anyone has tried making a comparison with them though (other than comparisons between PS2 & 720p HD collection).

Does anyone know any spot in the game where post-processing becomes noticeably different at different resolutions?

In RenderDoc I noticed they're creating some blurred render target buffers, looks like the resolution of those are being scaled with the game res though, eg. at 2560x1440 it creates 1280x720/640x360 buffers, while at 1920x1080 it creates 960x540/480x270:

eg at 2560x1440 game res:
image
vs 1920x1080:
image

Very similar results there, though the 640x360 buffer maybe ends up being slightly sharper because of the increased res, or possibly there could be something in whatever shader applies these blur buffers which ends up resizing them.

Fix for MGS1, MG1&2 and BONUS

Please let your fix work with them too, they all lacking resolution selection, all has same aspect ratio problems. And in case of MGS1 its possible to swap some values in memory to change internal rendering resolution of PS1 emulator (and hopefull other settings like bilinear filtering of textures) to actually make less ugly. I suggest to mimic Duckstation resolution list, indlucing 2x. 4x, 8x, 9x, auto. Not sure which emulator they used but i believe it may also has some values for overscan zoom in crop or smart black bar detection to fix NTSC versions black bars.

Is it possible that games have a blacklist (or, failing that, a whitelist) of supported graphics cards?

Is it possible that games have a blacklist (or, failing that, a whitelist) of supported graphics cards?

My doubt arises because with old cards the game does not even start, it is not that it is slow or has problems, it is that as soon as you start the main exe a white window simply opens for a few seconds and does absolutely nothing. I have noticed that this happens with games that have 64-bit libraries (steam_api64.dll)

Camera sensitivity increase for MGS3?

Not sure if this beyond the scope of this project but It'd be great if a hack for upping sensitivity in MGS3 could be implemented for KB+M. Currently it's abysmal and messing around with DPI & Mouse settings on windows is a pain.

[Feature Request] Pressure Sensitive support

Hello. As you may know, all pressure sensitive related controls have been completely stripped out from this port, which makes sense.
In general, you could play MGS3 on PC (on PCSX2 or RPCS3) with pressure sensitive controls working with DsHidMini (https://github.com/nefarius/DsHidMini). One example of it being implemented directly into one emulator is this: https://github.com/RPCS3/rpcs3/blob/master/rpcs3/Input/ds3_pad_handler.cpp

I don't know enough to guess how hard this would be to reimplement, and it could be out of scope for a project like this, but I wanted to ask anyway.

What do you think?

Feature Request: Adding MG1/MG2 (MSX Game) support

MG1/MG2 in the master collection runs into similar issues as MGS2/MGS3, running at a locked 720p resolution, and having the same aspect ratio bug detailed in #2 (since it shares the same code as MGS3 for the most part)

Presently, MGSResolutionPatch does support increasing MG1/MG2 to native resolution, but does not have the aspect ratio fix.

Would love to see support added for increasing the resolution to native screensize with this mod as well (as rendering at native resolution does increase sharpness a bit) if it's not too much to ask. โ™ฅ

Steam Deck Issues

I've encountered issues setting up the fix for MGS1 on steam deck. Following the instructions to just extract the file into the .exe folder and tweaking basic configuration settings the game remains unchanged. Is this a known issue?

Red bars on prerendered cutscenes at 4k in MGS3

My monitor is 3840x2160 and when I change it to that resolution in the ini I get permanent black bars on each side of the screen and the entire image in squished horizontally.
However if I set the ini to 4096x2160 everything looks pixel perfect in a 16:9 aspect ratio. Except for any prerendered cutscene. These now show bright red bars on the side of the screen that are oldy asymmetrical.

https://i.imgur.com/xlceSbQ.jpeg

Add launcher options to INI?

There's some ways to launch the game EXE directly, but usually results in wrong buttons/game language being used, looks like launcher passes those along as arguments to the game EXE, might be nice if some defaults for them could be setup in the INI instead.

eg. some params procmon shows game launching with:

"METAL GEAR SOLID3.exe" -region us -lan en -selfregion EU -launcherpath launcher.exe -ctrltype KBD

For launching game EXE directly it looks like creating steam_appid.txt file with 2131650 inside is enough, not sure if it's steamstub or the games steamworks stuff that needs that in place, if it's just steamworks side maybe setting SteamAppId environment variable with SetEnvironmentVariableW before game code is ran could help.

Alternately could just create the steam_appid.txt file in game folder when it doesn't exist already, to enable the next game launch to be ran directly, iirc re4_tweaks does something like that to allow direct launching too.

E: looks like in MGS3, the values for these get stored inside:

  • lan: 141D41E80
  • region: 141D41E88
  • selfregion: 141D41E8C
  • ctrltype: 140ADD430

Seems the lan/region are passed to COsContext::InitializeSKUandLang, and ctrltype is passed to NHT_COsContext_SetControllerID, both exported from Engine.dll, maybe could hook those exports and override them from INI values if default value was passed to them (so that exe args would still work) (eh that could have issues if user tried certain selections from launcher while INI options were set - probably better to scan for the args and only override if they weren't specified instead)

Doesn't look like selfregion is actually used in MGS3, could have missed something about that though, code that sets up these args is a little weird.

Possible to swap O/X for confirm/cancel?

I'm so used to the classic controls in Metal Gear games that having X as confirm and O as cancel actually trips me up a lot, is it possible to have an option to swap these just for their menu purposes without affecting their actual ingame function?

Not sure if this is beyond the scope of this project but I figured I'd suggest it!

Crashing in mgs2 in video codec calls

The first time when the player encounters c4 the following video codec call with Otacon crashes the game

additional information
Hardware used: steam deck
Compatibility: proton experimental
Resolution:800p 16:10

MGS2 and MGS3 screen render or resolution problem

going to different angels it makes a line going across the bottom left to the top right and it just looks like its tearing but its pretty hard to see them in mgs2 during the tanker mission I think it might be Aspect Ratio and v sync
20231030074511_1

Texture buffer size increase from 16MiB

Game apparently has a hardcoded texture size limit of 16MiB, mods like https://www.nexusmods.com/metalgearsolidmastercollection/mods/29 have mentioned running into this limit already.

In MGS3 it seems there's a CTextureBuffer class which then gets some buffer part of it malloc'd to 16777216 bytes, possible this is the cause of the texture size limit. At 0x140046BE0 is a GetInstance function that returns the instance of that class, and xrefs to that function then seem to handle mallocing that buffer themselves, eg:

image

Seems there's around ~6 spots in MGS3 with identical code to above (though I think the buffer is only allocated once per session)

I'm not really sure what files need to be changed for it to crash with >16MB textures though, if anyone has a modded file that does cause crashing an upload would be appreciated to test with!

[Request/Adding feature] Texture filtering on MGS2 & 3 at lowest quality, reducing texture filtering and texture quality.

Hello

I'm new to this and I honestly have no idea how much is possible to edit the games via this fix.
But since what have been made so far feels like magic, and is making the collection more and more refined and playable with each release, I'm wondering if it's possible to force the texture filtering to it's highest value, x16 I guess?

I know it can be forced in the graphics' cards settings, but it would be nice if it could be added to the fix for ease of access if possible.

Cheers and keep up the awesome work!

[Feature Request] Mouse support for MGS2

I dont know if this mod has the potential to implement it into the game but it would be great if i dont have to be struggling to aim at FPS mode with keyboard

Option to downscale?

Realized its not working. Settings the custom resolution to something greater than your monitor size and settings the screen to borderless makes the screen only fill for the resolution of the screen while everything else gets out of bound of the resolution eg. only 1/4 of the game is shown if you set the custom resolution to 4K but have a 1080p screen.

Any way to make it possible output 4k in a 1080p screen size?

[Feature Request] Make "Checking Storage Device" faster

Pretty sure the "checking storage device" is just 'emulating' the PS2 memory card scanning, and should have been removed in the PS3/X360 versions. Even with an HDD however, the loading is much faster.

Would it be possible to remove/reduce the timing to the actual data load speed?

Thank you for your amazing work.

MGS2/MGS3 beta branch

Some public beta branches were added today for fixing the speed issues that some people get, might need to check if all hooks still work.

Branches are passworded but passwords are in the posts

MGS2: https://steamcommunity.com/games/2131640/announcements/detail/3750995043925349423
MGS3: https://steamcommunity.com/ogg/2131650/announcements/detail/3736358345139231632

MGS1 also has a beta too: https://steamcommunity.com/ogg/2131630/announcements/detail/3705959047643376958

E: MG1/2 also has a beta branch, wasn't highlighted on steam some reason: https://steamcommunity.com/games/2131680/announcements/detail/3704833147717876893

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.