#Modding the MGS1 emulator
1 messages · Page 15 of 1
MC collection contains the ROMS, so it would be the obvious choice as a base for the mod
yeah, it'd be nice to use it as a frontend for a native port instead of emulating a PSX too
all the assets are there for every version and it'd be quite elegant to replace the emu
The day a decomp releases.... It will become a national holiday
Or at the very least; a bank holiday Monday
Yeah, I'm very excited for it... But it'll take some time. When the decomp finishes, someone's gotta make a port. It'll probably be years before we can really play it.
I think the biggest concern would be if it was charging money, like Yuzu. And really popular at that. Could be wrong though
That's kinda crazy to hear there's already plans beyond the resolution mod though haha.
yeah, theres shitloads to do
plans and ideas are a lot cheaper than completing them lol
Nvm
ffs lmao
Gotta love the “issues”
seem to treat bugs as literal bugs that have crawled inside their computer rather than flaws in software that even occur on my own machine
This quim024 fellow made a Github account JUST to comment on M2Fix issues asking if there's a workaround lmao
Like no dude, if there was a solution then it would be part of the mod
we have Top Men working on it

(ive been taking a break from all this but will be back soon)
Just wondering, did Konami update the controls for default steam input yet? I downloaded the latest M2Fix and the controller workaround (thanks for all your hard work btw, this version is awesome now that widescreen and internal resolutions work!) I noticed yesterday it said I was using the official controller layout and not the one I seemingly downloaded before.
Because in that case the workaround may no longer be needed
But maybe im just not remembering right
Just tried it with a controller I never used before and it seems to be working. Unless this is because I have that layout in the controller_config folder
hey guys, long time since i haven't been here, since konami already patched pretty much all i worked on, have we figured out how to mod roms yet?
there's a mod system in M2Fix for applying custom patches to the game
wholesale replacing the ROM with e.g. a different game, it's known how to do it but I haven't got round to it yet
that would be most useful for restoring the original German release
which is effectively a different game
🥰 Rest is important for your own sanity
It's completely fixed by Konami now, yes they did update the control scheme a couple days after the patch. Try 'Verify Integrity of Files' in Steam if it doesn't work (and of course remove the old workarounds you were using + update M2Fix if you were using that)
Sweet thanks for confirming!
yeah nice to actually play some games from time to time
Hey nuggs you got bug spray? I have a few in my game 
lol customized control would be insane
Konami acknowledges that the upscaling method used with the collection was "inadequate," and the graphics are disappointingly at the same resolution as on the original hardware.
would definitely free up some bandwidth on my side if they took care of that lol
this is not quite clear enough language for me to abandon ship tho
I find it funny they use "upscaling" to describe it though
not wrong, but not appropriate either 😛
yeah it's a bit curious
i'd be surprised if it was the same thing you're doing, i'm imagining something simpler
i should watch the video and see if it shines any more light
in either case i imagine it would take a long time seeing as they have other issues they want to tackle first like controls etc
nah, afaik it's common for some to describe it like that, for whatever reason
Even though the general public understands upscaling as the other thing now
Can just imagine old mate Tanaka-san here in the office like "Nagguzu-san, sugoi ne"
MISUTAA NAGGUZU-SAN, MAKE MANY FIX OUR GEEMU. PUREEZU, HERUPU FOR UPSCEERINGU
sorry that was a bit racist wasn't it
looks like a perfectly personable fellow
haha, i'm watching it now, they open with "We received many harsh criticisms from our fans at release, we are truly sorry" 🤣
please understand
It sounded like the resolution was just misunderstanding what fans wanted
what do fans want
I'm surprised they thought people would be content with that honestly
If they actually did that is
as you can see the top one is markedly different, still just being investigated compared to the rest which are actually being worked on
Maybe they won't suck anymore
its like playing twister
2 and 3 are worse with all the action going on
You'd need to be Psycho Mantis to play all the MGS games on keyboard
Hey man you could have at least been a bit accurate about it
I think it was just a legit mistake. On console it's rendered in 720p but upscaled to 1080p and it actually does look pretty nice, but the PC version has no such scaling to speak of
But we're also five months after launch and that hasn't changed so I dunno what the deal is
Imagine konami is investigating 8k 144fps because of steam forums
They mentioned the issue was for all platform
I think they do intend to change it overall. Multiple resolutions and especially 4k support are probably what they're looking into
But as it is right now the super obvious 720p on PC is probably the biggest issue
Doing it that way is probably just the better way for everyone probably
Real talk 4k support is just a meme. It's not going to go well if yall seen BFClassic Collection.
That's a different game with different visuals and with issues not really related to resolution
I don't really get the comparison
That's in regard to 4k, not resolution
4k is resolution
Classic Collection upscaled all textures to 4k. Consequence is 60GB filesize on a game normally at 5GB
Textures
Well textures don't need to be literally at 4k; the games wouldn't even run on most hardware if that were the case. The issue with BF Classic Collection is a lack of compression as well
Can't just increase the scaling without touching textures either, otherwise what's the point
Many games get HD remasters with nice textures that aren't 60GB
Yeah, because they aren't upscaled to 4k
Uh, nicer pixels and less aliasing
The game not being blurry as shit on a 4k screen
I've played the game in 4k with the HDC textures and it looked fine enough. Just double or quadruple the size of the textures and I don't think anyone would complain. I think you're really overestimating how much space textures take up on other games
Yea you really dont need to touch the textures, they look fine
The big issue is the weird effect scaling with resolution
Curious now
If Konami fixes it, will they also fix the effect scaling issue with it
Or just ignore that and let use bump the resolution regardless LOL
Did you change the internal resolution?
Getting deja Vu, wasn't this conversation already had in another topic? 4K is the rendering resolution, it has no inherent effect on textures. Think of how an emulated PS2 game can output at higher render resolutions but textures are unaffected
there's an added layer of confusion though because nugg's current project does increase the internal resolution which for all intents and purposes might be seen as an increase in the resolution of the textures (my description might be off)
which, on that note, is probably why @north estuary is having troubles - that resolution mod isn't finished. It's 'meant' to still have bugs
I'm sure the rendering resolution will remain 720p for 2 and 3 but they'll change it so that the games don't run in 1280x720 exclusive fullscreen anymore.
There is still some upscaling happening when playing those games as they are but it's the one your PC does automatically when playing in a lower than native resolution lol
It can look bad depending on your setup though. By default it's just bilinear filter but you can disable the smoothing when scaling and it can give a pixelated look to the game which can look pretty bad for games like MGS2 and 3.
In other cases it may not scale to your screen at all, it would just leave it in a box
That makes the most sense, otherwise they're talking remaster territory basically
The problem now is that articles are jumping to the idea they'll actually increase the rendering resolution, so most people would now assume we have upcoming 4K support for all games
To be fair, it doesn't help that Konami is being a bit vague about it.
They stated the upscaling method is "inadequate" but what exactly do they mean by fixing it?
yea it's a known issue
internal res boost is basically a preview feature atm
it works a little bit better on the PAL versions of the game, but still not perfect
tf
Reminded me of this
😐
yah idk about that...
Character development
According to the poster of this video...
https://www.youtube.com/watch?v=DI2d9XWMKic
...these issues still exist in v1.5.
However, they compared it to DuckStation, not original hardware, so I'm wondering how accurate Duck is.
Regardless, it may be worth reporting?
https://us-support.konami.com/hc/en-us/requests/new
i know the audio system in M2 has a bunch of configurability, not sure how much of that they're using
this might be something like the bilinear filter and scanlines where the options were always there, just not quite used in an ideal way
I haven't toyed with any of it though
didn't they flag it as a known issue?
probably worth someone reporting it (politely), they usually tell you if they already know about it
probably also needs someone to make sure what the hardware behaviour is first lol
guess I could stick it in my ps2 slim
basically has a ps1 onboard
yeah fuck it why not
casually have a ps2 slim on my desk
this is really interesting actually
how the game should actually look/sound/play
component cables, OSSC, wireless controller, hacked PS2, the works 
the dithering is definitely missing
looks great on real hw
wow i even have analog input working 
analog! that's so advanced!
your setup doesn't have dithering? was that only the original ps1 hardware?
it does, i meant the MC release doesnt
yeah it doesnt sound like that on my ps2 lol
the dithering looks so much better on real HW than I've seen out of duckstation, though
but it is all going through an analog signal into an ossc so might be more to do with that
so how does the audio compare to MC?
MC is bugged and the video is correct
sounds like the reverb is broken and is just emitting noise
(in MC)
cool thanks for checking
Haha, yeah, I kept seeing your messages and was like "When did I say tha... Oh!"
Reported the audio issue.
huh
weird, i saw a reply from them once that basically said they knew about an issue already
Sure it was the same issue? It could be that "Jennifer" just hit the wrong response template.
I think they've just started using that for all reports tbh
Poor Jennifer's not paid enough for this job
There's a skybox bug? What is it?
Basically ever since the Substance release the intro cutscene for the Plant chapter has no skybox
While Sons of Liberty's sky is actually really impressive and pretty
So many people are so used to the Substance sky now that they don't even know there's anything wrong but seeing them side by side it's actually kinda sad it's not there now
Wow yeah looks like ass by comparison
Yeah, I always assumed it's very foggy night. Once it's been pointed out to me it started to annoy me lol
It ruins the continuity a bit too being so dark, since the sun has fully risen by the time Raiden takes the elevator to the roof of Strut A
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠀⠀⠀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⡀⠂⢁⠠⠁⠈⠄⠀⠂⠁⠀⠀⢀⣤⣤⣶⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣶⣶⣦⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢀⠐⠀⡀⠂⠁⠀⠀⠀⠀⣀⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢀⠀⡀⠂⠀⠀⠀⡀⠄⢠⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⣀⣀⡀⠀⢀⠀⠀⠄⠀⡁⠀⣠⢞⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢿⢿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⢧⣫⠄⠀⠂⠀⠂⡀⠁⢀⣰⣏⣾⢿⣿⣿⣿⣿⡿⠿⣿⣿⣿⣿⣿⠿⠿⣿⣿⡇⣼⣴⠈⡿⠟⠻⠟⠿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⡳⣜⢳⡄⠀⠁⡀⠄⣠⠞⡟⣽⣞⣿⣿⣿⣿⣿⣷⣦⡈⠁⠀⠀⠀⢠⢠⣤⢦⣱⡿⣿⡄⢀⢠⡄⠀⣀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⣳⡹⣞⡼⡀⠀⢠⣼⣯⡞⣾⣳⢯⣿⣿⣿⣿⣿⣿⣿⣿⣦⣗⡥⣴⣒⣿⣿⣿⣿⣷⣿⡆⠸⢮⣈⢀⣠⢠⡰⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⢧⡽⢮⡽⢩⣴⣿⣿⢏⣼⣳⠽⣮⡝⢿⣿⣿⣿⢿⣟⢻⡹⠌⣳⢕⣻⣻⣿⣿⣿⣿⣿⡇⠬⠛⣦⡑⢎⡹⠓⠀⠆⠀⠀⠀⠀⠀⠀⠀⠀
⣷⣹⢫⣴⣿⣿⣿⣇⡾⢧⣏⡟⣶⣹⢣⠙⡿⣜⡳⢎⣳⣴⣿⣿⣤⣌⣁⠛⠻⠿⣿⣿⠃⠀⣠⣾⢷⡈⠄⠁⡀⢫⡀⠀⠀⠀⠀⠀⠀⠀
⣧⣿⣼⣿⣿⣿⣿⣽⣹⢳⡮⡽⣖⢧⣏⢇⣿⣧⣛⡽⣩⡹⣌⢯⠭⣬⠱⡓⣆⠆⡄⢡⣀⠳⢈⠛⠦⠕⠀⠀⠄⢡⢲⠀⠀⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⣿⣿⢲⡭⢷⣹⢳⡝⡾⡜⢫⠴⠃⠀⠈⠉⠙⠛⠻⠻⠿⢿⣿⢮⡽⣎⡵⣎⠷⠫⠒⠁⠊⠀⠰⣁⠂⡍⡆⠀⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⣿⣏⢷⡹⢧⢏⡷⣹⢓⡱⢡⠒⠞⢶⣣⢦⣤⡀⠀⠀⠀⠀⠀⠈⠉⠉⠈⠀⠀⢀⡠⢴⠠⠄⠂⠜⡒⠤⢹⠀⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⣿⢎⡷⡹⡭⢞⡼⣱⢋⡆⠰⣋⠖⡡⢜⡉⠚⠻⠿⢿⣶⣷⣶⡶⠤⡤⢶⣶⢺⡵⠋⠀⠀⠀⠀⠘⠤⠑⢨⡇⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⡟⣮⡱⢏⡼⢣⠞⣥⢋⡖⡱⢌⢎⡱⢊⡜⣩⡑⢆⠆⣌⠡⣄⠲⠰⡑⢢⢈⠁⢀⠠⠀⡐⠀⡀⠀⠌⢂⠄⡟⠀⠀⠀⠀⡀
⣿⣿⣿⣿⣿⡟⢦⣙⢮⡱⣋⠞⡴⢩⠲⡍⢎⠦⣱⡉⢖⣡⠚⣌⠞⡤⢓⠤⣃⠣⠜⡠⢊⠌⡄⢂⠡⢀⠂⢀⠀⠌⡀⠂⠂⠀⠀⠀⠀⡔
⣿⣿⢘⣿⣿⡟⢦⡙⢦⢃⠧⡙⡔⢫⡑⢎⡱⢚⢤⡙⢆⠎⣕⠪⡜⡰⣉⠖⡡⢚⠰⡁⢎⠰⡈⠄⠂⠄⡈⠄⠠⠀⠀⠀⢀⡀⠀⠀⢨⣗
⣿⡟⠸⣿⣿⣿⡀⠜⣢⠋⠖⡱⢌⠣⡘⢢⠱⣉⠦⡙⣌⢚⠤⡓⢬⠱⢌⡒⠡⢎⠰⡁⢎⠰⠁⡌⠐⠠⠐⠈⠀⠀⠀⠀⠈⠙⠷⣶⣼⣯
⣿⣇⡘⣿⣿⣿⣷⡈⠄⡉⠆⠱⢈⠂⡑⢂⠳⢌⠲⠱⡌⢎⠲⣉⠦⣉⠦⡘⢡⠊⡔⢡⠊⠔⡡⢀⠁⠂⠄⠁⠀⠀⠀⠠⢀⣤⡀⠈⣿⣿
⣿⢁⠂⢻⣿⣿⣿⣷⡄⠐⠈⠐⠀⠂⠄⠡⢊⠌⡱⢃⡜⠬⡑⠢⢆⡡⢆⡑⠢⡑⢨⠐⠌⣂⠁⠂⠌⠀⠀⠀⠀⠀⠀⣐⣾⣿⣿⣶⣿⣿
⠛⢊⠀⠘⣿⣿⣿⣻⣞⠥⡄⠀⠀⠀⠀⠀⠀⠘⠠⠡⢈⠆⠡⠃⢆⠐⡂⠌⢡⠐⠡⠈⠐⠀⠈⠀⠀⠀⠀⠀⠀⣠⢞⣼⣿⣿⣿⣿⣿⣿
⠁⠀⠀⠀⢹⣿⣳⣟⢾⡹⣜⡡⠂⡔⠀⠀⠀⠀⠀⠁⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⢤⡞⢥⣾⣿⣿⣿⣿⣿⣿⣿
⠀⠀⠐⡀⠨⢳⣟⣮⢏⡷⢎⡵⢩⠰⣁⠂⠄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⢤⡲⢯⡹⢮⢉⣾⣿⣿⣿⢟⣿⣿⣿⣿
⠀⠀⢀⠀⢀⢡⡻⣜⢯⡞⣱⢎⡇⠳⡄⢣⠐⡀⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⢄⢢⠳⣜⡲⣝⡣⣟⢡⣿⣿⣿⢟⣵⣿⣿⣿⣿⣿
⠀⠀⠀⢂⠀⠂⣗⢯⢞⡵⣋⠶⣉⠗⣌⢣⡘⢄⠂⠄⠀⡀⠀⠀⡀⠀⢄⡐⢠⢃⡜⢬⢣⡛⡴⢳⡌⠗⢡⣿⡿⢛⣵⣿⣿⣿⣿⣿⣿⣿
yeah
I am stuck
alright im back
tl;dr i had something else i had to do and i decided i couldnt do any MGS stuff until i finished it....... and then i procrastinated that thing for over a month anyway
(i am also having an ADHD assessment rn)
mood
How do I get one of these? I take it that's not something I go to a general physician with.
I'm in the UK and I think the options are doing it via the NHS and sitting through an enormous waiting list, or go private
I've gone private for mine
Anyone knows a way to stop steam closing MGS1 game when tabbing out?
Windowed mode
I got a big ass monitor hmm 🤔 some part of a screen cut off haha damn it when going to window mode
ive never had that happen once
are we sure its not crashing?
would be worth having a postmortem debugger set up to see if something explodes
i always run in borderless window though
Always good to have one laying around period, if you have the space
Found a bug in a MOD before caused by the STEAM overlay because of recent changes since the mod is old, just had to disable the Steam part of the mod
MGS2 and 3 got bumped to 1.5.1 just now. Small patch. Nothing for MGS1.
Yeah it was for controller rumble
MGS1 didn’t have that issue so Konami decided to flip it the bird
we got a 1.5.00000000000000000000000000000000000000000000000000001 though
(when they fixed steam input)
Beggars can’t be choosers
Sorry I didn't see this, if that toward to me yea it is weird to see full screen just close game itself no matter if I alt tab to look up stuff but mgs3 and 2 is fine
ill see if i can reproduce it if i switch to exclusive fullscreen
https://www.youtube.com/@LLRTV/videos hmmm looks like this channel hasn't release the so-called 3rd Person View Mod yet, they really gonna milk the video contents huh? Also I saw this comment lol
it'd have been quicker for literally anybody in this chat to do it all by themselves
hes milked that shit more than ive milked my entire project
hopefully got enough time to ramp-up again this weekend
its been a lil bit so need to get some momentum again
hard to put the odd spare hour into it when things arent so fresh it needs to be more time rly
Sound good let me knwo if you end up making a seprate files I'll try it out
yeah it's better when you can give it enough time to get into the flow huh
Just tried using mod on ultrawide with fullscreen setting, overall looks good, but most of the cutscenes are broken, I dunno maybe this is just my problem
hahahahaha wow
thanks for sharing that, i didnt see anyone post a screenshot ultrawide
i tried to make sure the widescreen hack would work at any aspect ratio, glad it kinda does
the cutscene thing is a known issue, happens even at 16:9
As updates come out, I will check how it will work and inform you
But in my case it even worked like Widescreen Hack if I turn Screen setting to fullscreen
3440x1440 btw
Bro has been posting videos for views only. I asked him about a month ago
Yea I get why MGS content creators do this stuff
All MGS content creation is just milking views more often
And yes, most video essays, especiall if theyre a 5 hour analysis, are milking it hardcore
I reckon we should start a lil' coffee fund donation for Nuggs
:pog:
thx guys ❤️
I said it before. This is an old gameshark code.
A portion of the original Metal Gear Solid for the Sony Playstation, played with a Subsistence-style over-the-shoulder camera angle.
Update (2014-06-30): If you want to do this yourself, you'll need to use a Gameshark code, which works for MGS v1: 800A DBB0 0020. This cheat is prepackaged in ePSXe. Thanks to the cheerily-named dieingworthlessly...
Video from 15 years ago.
The game controls as if it's top-down still, and all motion is relative to north. Pressing down invariably snaps you south.
Are you at the moment working another mod project?
no
Mans committed
I believe you, but nobody posting the code 😦
I wanna try it out
800A DBB0 0020
Supposedly only works with NTSC.
Is a gameshark format code.
Can't help you more than that.
Metal Gear Solid (Version 1.0) - Cheats für Gamebuster-Codes für PlayStation (US-Versionen)
It's called "Funny Camera"
no wonder I could never find it. If this is the same as the guy making those bait videos, im literally gonna paste the code in each and every one of his vids
He's also messing with the FOV.
You can find that value by experimenting with the SCOPE's zoom.
somebody called him out and he was like “it takes time to make these videos just wait” but he posted more videos and its been about a month since he said that
he posted MGS2 and RE4R
dude is milking the fuck out ofnit
Ignore him.
about a month
no it's been 5 months lmao
ironic

How does that even work in master collection lol?
Cheat engine. Or, it's just not the master collection.
we need to get gameshark codes working in MC
there is some unused cheat system already in MC but its not gameshark
Hmm 🤔
this, I like this
seem only MGS1 carsh me alot
I haven't even made it past at beginning for some reason
even in window mode
Are you using the prototype resolution-increase mod from nuggs? If so that's not finished yet
Nah, I don't so I found out there is a ini files in there to mess with borderless / window mode I turn both of them on and no issue now
oh, this is m2engage https://store.steampowered.com/app/1018020/Contra_Anniversary_Collection/
The Contra Anniversary Collection brings this classic Run and Gun franchise back to modern platforms and a new generation of players.
$3.99
786
32-bit too
can we port to it? 🙂
It's time
huh, it uses d3d9 rather than d3d11
all my m2engage signatures from MGS1 are broken in Contra, only the MSVC runtime signatures work so it essentially starts up a plugin that does nothing
i doubt there's much actual code change, i just need better signatures
lmao. god damn
so again squirrel here is compiled with slightly different options
somewhere in between MGS1 and bonus content
i'll prob get it going, shouldn't take long i've already done it twice
its very easy to tell coz the struct offsets differ and integer sizes are doubled
hmm this makes things somewhat interesting
as I can't change the integer sizes statically because MGS1 needs the smaller ones
maybe I can do something creative with operator overloading to minimise squirrel code change
this all works so far because bonus content is 64bit so they can be differentiated statically, but i don't fancy distributing two separate 32bit builds
bruh windows can't even do some kinda "fat ELF" thing, but hey I think I got sqrat working
yeah its just a little bit awkward to support and ideally I want to do it without confusing people even more with 3 separate downloads
2 is bad enough
but there isn't any way around having at least 2 coz windows forbids any concept of mixing the x86 modes
by "fat ELF" i'm saying it would be nice if 32bit and 64bit versions could coexist within the same DLL file and the correct one is loaded according to the EXE
how does windows always narrowly miss greatness
maybe I could have like
M2Fix.asi + M2Fix64.asi + M2Lib{A, B, C}.dll
where the latter contains the squirrel 3rd party stuff compiled differently for each flavour, matching the supported games
but it's still confusing that we use d3d11.dll both 32-bit and 64-bit for MGS1 and BC
for the ASI loader
I wonder if there's another import MC uses that we could differentiate along
that would be a path to just one release zip that could be extracted to any game
but dunno if windows craps itself if it tries to import 32bit when 64bit and vice versa, or whether the wrong DLL gets ignored
would depend on it getting ignored and going on to find the system DLL
you know what I reckon there might be more m2engage on steam published by konami
yeah, castlevania is too
both anniversary and advance
all 3 on sale rn
im going to hope that these 3 are most similar
MC imports dinput8.dll, wonder if I can have e.g. 64-bit d3d11.dll and 32-bit dinput8.dll
oh wow, yeah that works
both games seem happy and loading the mod
interesting food for thought, that
even this works, no errors, loads all the correct stuff
so MGS1 + Bonus could be done with a single zip already without recompiling anything, lol, lmao
too good to throw that away for castlevania/contra so I'll have to think some more about the integer sizes over there
lol, can't even depend on the EXE name anymore
contra, and both castlevanias are just "game.exe"
so assuming if I can resolve the squirrel integer sizes issue the release would have to contain: d3d9.dll, d3d11.dll, dinput8.dll, MGSM2Fix32.asi and MGSM2Fix64.asi... but it should be possible to extract all of that to any game and have it work
man
that integer size thing is such a headfuck of a problem to solve
it can obviously be done but whats the easiest / neatest strat
Haha, I wish I could help
does sound like a bit of a pain considering MC has the bonus content which as you mentioned is 'separate' and sounds like it requires an additional fix
but yeah also as you said, easy enough to bundle them up with a readme on how to extract appropriately
tbf most people probably only care about having the main game 'fixed', unless i'm misunderstanding
can templates be used for this
I think templates are the right tool - moved squirrel itself over to templates where I can specify the size of integers to use
<never used templates in anger before>
and this is definitely "in anger" because it spans the whole code base
i have returned
i think I mostly managed to convert the project earlier but there's a bunch of unresolved linkage I need to sort out, I guess I need to explicitly instantiate some templated stuff
i have faith now that it'll probably work out, just need to persevere
C++ creates so much code churn, fuckin hell
change one thing without it having side effects on the rest of the source challenge
1>MGSM2Fix.vcxproj -> F:\MGSM2Fix\Release\MGSM2Fix.asi
1>Done building project "MGSM2Fix.vcxproj".
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
waaaw
carnage
the idea is all the squirrel stuff is templated now, so I can differentiate the class/struct layouts at compile time and send each game to the correct specialisation
"all" I have to do now is stare at both games and work out where the size differences are and reflect that in the code
but that requires less changes to the source than actually transforming all of squirrel into templates lol
never really worked quite this heavily with templates before... kind of stunned the proof of concept seems to work
ive basically given myself the tools to support both at the same time, just need to actually... support both at the same time now
anyway, kind of just doing this to warm up again and refresh memory
it might seem low priority and silly but i have to get on the magic carpet somewhere lol
yeah warmup time is surprisingly necessary i've found with coding
i mean mine is chump shit by comparison, like basic webdev stuff, javascript etc
but similar concepts
yeah even taking notes won't really help me recover from breaks, working memory is way too abstract for that
i'd come back to find even the notes are incomprehensible so i rarely bother lol
sort of just have to "do anything" and let the neurons go brr
recovering the context to things is hard
yeah true
Does the resolution increase with M2 fix work on OG MGS1 or only on Integral?
Even in it's current state i mean, not necessarily the end product
works on any version
to be precise it's implemented for the psx system in m2engage
so if we loaded other roms for w/e reason it would work there too, and any other m2engage psx title if i ported to it
the differences in contra/castlevania are actually seemingly just padding for a certain squirrel class, not integer size (actually struct, everything is struct in squirrel even though it has member functions)
I still needed to do all the templating work to differentially implement it, but should be considerably less risky now
makes slightly more sense that this happened between game releases now
the thing that still boggles my mind is the extra SQObject reference stored in the SQVM, but only on 32-bit builds of m2engage, the 64-bit builds don't have it
it's not in the original squirrel source

I don't even think it's used - I think I tried assigning it / observing it in memory and it was of no consequence to anything
but that is not padding, as it has a non-zero initialiser for a null object (0x100001)
I mean it sounds like there are NTSC vs PAL issues, but yeah in principle it "tries to work" on both, so any version of the game
I've got a couple of things I want to try and do before I return to the GFX stuff: basically get contra/castlevania up and running and then evaluate Sqrat and see if it's useful for cleaning up my code
Sqrat I already got building (before I fucked around templating squirrel, but updating Sqrat to handle the templates should just be a copy paste job)
C++ is so shit man, why does one change require updating 10000 lines of code
last weekend I was literally just copy pasting <things in these brackets>
some of the situations it really boggles the mind as to why there isn't any inference for it
Sounds like one of those situations where there's a bunch of mundane labor that has to be powered through before the actual rewarding work can begin
yeah i describe it as 'manual labour'
don't know if i invented that description for some coding work or stole it from someone else 😛
the fucking mod has the sq_open function eliminated
hahahahah
these are looking correct now
I'll probably change the template to use an enum rather than a typename but
yeah, the sizes match now
so in theory... it just works
yeees, progress
Any luck in fixing the stretched HUD?
not even trying lol
currently not on my radar
other emus don't give you that and for good reason, its all SW rendered to the screen
bitmaps
would need a romhack for every single game version
you can completely destroy the GPU and still get the HUD elements 😛
oh shit
signs of life
what the absolute fuck is going on with SQObject lmao
very specifically just this one struct is causing all the issues
its doing stuff tho
its so close lol
plays the intro sequence but crashes once its supposed to display the menu
oh
oh!
I got it!
wait
did I
lmao
its at the menu but I think its doing nothing now
bbl
this is actually just asserting in squirrel lol
object of unexpected type
it's printf
hahahahaha
now it works
ok well, good
how do I fix printf
game is trying to print something that breaks my mod

this is the fmt: "key=0x%08x: start_pad_bits=0x%08x, connected=0x%08x, inputNum = %d -> start_pad_id = %d"
looking like some heap bullshit
M2Fix has to use the heap allocators in the game, not its own version compiled into the mod as every DLL has its own copy of the standard library
basically because Squirrel has to reallocate buffers that were already allocated by the game
what seems to work for MGS1 isn't working for Contra for certain sizes of reallocation (seems to be small ones)
perhaps not calling the right function after all
lmao
contra does lots of printf("")
thx
cool, got it working
need to port the borderless patch and such - doubt I'll get much hassle from that
yay, borderless and external res stuff working
lets give this a quick test on castlevania
going thru to convert the template from typename to an enum and wow... this almost looks sane now
I think I have Sqrat working with the templates... now how do you use Sqrat xD
hopefully thats all the boring shit done
should be much easier in future to port to other games with their own quirks... can just reuse the mass of stuff I added for contra/castlevania from now on
xD
frankly astonished this all works
My god
got that all into a git commit somehow
going to try and work in some custom post-build stuff to the project (would be nice if it could build the x86 and x64 artifacts and then zip them up for me)
cool, new release packaging:
a single zip being able to support all the games in one is cute tbh
yeah that saves you a bit of hassle down the line i guess, for any future updates
its a nicer user experience too tbh
if its just one download and extracting the whole lot to any game just works
What are you working on?
they ported mgsm2fix's features to the Contra collection since it uses the same backend and condensed everything into a single download
Ahh
yeah, any of these will be supported soon:
The Contra Anniversary Collection brings this classic Run and Gun franchise back to modern platforms and a new generation of players.
$19.99
797
Konami's Castlevania Anniversary Collection traces the origins of the historic vampire franchise. Included is a unique eBook with details provided by developers, artists and others inspired by the Castlevania legacy which sheds a fresh light into the world of Castlevania.
$19.99
1210
Count Dracula is once more back from the dead...Join the fight against Evil in the Castlevania Advance Collection, a compilation of timeless action-exploration masterpieces!In addition to the three legendary Castlevania games that were first released in the early 2000s, this collection also includes Castlevania: Dracula X and some never-before-s...
$19.99
1364
they go on sale for quite cheap
LOL
just found even more m2engage games
I doubt I'll rush over to them, probably just these 3 in the immediate future, want to make some MGS progress
if you're interested, I just found these which look like m2engage from the depots: https://store.steampowered.com/app/1640160/GDarius_HD/ https://store.steampowered.com/app/1638330/Darius_Cozmic_Collection_Arcade/ https://store.steampowered.com/app/2478020/Rayz_Arcade_Chronology/
Taito's Darius series began with the titular arcade game, Darius, in 1986 and comprises numerous side-scrolling shooting games released in arcades, many of which were later ported to game consoles.G-Darius is the 4th arcade game in the Darius series of horizontally-scrolling shooting games, which sees the Silver Hawks battling against huge, spac...
$29.99
107
Darius is one of the pioneers of arcade side-scrolling shoot 'em up games, first released in 1986 in a custom, 3 screen cabinet featuring in-seat bass speakers to deliver the impact of the game direct to the player! The aquatically themed, giant robotic fish bosses and Zuntata-composed soundscapes captured the hearts and minds of arcade goes eve...
$44.99
107
Ray'z Arcade Chronology, collects the entire acclaimed 'Ray' series of 90s arcade-classic, vertically scrolling shooting games, along with enhanced HD versions of the two 3D titles, into a single, definitive collection!Title lineupRayForceRayStormRayStorm neo-HDRayCrisisRayCrisis HDThe series is known for its lock-on laser, an elegant combinatio...
$49.99
there's also this which has some bastardised m2engage-style filesystem, but I highly doubt its fully m2engage: https://store.steampowered.com/app/2291020/ANONYMOUSCODE/
This is the latest work by STEINS;GATE creator Chiyomaru Shikura, in collaboration with returning staff from the Science Adventure Series.2037. Nakano, Tokyo. Pollon Takaoka and his best friend Cross Yumikawa make a living as a pro hackers wherever they can; wherever hasn't been affected by the "Sad Morning" disaster that occurred February 6th, ...
$59.99
250
so we've got scope for more stuff in future but yeah just contra/castlevania until I make some MGS progress
(I need to actually buy these others first, and im gonna wait for a sale lel)
anyone know what consoles these original games are from? some 3D-looking stuff there, wonder if we're getting more PSX or summit
all I did to find these is google: "steamdb windata alldata"

tbh the best thing would be for the steamdb guys to recognise m2engage as an engine/middleware in their database, they're identifying unity/unreal/etc now
and its not hard to detect if you have the depot keys (aka a purchase)
ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh what
Colonel, we have a small problem
wut
ok i know whats going on now
i think
glad i did this otherwise i would've probably gone on a wild goose chase
the bugged scenes seem to be snatching defeat from the jaws of victory, incredible
kind of an amazing clue
This is all very intriguing
sorry for being a bit terse, I was still trying to draw my own interim conclusions from what I was seeing
but essentially I figured out how to get renderdoc to work with MGS1
and I think what we can see from those two images is
first of all, the issue that isn't particularly interesting: there's not enough VRAM in the display viewport
but that doesn't explain why shit is fucked up
because there's always not enough VRAM, even in gameplay where it works fine
and that brings us nicely to the 2nd image, which is from a frame that is normally fucked up and you can only see a tiny part of the water
it seems quite clear that under some circumstances, the d3d11 driver isn't using any information from the display viewport in VRAM, and in other cases it is
because shortly after it renders the sub, it bulldozes the entire image with VRAM content
but that stage doesn't occur in gameplay
so there's probably two bits to this: work out what controls this switch in rendering behaviour (mostly academic but worth knowing), and then try to extend the VRAM viewport dimensions (and that will probably also require increasing VRAM size)
it seems like that might work, because it's already scaled the image properly - that's why we only see a tiny bit of the upper left corner
it just cuts off because the viewport has been exhausted
but it's definitely worth knowing why it ignores VRAM in gameplay and other cutscenes
that would present a "quick fix" which is to just make it ignore VRAM always (which would get the upres quickly working but would probably look not-as-intended)
there must be a reason for it behaving in this way, a rationale
and finding the source of that might explain it
I'm assuming it's because of deficiencies in the d3d11 backend that leads to a completely inaccurate image where it doesn't reflect PSX effects
because the ocean around that sub is looking hella blended and smooth
It's actually really interesting with that explanation. Very curious what could be the source of that
Looks like the water/wobble effect is broken, maybe it has something to do with the framebuffer. Most of the blur effects in mgs1 are framebuffer based. The wobble effect in that scene also distorts the colorbanding of the background, making it seem much less blended and smooth. I'm sure the image above would look correct if the effect was present. Also, the aspect ratio sort of zooms out, making the colorbanding of the background gradiant less noticable.
I'm also seeing some geometry errors in the submarine model, which is something you typically see if PGXP is enabled. Don't know if you are experimenting with that or not, but it looks a bit like it. Probably a z-buffer thing. So I would say the image looks correct, except for the missing blur/wobble effect, the geometry errors and the zoomed out aspect ratio 🙂 I don't know much about it, but the framebuffer might be broken due to not having access to VRAM, or because the image resolution exceeds the arbitrary VRAM limit. Don't know how the emulation works, but I'm pretty sure the framebuffer needs VRAM to function properly, so maybe the d3d11 backend breaks rendering because it breaks the framebuffer.
yes, that sounds like GFX programmer speak
clueless
framebuffer is indeed what I meant lol
games man. working on them is so multi-disciplinary haha
heh, yeah it's complex. You're doing a great job dude, it's pretty interesting to follow
The stealth camo effect is entirely framebuffer dependent iirc if you need another thing to test that takes advantage of it
wow, that's valuable info
I'm curious, how is it that Duckstation can do widescreen for MGS with the hud intact/non-stretched, but with M2Fix it's a different story?
or am I totally wrong about that
Because Duckstation is an entire platform developed by an emulation genius
With modularity to incorporate tons of great PS1 emulation techniques learned the past two decades
The creator went on to revamp PCSX2 and greatly increase the performance and accuracy of that one too
yeah im not an "emulation genius" im a feeble semiconductor engineer
basically thats it
I'm pretty sure the hud is stretched in duckstation. Unless the author made some genious fix.
oh wow, i didn't realize this!
its not impossible to fix it lol
there is just no universal silver bullet like there is for geometry
doing it generically in another emu such that it works for every game would be difficult
in M2 we have an easier time because it only really needs to support MGS
but it still requires more effort than geometry
at the moment im more worried about actual bugs
aye it's that time of year, gonna be seeing the wasps n stuff soon....
with geometry you've got a dedicated hardware block for computing all the 3D stuff (the GTE) so can simply put your tweaks in over there without messing with the game at all, the game temporarily sees the "wrong answers" but by the time it's all scaled up to the emulated aspect ratio it looks correct
but the HUD is just bitmapped and there's no obvious way to filter out exactly the things you're interested in
Yeah that makes sense in terms of priorities for sure
I actually haven't used duck station so wasn't even sure if that was the case haha
other people are free to work on M2Fix btw lmao
im not proprietorial over it, feel free to raise PRs
I'd be glad to have less on my shoulders
(you will be credited well)
if someone wants the HUD scaled properly pls do it
I wish I had a clue how, sadly I'm just a chump on the sidelines feeding off the results
Maybe someone else here has the skills though
that'd be rad if you had some help
this is in Windows headers lol
Wait, that's actually real. I thought you were taking the piss
Has anyone worked on getting all English text from the NA release into Integral?
Like item descriptions and menus and such?
That would be pretty sweet. I'm guessing it's trickier than it seems at first
very interesting thought, i don't know if it's doable. Heck I even thought if we can make a Japanese voice mod for Integral
since both JP and EN dub voice clips length is the same it seems
if something like the CN patch is possible it should be doable
im really surprised it hasnt been done already because so many people want it and its so obvious an idea
actually yeah that's a really good point
they'd be the best people to ask for advice, seems like they really knew their way around modding the game so asking them to write up their workflow and what tools they used might be helpful
looking at the data from their patch I was just very impressed at their knowledge of the game
I wouldn't know where to start recreating that, but I'm not a ROM hacker
what the FUCK
this is the syntax
template syntax is just total lottery
I was trying to do "root.GetValue<int>" and confused as fuck as to why it wasn't allowed
IntelliSense gives up with this template stuff beyond a certain point
understandable
yeah the sqrat stuff simplifies so much code lol
bit of working out how to use it but it can definitely be used and super beneficial
Sqrat::Object _emu_task = root.GetSlot(_SC("g_emu_task"));
Seems like the correct thing to do... then you can do _emu_task.template Cast<typename *>(); but no idea what the thing I'm supposed to cast to should look like, yet
IntelliSense has just unalived itself with Sqrat though!
won't even tell me what functions I can call, I have to guess (or search thru the headers by eye)
it'd be nice if I could just declare a class, cast the object to it, and not provide the member function implementations because they're implemented over Squirrel (for which Sqrat should be generating the required call sequence)
how to express that is a mystery (like most advanced C++)
I actually started working on an eng integral patch a few months ago.
Use makepsxiso to extract all the data from the CDs
https://github.com/iseeeva/metal
https://github.com/Joy-Division/tools-mgs
These to edit stuff
Use makepsxiso to rebuild the iso file
Then use ppf studio to generate the delta patch
great stuff
probably worth putting it on github or summit to encourage help
i'm hoping if I find some way of using sqrat it will encourage m2fix contributions because a lot of what makes the code confusing will disappear
so while its a temporary headfuck for me its worth it if it works out
The greater good
https://youtu.be/ywWwUuWRgsM
I wonder if something like this could be done with PS1 games
Introducing "static recompilation," a process that turns a ROM into a native port before you can say "Kooloo Limpah"
The MM Recomp: https://github.com/Mr-Wiseguy/Zelda64Recomp
Wiseguy's official trailer: https://www.youtube.com/watch?v=GIp7C2ro2T8
Dario's social feed: https://twitter.com/dariosamo
Many thanks to Wiseguy and Dario for providin...
That pretty insane. Almost too good to be true
if there was anything that desperately needed a decomp, over any other game
other games want decomps
the dinosaur game NEEDED a decomp
instead all we got was a discord server full of children
like 1% as many personality disorders here than in that place
(a bit of self deprecation: I am part of that 1%
)
some amount of people with PDs can be tolerated... when everyone has one it descends into chimps throwing their own shit real fast
Damn that sucks to hear, I was really hoping more could have been done with that project
same
the place was so toxic it became impossible to remain enthused about it lol, im not the only one who ended up feeling that way either
many such cases

once it's lost the zeitgeist due to something like that, yeeeah
its possible to stay enthused about projects for ages, it's really just 'people' who have the ability to take that from you
A lot of people became disillusioned and worked just halted honestly. Oh well, maybe one day with a new group of people something can happen.
I’m glad you found something else that interested you to work on though
yeah its weird, its quite low profile considering some of the stuff I worked on in the past but it really captured my interest lol
I wouldn't have gotten this far without the squirrel stuff being used in MGS, thats what really got my interest
its a great foot-hold
Mi ingles se fue de savatico
question about the M2fix resolution thing - i may have set it up wrong, or more likely I'm completely misunderstanding what it should result in. But the display is just a 4:3 box in the middle of the screen - big thick black borders on the side, and thin borders on top/bottom.
I'm guessing this is right? or did I set it up wrong. For some reason I thought it was like actually fullscreen and also widescreen
Do you have the option called "widescreen" enabled in the ini file?
i think i've tried with it set to true and set to the display width (some youtube video guide i saw today said to do that - i thought it was weird but gave it a shot)
Mod/Fix by nuggslet
Mod Link: https://github.com/nuggslet/MGSM2Fix/releases
#MGSVol1
Disclosure: I received a free review copy of this product from https://www.keymailer.co
In other words, these are my settings:
but I'm guessing now the youtube might be wrong and the 'widescreen' should be 'true' and not a number
Right. Also, having height (in both spots) and width all set to 0 (like it is by default) will use your computers native resolution.
Sorry, a little confused by what precisely you mean. Are these settings right?
Not the ones in the most recent picture.
Btw, do you have a standard 16:9 monitor?
Yeah, 16:9, hence 2560 width and 1440 height
uhh... I just realized it was at 2160 for some reason, d'oh
aside from that, are there any other changes? is "widescreen" supposed to be 'true' or a number?
surprised i missed that number
Like this but yeah
The resolution numbers can also be replaced with 0 which will use your desktop's native resolution.
I'm not sure why the video tutorial has you change the numbers manually considering they're set to 0 by default I believe.
Try loading a save? I'm not very familiar with the actual widescreen modification in the game but I think much of the ui is currently unsupported in regards to displaying in widescreen.
The widescreen aspect of the m2 fix is pretty new and is being improved still.
yeah true
i mean i can set it to 'widescreen' within the game menu itself, but that's just stretched
This is a silly question, but sometimes people have to edit config files like these out of the install folder (because of folder permissions) and then they drag them back in.
You didn't have to do this did you?
uhh, dont think i've ever done that before. If anything, just right click to set admin permission.
Would you mind reopening the config file and sending one more screenshot?
I'm case something didn't save?
I'm gonna have to hand this one off unfortunately, sorry.
Best of luck to you, but it's getting late and I'm not sure what else it could really be in all honestly.
Appreciate the help!
I'm guessing, that since i tried several settings with the same result, that this is actually how it's meant to be currently.
(it's the same in-game aswell FWIW)
it is expected that you have to use the ingame settings too, it interacts with them
this is how it will always be
so basically you enable the resolution boost in the ini (and widescreen hack if you want)
then you set the ingame screen settings however you like (4:3 or widescreen or whatever)
the widescreen hack only turns on for actual widescreen screen settings, so it does nothing when the ingame setting is 4:3
in some cases there will be borders at the left and right sides (naturally when not 16:9 or fullscreen on non-16:9 monitors)
for NTSC games there is a small border at the top and bottom - but it's like that even without M2Fix
I'll look at removing that since some people don't like it, but its very deliberately there in the official release
Ah yeah I did remember the vertical borders might just be a "thing"
The widescreen settings in game though, even when enabled, just stretch the whole image (eg not just the HUD but also the in game display too).
Whereas I was under the impression it should only be stretching the hud, not the entire display
I'm not sure why you're confused about this
you need the widescreen hack enabled in the .ini for it to not stretch geometry
any bitmaps currently get stretched regardless
the only reason to have widescreen off in the .ini is if you want geometry to be stretched in 16:9+ mode
it definitely works lol
on left is with .ini widescreen = false, on right is .ini widescreen = true
those are steam screenshots with no cropping, its using the fullscreen ingame setting
obv these are on a PAL version as there is absolutely no border on a 16:9 monitor here
I would expect that right screenshot to be achievable for you on a PAL version with .ini both Enabled = true and Widescreen = true under Internal Resolution and the ingame screen mode set to 16:9 if on a 16:9 monitor otherwise fullscreen
if the .ini could be clearer in how it describes things its open to anyone to propose changes on github: https://github.com/nuggslet/MGSM2Fix/blob/master/MGSM2Fix.ini
Once I get it working I'd be happy to do a more verbose description of the ini
though at the moment, even with .ini widescreen = true and in-game set to 'fullscreen', i get the left image. If that makes sense
IE - as far as I can tell, I'm doing what I should be, but it still stretches the display
You know what? It is working after all
the problem was that it doesn't take effect until you return to the game
i.e. - changing it from 'pixel perfect' to 'fullscreen' in-game will stretch the display immediately / make the change immediately, BUT the M2Fix doesn't 'kick in' until you exit the menu and go back to the live game
so initially it still appears stretched, and the user thinks 'man this is still stretched, bummer'. It's only upon exiting the menu and returning to the game that it resolves itself and proporitions itself appropriately
Alright well glad that's resolved at least 😅
https://www.youtube.com/watch?v=nL2gwPBSSPk bruh they even didn't publish the mod guide for 1, straight to 2 instead, and it's for the old pc version lol
Welcome to the ultimate Metal Gear Solid 2 experience! Dive into the iconic Plant Chapter like never before with this immersive 3rd Person Mod, bringing new life to an already legendary game. Witness the brilliance of Hideo Kojima's vision in stunning 4K resolution and silky-smooth 60 frames per second.
In this full playthrough, we embark on a ...
jesus
sry I am temporarily distracted by a thing at work that has got into my head to such an extent that I'm volunteering overtime to finish it haha
it was something nobody asked for but I latched onto the challenge
shouldn't take too long as I have it done but there are quite frustrating build issues on some hosts to fix 
hopefully I can get it sorted today otherwise what are they paying me for kek
Well I mean... if it's volunteer overtime... they uhhh.... aren't 😅
oh my god i think I did it
some mega hacks involved
real career-defining hacks here
Nuggs I have a potential project for you I think might be within your domain. It’s outside of MGS. Will DM you.
sounds interesting and probably quite doable
i don't want to pick something else up at the moment though
so for these framebuffer effects
is the strategy normally that the internal framebuffer size isn't actually changed
like the PSX doesn't gain more VRAM
like that's looking pretty fixed innit
so it's potentially more that parts of the graphics stack are picking up the resolution adjustment where I don't want them to
rather than having to change more things I need to change fewer things
I mean I have to remember that this is an unusual emulator lol
it makes sense that this doesn't change for normal emus
as they aren't running x86 versions of playstation libraries
all the bits involved here are allowed to cheat and conspire
it may be possible in this case to take a different approach
since they've basically done the hard work of replacing the PSX libraries in the game code
whereas duckstation has to work for everything
but just getting it to not freak out in whichever way is easiest would be best to at least prove understanding lol
whatever is painting those pixels in the framebuffer is getting fed the "upscaled" values where, in the path of least resistance, I think I don't want that
depending on how it handles the framebuffer effects that might mean it basically just looks exactly like a non-upscaled image for those broken cutscenes but it'd be a start, the ingame stuff should be unaffected and still upscaled
im glad i have like a million hooks into the GPU now lol, getting going again isnt as much work
I'm not sure I can even solve it like this
I think I have to fuck with the actual GPU shaders
everything I try on this end is just robbing Peter to pay Paul
I see that Duckstation shaders have to compensate for the resolution scale
M2's are obviously not doing that
would explain why I'm not having much luck lol
hmm, how can I prove I need to fuck with shaders
I really want to get this issue sorted soon coz its become an anchor grinding the overall project to a halt lol
what is going on with the shaders here anyway
there's D3D shader bitcode and also GLSL shader sources embedded in the EXE
is the GLSL just a leftover and the D3D stuff the compiled version that is actually used?
ill stick the GLSL stuff up
so there's these two - only thing I've done is add newlines and indentation
are these even doing anything
one of them seems used by the UI and the other by the game
right nvm
one is just a vertex shader the other a fragment shader
lol
wish I knew even 101 level graphics programming
its upsetting how you can spend most of your life mastering one aspect of this field and then have that be utterly untransferable to another lol
I guess gfx programming is a bit more complex overall though (according to a video about it that was popular last week which I didn't actually watch)
its a whole different paradigm for sure
this would be a lot easier if i'd ever made a game lol
From what I gather, it sounds as if you're having to reach out and find some kind of 3rd party solution or something similar in order to get it working? Or are you just kind of seeing how they did it/how it's done 'normally'?
yeah just seeing how it's done normally
so it's very clear to me that this is a PSX VRAM copy sent to my host GPU
identical
this is all one single "texture"
you don't end up copying an identical arrangement like that by accident
wow
I'm trying to get a GP1 write replacement in
very simple function
but my replacement just causes a black screen
wonder if there's a clue in here
oh
I had the __fastcall in the wrong fucking place
(void (__fastcall *)
instead of (void (* __fastcall)

i wasnt trying to solve that for 4 hours btw lmao
their extra GPU cmd doesn't seem to be used by the game
good, its the most complicated to reimplement
Ahhh, syntax errors, they get the best of us 😆
its valid syntax
it just has completely different semantics 
there's lots of gfx code I'm clearly not even finding/looking at
searching over the same few functions ad nauseam is unlikely to show me anything I haven't already seen
i can clearly see what is going wrong it's just finding the correct place to tweak it
what the fuck
i just captured a frame in renderdoc with the resolution scaling turned off
each framebuffer looks quite different
the one on the left seems to be host GPU generated
but its in the PSX VRAM
wheres all the logic for this shit man lol
must be not seeing 90% of it
i refuse to believe this is all of it
"build_rep_image"
what the fuck is a rep image
i kinda have to assume its at a PSX-level since I think the higher level stuff, the idea is it works for any emulated platform across their entire codebase
nuking build_rep_image gets something like this
what can that possibly mean lmao
aint anybody who knows computer graphics in here
unfortunately thats one of the few functions with a name
Fuck
This is a conundrum alright, mgiht be worth thinking about reaching out to other communities to find people who have experience with computer gfx stuff who might shed some light
i wonder if there's a smarter way of tracking it down
i have a habit of falling into tunnel vision at times and end up being inefficient at some tasks
gfx stuff is not responsive to many of the tricks I usually pull lol
like I can't just stare at the data in a hex editor
so what are the appropriate tools
Yeah I see what you're saying
I have no idea, but it sounds as if there's 'something else' that handles the gfx
Disk.cpp(171): MDiskFileReadTask::ReadRequest(): cannot find file [system/script/init.nut.m].
lol
at least I can debug the actual process now
got this far without ever having been able to debug the game
i wonder if time travel debugging now works
Eli5 / similar issue (from what I'm gathering):
MGS3's depth of field/blur effects aren't actually missing - they were overlays hardcoded to look correct at 512x384, but when the game is scaled up to higher resolutions (720p/beyond) the blur ALSO gets scaled up - making it super duper sharp to the point where it looks like the effect doesn't exist anymore. Gotta figure out what needs to be scaled, and what is supposed to stay static to look right.
(1st shot is PS2, 2nd is HDC/MC)
And this one is HDC/MC set to run at PS2 resolution, the effects look correct again.
here it seems what's going on is there are some scenes where the emulator ignores framebuffer effects (which work fine upscaled) and some where it doesn't (which causes it to look super zoomed in)
well, that certainly slows the game down
still full black screen lol
wonder how big a recording of everything the process ever does up to a broken scene will be
this man just wants to write code but I insist this gets resolved first
2 FPS
correction, 1 FPS
thank fuck my day job is easier than this
got this far lol
lol damn
so i guess you gotta leave that running, and hopefully since the intro plays first anyway, hopefully that'll be enough?
the time travel stuff unfortunately doesn't look like it wants to work, it fails when I stop recording
what I need to be able to do is visualise framebuffers in memory
and use memory watchpoints
I can easily do the latter but dunno how to conveniently and quickly do the former
maybe I should try debugging via Visual Studio itself now debugging is an option
it'll integrate well with M2Fix even if the game is a bit of a black box from VS perspective
lalilulelo
You decompiled shader? 🤔
That's my wifi password
nah, didn't need to (yet)
there are lots of D3D shaders in the EXE, but two are referenced specifically by the emulator renderer, and seem strongly associated to some GLSL (I assume the two D3D shaders are just compiled versions of that GLSL)
disassembling those two is probably not going to achieve much, if indeed they are just what the GLSL suggests
unless I can achieve something by monkey patching them
im not sure what all the other D3D shaders are for, but they don't seem referenced by the emulator renderer, so
maybe they just get pulled in via some dependency and aren't really used all that much
seems like those two are the critical ones
for the ones I have GLSL for, that is just embedded in the EXE for some reason, even though it uses a compiled D3D version normally
the build of m2engage goes to great pains to make sure the D3D versions stay associated to the raw GLSL, so it's very clear which GLSL is represented by which D3D bytecode
that is, for these two - if you search for the D3D shader "magic" / signature value you'll find a lot more in there but not convinced the emulator is using them
(and those ones don't appear to have GLSL associated in the same way)
I was curious if anyone had extracted the Sound Scope of the player from the PS1 bios.
oh you continue with M2, the lack of money has kept me busy with a personal project and I don't spend much time here anymore, but it is very entertaining to discover more things about those emulators. If one day I have good money I will donate something fair to you
Honestly, no one has ever messed with an emulator as much as they did with the Snes emulator for PS2. I found the way M2 worked interesting, as did the patches for the SourNext versions of Resident Evil, but it takes a long, long time. Good on your progress, especially since you're alone in it.
Lately I'm also interested in making maps for Source (L4D2), and .nut is used for events and logic
yeah i don't really project hop
if i have free time of the hacking variety its spent here lol
FACEBOOK: http://www.facebook.com/PeceFanPage
BANDCAMP:
https://petercarpenter.bandcamp.com
http://piotrcieslik.bandcamp.com
TWITTER: http://twitter.com/PeceOfficial
Become a patreon for even more in-depth stuff: https://www.patreon.com/PiotrCieslik
PLEASE READ THE DESCRIPTION BELOW:
This time, a cover of another two treasures from BoC. This...
time eater (good music)
I have pushed the Contra/Castlevania support with Squirrel templating chaos (partially in the interest of encouraging others to build it from source): https://github.com/nuggslet/MGSM2Fix/commit/a834b0f9503d1da4365fd85ed81cbd878ab78671

see! things are happening 😛
should be pretty obv why that makes future game support easier - the mechanical templating work is done and can easily create a new "type" reusing all of that
LOOOL
I may not simultaneously reverse engineer MGS1 and play F1.
I literally do code hacking on my simracing setup.. guess I have to close IDA
stupid
Opened a PR to add the new supported stuff to the readme so people know. :>
https://github.com/nuggslet/MGSM2Fix/pull/31
May want to update the repo's About section to mention it too.
still waiting for those other games to go on sale 😛 would be neat if we could solve the framebuffer FX bug and support basically everything on steam in the next release
not gonna rush the next one after the last release, I want it to be an irrefutable improvement
Which games? 😮
we can all wait a few days this time! 😛
Contra / Castlevania?
nah there's some more, hang on a sec
Oh I'm guessing the other M2engage games
https://store.steampowered.com/app/1640160/GDarius_HD/ https://store.steampowered.com/app/1638330/Darius_Cozmic_Collection_Arcade/ https://store.steampowered.com/app/2478020/Rayz_Arcade_Chronology/
Taito's Darius series began with the titular arcade game, Darius, in 1986 and comprises numerous side-scrolling shooting games released in arcades, many of which were later ported to game consoles.G-Darius is the 4th arcade game in the Darius series of horizontally-scrolling shooting games, which sees the Silver Hawks battling against huge, spac...
$29.99
109
Darius is one of the pioneers of arcade side-scrolling shoot 'em up games, first released in 1986 in a custom, 3 screen cabinet featuring in-seat bass speakers to deliver the impact of the game direct to the player! The aquatically themed, giant robotic fish bosses and Zuntata-composed soundscapes captured the hearts and minds of arcade goes eve...
$44.99
108
Ray'z Arcade Chronology, collects the entire acclaimed 'Ray' series of 90s arcade-classic, vertically scrolling shooting games, along with enhanced HD versions of the two 3D titles, into a single, definitive collection!Title lineupRayForceRayStormRayStorm neo-HDRayCrisisRayCrisis HDThe series is known for its lock-on laser, an elegant combinatio...
$49.99
believe these should all work with some small effort
and some seem to be 3D which makes things very interesting
I know how to add support for these where GFX upscaling stuff (like any GFX stuff) is totally new to me, so
this is just a mechanical process of me bringing up M2Fix
i'd very much like the next release to sort the framebuffer FX issue (it is "MGS focused" after all) and maybe add these if they go on sale
someone asked me if I would remove MGS from the name "MGSM2Fix" - maybe, but after it has matured a lot (so that would include fixing all the MGS issues)
it's definitely MGS focused until there are no more MGS issues
getting Contra/Castlevania to work was about proving the general idea worked elsewhere
ultimately me personally I am here for MGS1 😛
so even if I include other stuff I want MGS1 on Steam to be great
Dang just missed the sale by 2 weeks, both G-Darius & Rayz Arcade were half off
Easiest thing to do is search like "windata" on Google but filter it to steamdb
/ alldata
but yeah I missed them too after I discovered that trick 😛
I'm sure it'll come around again eventually, steam sales are like every other day
#1168512986491670548 message I guess the next thing can look into is the nes one, see if it can add ips patch support
Steam Summer Sale should be right around the corner
I'm guessing - probably wrong, but guessing - that you could still get it working on MGS first and then 'easily' apply it to those other games later though? If they all share that functionality
I remember looking at some other patch format and concluding for some reason that PPF was a very good fit for us
not sure whether I looked at IPS or xdelta
but some aspect of one of them would be somewhat more challenging to support
the good thing about the M2Fix patch system is it just depends on Squirrel, doesn't get into the bowels of the emulator core like the upscaling work
but yeah I wishlisted those games, waiting for a sale
got contra/castlevania on a sale
Ahh nice
yeah the summer sale (biggest of the year alongside xmas) should be end of june, so not that far
imagine having to go through all this code by hand to make these changes https://github.com/nuggslet/MGSM2Fix/commit/a834b0f9503d1da4365fd85ed81cbd878ab78671
I do have one trait: idiotic levels of perseverance



Nice work

Provided to YouTube by IIP-DDS
Sixtyniner · Boards of Canada
Twoism
℗ Warp Records
Released on: 2002-11-25
Auto-generated by YouTube.
hahahahahah
they rolled back the volatile changes from C++20

committee-designed monstrosity
all the arm flapping around standard compliant code yet not a single compiler implementing the entire standard verbatim without caveats
F
https://media.ccc.de/v/mch2022-236-non-euclidean-doom-what-happens-to-a-game-when-pi-is-not-3-14159-
We all know that the value of pi is a constant with a particular immutable value. Anyone who has done any graphical programming also knows that visual rendering relies not just on pi but trigonometry more broadly as well as other mathematical ...
this game produces some mean looking photo renders
You on the Nurburgring?
Spa
top of Eau Rouge (actually Raidillon 😂)
its alright, polyphony just happened to add my favourite car of all time to the game
it belongs on pornhub really
yup NSX 😄
massive NSX sucker here
lowkey my GT7 balance was skint so I paid in like £15 for this
NO regrets
its alright, when they inevitably bring the game to PC I'll sell my PS5
I’ll keep an eye out for you 😎
I need to get an NSX framed on my wall
at the moment I have Pillars of Creation on canvas
yeah fuck that does look nice
been reminiscing about GT recently 😆 what version is this?
hopefully they bring it to steam as they are with their recent games
GT7 on PS5
(Not mine) but definitely inspired
I think I'm all in on canvas tbh
lots of wall space here
the pillars of creation canvas is bigger than my TV
I think I got that (and so big) to get a sense of perspective every day
https://fxtwitter.com/nanoplasm/status/1798912657594232969 wow, this is the first time of me seeing model swapping for MGS1
https://github.com/virusek20/mint interesting project
"MINT is a CLI archive manipulation and model / texture conversion program for Metal Gear Solid."
Posting this incredible model swap of MGS1 done by virusek20 (who does not have Twitter) and asked me to share! This is a fully playable mod that lets you play as Solid Mint, and took 5 weeks of reverse engineering to set up.
#Fantography #ミントLIVE
oh god, it's over... waifu catgirls in MGS 
I mean we finally have a new tool to do model / texture conversion
I recommend to them Nuggs's MGSM2Fix, so they can convert the mod into ppf format patches
oh oops
welp, don't know if the PC/GOG texture and model file structure is the same as the PS1 one, but I get it why they want to test it with PC/GOG since it's easily accessible to the files
A nostalgic racing game that combines the charm of classic retro style visuals with the thrill of international rally competitions.
WISHLIST Old School Rally on Steam to support the game:
https://store.steampowered.com/app/2824660/Old_School_Rally/
Old School Rally features fast-paced, arcade-style gameplay with carefully crafted retro style...
"am I getting the most from my Visual Studio Professional subscription", my work laptop asks

im not paying for it m8
wish I could get the company to pay for an IDA Pro + Hex-Rays decompiler licence

I totally bought my IDA Pro copy 
Though I did buy Binary Ninja since it was like 70€ as a student
Question from a newbie: why is the 4:3 ratio cropped at the top and bottom?
Is there a way to get rid of that? I’m playing on Steam Deck
yeah, don't play an ntsc version of the game
tbh getting rid of that only recently crossed my radar as its existence is very very deliberate and i didn't know any better lol
the pal versions don't have it
will try to get rid of it before next release, don't anticipate any major difficulties there
oh god, I had a 60gb time travel debugging dump
lol
found a way to make the bars even worse so pretty sure I can do the reverse
There are times I've said I wish I could assist somehow, to speed things along.
this is not one of those times
Hello! I'm trying to fix a big MGSM2fix problem
Basically w/ internal resolution
it isn't finished yet btw, if you mean the cutscenes
well uh
codec numbers wont light up
the camera doesnt stick on you when underwater
save file name wont load but still playable
in a way I'm glad the data looked like that lol
seems that goes to the next part of the gfx stack
so maybe there's a clue somewhere in there
im still very unclear how the different bits of the gfx stack link together
it hasnt revealed itself in the usual obvious way that I stumble upon things when I reverse stuff
if its as simple as tweaking some of the parameters sent into that command queue that would be nice
oh boy
what is cmd12
thats promising
managed to turn all the broken scenes into black screens but everything else is fine
I guess it's responsible for doing the framebuffer copy
by just rejecting cmd12 and not submitting it to gw
the args sent with cmd12 are correct as I'd expect (12, 0xf, 0x140, 0xe0, 0x140, 0x1)
hmmmm
agreed
the gfx corruption you can generate while doing this stuff xD
things rendered on my computer screen that i didn't think possible
sure did just get it to crash in d3d11.CreateDirect3D11SurfaceFromDXGISurface
its starting to look like everything at this layer in the gfx stack is behaving correctly and I do actually have to start looking at gw/MDisplay
hm, i could definitely do with better tooling to dig into this
took me a decade to figure out how to write those tools for non-gfx though lol
If I understand correctly, currently you're testing with the ui position offset stuff?
nah, trying to fix the bugged cutscenes which are due to the renderer switching into a mode that emulates the PSX framebuffer effects
I need some sorta way to point something at a buffer in memory to visualise the contents
I can't turn 1s and 0s into pixels in my mind lol
its interesting that there's one function within "gpu_draw" which is the underlying "gpu_get_dimension"
that is the only one that doesn't receive the native resolution boost
if I change what it returns, suddenly it renders in a tiny 224p box in the top left corner
if I don't, then it looks like it does in the current M2Fix release
that function is essentially responsible for submitting a command buffer to "GW"/"MDisplay"
so I think I have to start looking at the layer above
it'd probably help if I had less of a bee-line focus on the results and just focused on understanding the graphics stack for a bit
simply changing the stuff that goes into the command buffer just leads to weird corrupted shit at most
god damn I wish there was a serious engine/gfx programmer that I knew haha
I think my observations mean that "gpu_draw" is the wrong place to look (which is the PSX layer) and I need to look closer towards the stuff that turns it into native rendering
I'd really like to confirm that though, by visualising the PSX framebuffer
