Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Silent Hill 2] Checklist of Remaining/Wishlist Fixes #9

Closed
8 of 22 tasks
Polymega opened this issue Oct 17, 2017 · 95 comments
Closed
8 of 22 tasks

[Silent Hill 2] Checklist of Remaining/Wishlist Fixes #9

Polymega opened this issue Oct 17, 2017 · 95 comments

Comments

@Polymega
Copy link

Polymega commented Oct 17, 2017

(Note: This thread was made a few days before the creation of the SH2 Enhancements Repository)

I'm doing a play through of Silent Hill 2 again for the Enhanced Audio project and I was making mental notes of the remaining "wishlist" fixes and wanted to post them for posterity purposes.

Noted areas for improvement:

Discussion thread

  • Integration of soft shadows
  • Shadows do not cast on dynamic (movable) objects (they do on the console versions)
    Discussion thread
  • Fix bugged lighting sources for a few areas in the game
    Video Example 1 | 2 | Discussion thread
  • Increase draw distance for either just Woodside Apt 2F Hallway or whole game FIX IN PROGRESS
    Video example | Solution
  • Fix "Eddie/Laura bowling scene" black fade out regardless if Fix2D or similar is on/off
    GIF example
  • Adjust fixed camera angles in several spots to hide camera clipping through wall FIX IN PROGRESS
    Discussion thread
  • Fix camera stutter in Hospital, 3F, Rm S3 FIX IN PROGRESS
    Video example | Discussion thread
  • Remove one-frame flicker when an in-game cutscene changes to motion blur. (If not possible then have the option to disable the game's motion blur altogether then in the ini file?)
  • Have the game cursor (used for interacting with full screen images) default to center of the screen each time like the console versions. This is due to the cursor being off-screen whenever Fix2D and FullScreenImages are enabled in the Widescreen Fix. FIX IN PROGRESS
    Solution
  • Keep hanging meat always "loaded in" during final Eddie confrontation cutscene.
    Video example | Discussion posts
  • Fix the very silly animation bug for when James gets on the rowboat. FIX IN PROGRESS
    Video example | Solution
  • Implement language subtitle "packs" for the game?
    Discussion post
  • Fix loading zone color values for cemetery area to fix environment Quick Save load bug. FIX IN PROGRESS
    Video example | Solution
  • Fix luminescence of James, dress, and Mannequin in Room 205. A FIX HAS BEEN FOUND
    Discussion Post | Solution

Fixed!:

  • Integration of PS2 quality sound files ("Enhanced Audio" project)
  • Game map & save screen fix: Currently, if you're on the streets of Silent Hill during the day time the pillar boxes are grey, not black. This is true for any area where the game has set the time of day to "day" (and not "night").
    Image example | Discussion post
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Game map & save screen fix: Currently, the markings on the maps and save file's floating, enlarged text are always visible and stay above the pillar boxes. They should be behind the pillar boxes.
    Video example
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Game map fix: There are no pillar boxes at all whenever James transcribes notes onto his own map. (James transcribes notes onto his own map several times throughout the game.) You can see the game environment instead where the pillar boxes should be.
    Video example
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Fix Lying Figure cutscene camera "pop" and looped animation
    Video example | Discussion thread
  • Integration of anti-aliasing (possibly done through SMAA?)
    Alternate solutions have been found for anti-aliasing which have been reflected in the Installation Guide.
  • Integration of WineD3D's fixes without having to use WineD3D (wise to do so?)
    It is no longer necessary to do this.
  • Adjust WSF to accommodate new 16:9 FMVs (currently there are still small pillar boxes when FMVWidescreenEnhancementPackCompatibility is turned on).
    Discussion thread
@AeroWidescreen
Copy link

AeroWidescreen commented Oct 19, 2017

Adjust WSF to accommodate new 16:9 FMVs (currently there are still small pillar boxes when FMVWidescreenEnhancementPackCompatibility is turned on).

ThirteenAG says he's going to take a look at it, so I'm guessing this should be fixed in the upcoming stable build. I'll let you know otherwise.

16x10FMVWidescreenEnhancementPackCompatibility and 16x9FMVWidescreenEnhancementPackCompatibility in case some people prefer to use the originals still?

The issue with that idea is there are some videos you didn't change at all, so if we were to reduce the width to pillarbox them again (16:10) then those videos would get squished in the process.

Alternatively, we could simply offer different downloads. One for angular_graphics' videos, and another for your edited videos. Then nothing with our scaling would have to be changed.

Black backdrop for pillar boxes when James is transcribing notes on his map

Make map markings and save screen wording hide behind pillar boxes (possible?)

I feel like we shouldn't spend time on this kind of stuff when we could be working towards a proper solution instead. In this case, replacing the save screen background with an extended version, and fixing the pillarboxing of the maps. Both easier said than done of course.

Fix "Eddie/Laura bowling scene" black fade out regardless if Fix2D or similar is on/off

I think I understand why the developers did what they did here. I believe the black overlay is used to emphasize Eddie's last bit of dialogue "Nobody will ever forgive me." while the cutscene appears to end. My solution skips the overlay entirely and goes straight into the transition, but that means the subtitles for that last bit are not visible and some of the emphasis is lost. I'll have to find another way.

Fix camera "pop" during "blood on the road" cutscene when ReduceCutsceneFOV is on

You already know what idea I have to fix this, so I'll let you know how it turns out as soon as I have a chance to test it.

@Polymega
Copy link
Author

Polymega commented Oct 19, 2017

The issue with that idea is there are some videos you didn't change at all, so if we were to reduce the width to pillarbox them again (16:10) then those videos would get squished in the process.

True. But the only ones I didn't change were the bonus trailers for SH2 & 3 not pertaining to the game themselves. However I do see your point. But...

Alternatively, we could simply offer different downloads. One for angular_graphics' videos, and another for your edited videos. Then nothing with our scaling would have to be changed.

Good point. So long as the user's resolution is set for 16:9 then our newly edited videos should play with no black bars anywhere (after ThirteenAG adjusts things) so long as they disable FMVWidescreenEnhancementPackCompatibility. Once we get a little further along I'll update the Installation Guide to offer both video formats and the installation instructions.

I feel like we shouldn't spend time on this kind of stuff when we could be working towards a proper solution instead. In this case, replacing the save screen background with an extended version, and fixing the pillarboxing of the maps. Both easier said than done of course.

I know that it may be nearly impossible to allow for different size/resolution full screen images due to complications you mentioned. That got me wondering about an alternative solution:

Could you combine several of your full screen fixes into one? Basically doing what I did for the 16:9 FMVs? So you'd zoom in on the full screen images as you've done to remove the letter boxing and then stretch the images horizontally ever-so-slightly to remove the pillar boxes. While there would be some image stretching you wouldn't crop off any of the images as what's currently being done to remove the pillar boxes, if that makes sense.

This may also fix the Hotel elevator button dilemma. But on that same note, there's no saying how the interactive full screen images would behave stretching them like that.

I think I understand why the developers did what they did here. I believe the black overlay is used to emphasize Eddie's last bit of dialogue "Nobody will ever forgive me."

You're probably right. Team Silent were masters at this. Notice how, when you first meet Eddie in the apartment bathroom, when he says, "Honest," it's extra loud compared to his other dialog? I always loved that little detail...

@Bigmanjapan
Copy link

Bigmanjapan commented Mar 19, 2018

Game map & save screen fix: Currently, if you're on the streets of Silent Hill during the day time the pillar boxes are grey, not black. This is true for any area where the game has set the time of day to "day" (and not "night"). Image Example.

Since the grey pillar boxes' color is actually a loading zone color, it is possible to change the color manually.

In my sh2pc.exe these three addresses hold RGB values for loading zone color:

sh2pc.exe+542C50 (00942C50) byte = red channel
sh2pc.exe+542C51 (00942C51) byte = green channel
sh2pc.exe+542C52 (00942C52) byte = blue channel

Setting them to 0 would output pure black loading zone color and therefore black pillars on map and save screen. You could make a function that would store loading zone color values upon opening map / save screen and swap them with zeros to make it black. Then load the stored loading zone color values back upon closing map / save screen. It's not an elegant solution but it could work.

@Bigmanjapan
Copy link

Bigmanjapan commented Mar 19, 2018

I also managed to investigate an issue with James' split animation during boat cutscene.

In my sh2pc.exe file this 4 byte address sh2pc.exe+4BB78C (008BB78C) holds a value of FFFFFFFF (4294967295) before the boat cutscene is triggered for the first time and it gets nullified (value is changed to 00000000) upon triggering the cutscene. It stays nulled afterwards. If you reload and manually change the value back to FFFFFFFF and then trigger the cutscene again — James animation won't be split.

I guess a solution here could be making a function that would do a conditional check of sh2pc.exe+4BB78C being 00000000 and changing it to FFFFFFFF in such case. Since I don't know if that address has any impact on the gameplay somewhere else apart from that boat scene, I would make such function based on current room index or something that could make the check work only in location after Eddie's boss arena and before the actual boat sequence (pier location).

Edit: or you could simply NOP the function during initial game launch but again, I don't know if that function is responsible for anything else in the game.

@Polymega
Copy link
Author

Polymega commented Mar 19, 2018

Mentioning @AeroWidescreen in this discussion.

@Bigmanjapan would you be able to find a way to keep the hanging meat loaded the entire time during this cutscene?

https://www.youtube.com/watch?v=XY5kRFLcYO8

Also, I didn't catch it at the time, but at the 0:35 mark in the video the meat directly behind Eddie also disappears.

@mirh
Copy link

mirh commented Mar 19, 2018

Random stupid showerthought (aside of still thinking maybe this kind of stuff should go in the SH enhancement repo): there's a point where rewriting the engine starts to feel easier

@Bigmanjapan
Copy link

@jdkubiak what was the internal resolution in the game when you made that video? If I watch the cutscene in 1920x1080p internal resolution, then I won't observe the glitches you had.

https://youtu.be/Vt6zMl8aMJM (I have one glitch on 00:09 but I don't have ones you had)

Also your video is more "zoomed-in" than mine, which, I believe, is directly tied to the "meat" glitches. In SH speedrunning Discord server it was recently discovered that some camera aspects change depending on the resolution (making camera more tilted down if resolution is progressively lowered). I know how to control camera boundary boxes, trigger (switch) areas, projection, various rotations etc but I have no idea what is that dynamic parameter that is changed in accordance to resolution. Will search more.

@Polymega
Copy link
Author

Polymega commented Mar 19, 2018

The internal resolution is set to 320 x 240 on mine. I believe this is the reason why. This is in reference to how the camera wasn't positioned correctly in certain areas of the game when a higher resolution was used injunction with the Widescreen Fix. Here is one video example:
https://www.youtube.com/watch?v=Eiq3XdYot14

Edit: Yeah, I see what you mean about my cutscene being more zoomed in now. Must be directly tied to the much smaller resolution.

@AeroWidescreen
Copy link

@Bigmanjapan

it was recently discovered that some camera aspects change depending on the resolution (making camera more tilted down if resolution is progressively lowered).

This was changed in the widescreen fix to have the camera always behave the way it does in 640x480. I don't know if that's the cause of this issue though.

@jdkubiak

Edit: Yeah, I see what you mean about my cutscene being more zoomed in now. Must be directly tied to the much smaller resolution.

Are you sure it's not because you have ReduceCutsceneFOV enabled?

@Polymega
Copy link
Author

Polymega commented Mar 19, 2018

Are you sure it's not because you have ReduceCutsceneFOV enabled?

Ah! So many variables! Yes, that was the issue. When I disabled ReduceCutsceneFOV my camera was zoomed the same as @Bigmanjapan .

More importantly, when ReduceCutsceneFOV was disabled the "meat glitch" didn't happen except for one quick instance that is seen in Bigmanjapan's video at the 0:09 mark:
https://youtu.be/Vt6zMl8aMJM

@AeroWidescreen is there a way to disable ReduceCutsceneFOV just for this particular cutscene whether it's enabled or not by the user?

@Polymega
Copy link
Author

Polymega commented Mar 19, 2018

*I personally think that quick glitch at the 0:09 mark is acceptable to not worry about if ReduceCutsceneFOV can be disabled for the entirety of the cutscene. That particular glitch at 0:09 is so fast, and at the edge of the screen, I wouldn't consider it to have a major impact on the tone/mood of the cutscene. And if advanced fog is enabled it would be even harder to notice.

@Bigmanjapan
Copy link

@AeroWidescreen I see, that's interesting. Seems that 640x480 camera fix solves more issues than it creates, so no point in fixing meat glitches by reverting it back to default. I will just in case try to adjust camera angles' values via game files to fix that one gitch at 0:09.

@Bigmanjapan
Copy link

Have the cursor (used for interacting with full screen images) default to center of the user's screen/resolution each time

Do you want to mimic a consoles' pointer which is always initially centered?

As far as I can tell on PC version mouse pointer's travel area is limited by 640x480 (512x480 visible area) size regardless of set resolution (pointer area gets "stretched" on screen area created by resolution). I guess it wouldn't be much of a problem to find a check that game engine has on entering 2D events (inventory, map, puzzles etc). Set mouse pointer coordinates to 256x240 each time the check is performed.

sh2pc.exe+541358 (00941358) = pointer horizontal position
sh2pc.exe+54135C (0094135C) = pointer vertical position

@Polymega
Copy link
Author

Polymega commented Mar 19, 2018

Do you want to mimic a consoles' pointer which is always initially centered?

That may be preferable. This fix was suggested because when both Fix2D and FullscreenImages are enabled the cursor is initially completely off screen (this is because the fullscreen images are scaled to crop the letter boxing) during the first interactible fullscreen image.

You have to start moving the cursor around randomly until it comes back into view. But if the cursor was always centered by default you wouldn't have to wonder which direction the cursor is hiding off screen.

Here was the original thread on scaling the fullscreen images:
ThirteenAG/WidescreenFixesPack#337

@AeroWidescreen
Copy link

AeroWidescreen commented Mar 19, 2018

@Bigmanjapan
By the way, I think the solution you're proposing for the boat animation is great. I gave it a look a few weeks ago, but I had no luck finding anything. If I remember correctly, each cutscene has its own number assigned to it: 00, 01, 02, 03, etc. so changing the value back for that one cutscene should be trivial.

@Polymega
Copy link
Author

Polymega commented Mar 23, 2018

@AeroWidescreen I may be completely off with my understanding of this but if you'd humor a non-programmer/-modder's thoughts:

So the internal resolution of the game's camera determines how severe the meat glitch is, yes? Meaning, if I were NOT using the WSF, and had the game's resolution set to something very small like 320 x 240, a lot of the hanging meat would disappear because it would be actually be off-camera in that tiny resolution? And so the larger the resolution the more meat will show due to the increase in camera size?

And the way the WSF works is that while the projection I'm seeing is 1920 x 1080 the game is "rendering" the environment under the pretense of 640 x 480? (Apologies for probably grossly minimizing this concept.)

You mentioned how you adjusted this to fix prevalent camera bugs while in-game here.

That fix was to alleviate "live" camera angles; ones that change on-the-fly depending on how you move James. Because the Eddie cutscene uses "pre-made" camera angles (the player can't adjust these) can you tell the WSF to temporarily change the internal resolution from 640 x 480 to something larger while this cutscene plays (by using the cutscene's unique identifier)? Then, when the cutscene ends, the WSF goes back to using 640 x 480 like before?

Again, I may be totally off mark here with all of this but if any of this is remotely how the WSF works/fixes things could that be a possibility to fix the meat glitch?

EDIT: This is all under the notion of a player having ReduceCutsceneFOV activated.

@Bigmanjapan
Copy link

Bigmanjapan commented Apr 5, 2018

By the way it is possible to make SH2 PC builds display Japanese language if you replace .mes files with those from an Xbox original build. Could make it a part of the project.

unknown

@mirh
Copy link

mirh commented Apr 5, 2018

I don't know a thing about how this game works, but if any the target should just be have independent interface/subtitles/dubbing language.

@Polymega
Copy link
Author

Polymega commented Apr 5, 2018

By the way it is possible to make SH2 PC display japanese language if you replaced .mes files with those from Xbox ISOs. Could make it a part of the project.

Nice! If you wouldn't mind sharing the .mes file I can add this as an option to the Installation Guide at a later date.

Are there additional language options for the subtitles as well in the Xbox version? (I no longer own an original Xbox to test...) Would the European Xbox releases have more language options than the North American versions?

@Bigmanjapan
Copy link

Bigmanjapan commented Apr 5, 2018

Are there additional language options for the subtitles as well in the Xbox version? (I no longer own an original Xbox to test...) Would the European Xbox releases have more language options than the North American versions?

As far as I remember Xbox versions work just like PS2 versions when it comes to language selection. NTSC-U and NTSC-J versions of both platforms have Japanese and English language available to select in Options menu. PAL versions of both patfroms have English, French, German, Italian, Spanish.

NTSC-U PC version have Japanese language "cut" and only have English available and PC PAL version have English, French, German, Italian, Spanish.

The thing is, these language selection restrictions are artificial. Every region version of every platfrom has all message files in their file structure and it is possible to select any language including Japanese by bypassing language selector restriction via memory editor.

There is an issue with PC build tho. Japanse message files in PC builds are "empty" and render Japanese text to "??? ??? ?????" signs. Transfering Japanese message files from an Xbox build solves this issue.

One additional issue with PC build is that there is no japanese text for PC menu (which appears when you press Esc button during gameplay), since there is no such menu on console versions and PC build was never released in Japan. Someone would have to make translations for menus and find a way to inject them into game's message file structure.

This video shows how easy it is to hack language selector and issues with original Japanese message files (this is done on NTSC-U version which only have English available by default): https://youtu.be/n3W73pCOZIc

Nice! If you wouldn't mind sharing the .mes file I can add this as an option to the Installation Guide at a later date.

Xbox_japanese_mes_files.zip

In conclusion, first step would be unlocking language selector by modyfing sh2pc.exe to provide access to all languages, second step would be adding lacking Japanese texts in the game's message structure.

Language selector address: sh2pc.exe+19BC006 (01DBC006) byte
Values are: 0=Japanese, 1=English, 2=French, 3=German, 4=Italian, 5=Spanish

@Polymega
Copy link
Author

Polymega commented Apr 5, 2018

Thanks for this info! Accessibility to non-English speakers (Japanese in this case) would be very beneficial. With fans all around the world, inclusiveness would be great.

In conclusion, first step would be unlocking language selector by modyfing sh2pc.exe to provide access to all languages

So if this can be unlocked could users simply click the < and > arrows beside the language choice to switch? (The same as adjusting other options.) Theoretically it wouldn't crash the game or anything?

second step would be adding lacking Japanese texts in the game's message structure.

Would that be as simple as dropping the Japanese message files back into the PC game's directory? Or would there be more steps involved?

I understand now. I just saw all the different language .mes files under /data/etc/message/ . Each file ends in e (English), f (French), g (German), i (Italian), and j (Japanese).

@Bigmanjapan
Copy link

So if this can be unlocked could users simply click the < and > arrows beside the language choice to switch? (The same as adjusting other options.) Theoretically it wouldn't crash the game or anything?

In theory, yes. Languages should be switchable via game's own "<" and ">" buttons without any crashes. I do that in the video via memory scanner and game doesn't crash, no reason why it would crash once language selector is "unbound".

Would that be as simple as dropping the Japanese message files back into the PC game's directory? Or would there be more steps involved?

I don't know yet. I (or someone else) would have to see from what files menu polls it's text data and try to change it as an experiment.

To confirm: Your title screen shows "Director's Cut" on the logo. Do you mean that you are using NTSC .exe with a PAL install of the game?

I always thought that if there is an aura around texts in main menu, then it is an NTSC build, if there is a plain text, then it's a PAL build.

Either way, my build have only English available by default, so it should be NTSC one regardless of logo in the main menu.

@Polymega
Copy link
Author

Polymega commented Apr 5, 2018

I always thought that if there is an aura around texts in main menu, then it is an NTSC build, if there is a plain text, then it's a PAL build.

I believe you are correct. But if you install the PAL version then swap out the .exe with the NTSC version you will keep the PAL menu background image but have the NTSC "fat" menu font. But the "fat" menu font is the only true menu font for this game. :)

@AeroWidescreen if this can be looked in to and patched in the WSF (or patching the actual .exe? But that would require people using only the .exe provided) I can include the corrected Japanese message files (after they've been tested) as a packaged download with the .exe on the Installation Guide no-CD step.

@Bigmanjapan
Copy link

Bigmanjapan commented Apr 7, 2018

More importantly, when ReduceCutsceneFOV was disabled the "meat glitch" didn't happen except for one quick instance that is seen in Bigmanjapan's video at the 0:09 mark:

What about increasing FOV slightly for that cutscene? Seems to solve the issue entirely: https://youtu.be/3z_9o7atcFc

It is probably possible to increase FOV even less (to stay closer to the original) than I did to solve the issue.

@jdkubiak @AeroWidescreen

@Polymega
Copy link
Author

Polymega commented Apr 7, 2018

Nice! How much could the FOV be decreased (to stay closer to the original) while preserving all the hanging meat? Is there a set threshold/limit?

@lakeviewhotel
Copy link

lakeviewhotel commented May 27, 2018

@AeroWidescreen @Bigmanjapan @Nisto
No problem! I've been reading all the threads to catch up with you, you guys are truly amazing!
Sadly I know nothing about ASM or the other programming skills, so just hope I can contribute something at least...

Hi @Polymega , I saw your comment here and yesterday I've discovered something new in the HD Collection (XBOX 360), like the high res menu background and savebg pictures (all 1152* 720 px), I'd like to test them or modify but I don't know how to put the them back correctly. I'm using the sh texture explorer 2.1, but I have to resize them before the replacement, the high res texture will be compressed :(

Here's the link of all high res backgrounds:
https://drive.google.com/drive/folders/1DYRKCcEPAOWMXQw02cKlL8VJpeyKO9uj?usp=sharing

There's a edited version of savebg2.raw in the PNG folder, I added a background and few filters just to keep the consistency...though I'm not sure.

compare

@Nisto
For the audio porting, for example, when I'm extracting bgm_001.xma (bgm_001.adx in PC version) by using xmash 0.8, it gives a .pos file for every riff wave header which is for looping. Is that means something? The sound quality of PS2 version is still better than HD Collection though.

pos


Besides I'm working on a chinese localization for SH2, although there is one now (use d3dhook to insert a new font). But I wanna do it in another way, which means only to add font textures so the other language options can be saved. Thanks to my friend and finally now we can change the japanese .mes files properly.

Sorry for offtopic again. I was almost give up until I found this thread, just want to say thank you for all your hard works and giving me hope.

@Polymega
Copy link
Author

Polymega commented May 27, 2018

Hi @Polymega , I saw your comment here and yesterday I've discovered something new in the HD Collection (XBOX 360), like the high res menu background and savebg pictures (all 1152* 720 px)

This is great! @elishacloud and @AeroWidescreen have discovered breakthroughs in hopefully being able to implement HD static images in the game so these save screens should come in handy!

I'd like to test them or modify but I don't know how to put the them back correctly. I'm using the sh texture explorer 2.1, but I have to resize them before the replacement, the high res texture will be compressed :(

Yes, unfortunately, when using SH Texture Explorer, you have to resize the images. Not only that, but I believe that software also degrades the image's quality even further (beyond just the resizing). If positive results come from Elisha and Aero's research with the HD image mod, we should be able to skip using SH Texture Explorer altogether.

@brunibunny has a way of saving the high res images as DDS format so we won't have to use SH Texture Explorer, either. But, I just check your Google Drive images, and it looks like you already have these particular images saved in DDS format!

In summary: Hopefully in the future we'll be able to use high res images without having to reduce their size/resolution and without having to use SH Texture Explorer. :)

@Nisto
Copy link

Nisto commented May 27, 2018

@lakeviewhotel The PC version already does contain loop information in the BGM .adx/.aix files. The thing is, we wanted to convert the PS2 renditions to uncompressed WAV files, because ADX compression introduces various defects. But it doesn't natively support looped WAV files (except for complete looping, from start to end, which is controlled by the last byte), and I don't think it supports .pos files either (even if it did, all WAV "files" in the game are either concatenated together into one file, or they're part of a virtual filesystem, without companion files and whatnot).

@AeroWidescreen
Copy link

AeroWidescreen commented May 28, 2018

@lakeviewhotel Using higher res images requires memory modifications that elishacloud is working on in conjunction with sound improvements. It's been proven possible with only one issue that needs be ironed out. But these images you've extracted are really helpful, especially the save backgrounds!

@Bigmanjapan
Copy link

Bigmanjapan commented May 28, 2018

Just curious, in which case that Maria's save background with watery overlay is displayed in HD Collection?

I always thought that watery overlay comes from the well with the first red tablet in the main scenario. And that a player looks at James from the back side of the tablet, just like in SH3 player looks at Heather from the back side of the halo sign. Does it make sense to use background with watery overlay in Born from a Wish if it's the main scenario thing?

Maybe it is a bug after all?

Strangly enough, if you push against the wall, James will run at full speed which is 4 (float).
https://youtu.be/bOFoZhcsmus Used in speedrunning: https://youtu.be/qD2s0s7h1QQ?t=404

James/Maria acceleration sh2pc.exe+1BB10A8 (01FB10A8) float

@Polymega
Copy link
Author

Strangly enough, if you push against the wall, James will run at full speed which is 4 (float).

Haha, yeah, I used this tactic back when I speed ran the game. If James' body is 45 degrees to the stair/railing he won't slow down.

Although, seeing it again in action, it really does look like it was intentionally programmed this way. Only because he slows down in perfect sync with his own footsteps.

@lakeviewhotel
Copy link

@Polymega @AeroWidescreen @Nisto
Thanks for replying, I'll stop messing around with the files for now and leave it to you professionals!

I always thought that watery overlay comes from the well with the first red tablet in the main scenario.

@Bigmanjapan Wow I've never thought of this.. now I can't agree with you more. I'll think twice if I do modding again, thank you :)

@Polymega
Copy link
Author

@Bigmanjapan

screenshot_20180529-222126

@AeroWidescreen
Copy link

Well that's one less thing to worry about, confirmed by Masahiro Ito himself

@Bigmanjapan
Copy link

https://youtu.be/tsFSUmSzGiQ

New issue to add?

@Polymega
Copy link
Author

Polymega commented May 31, 2018

https://youtu.be/tsFSUmSzGiQ

New issue to add?

Nice catch on the animation glitch. I guess it happens so quick I've never noticed before. It looks like the monster's model just needs to be rotated 180 degrees while it's dormant on the ground? Maybe a value that has a negative in it instead of a positive? Or vice versa?

But, I did always notice how a pool of blood forms on the Mannequin before it awakens in the PC build. I always thought that was odd...

In fact, I had to Photoshop/edit out the blood for my next, upcoming demonstration trailer:

0001

Also, the specularity of the Mannequin on the PC build is much more pronounced:

sh2pc 2018-05-31 17-48-33

I always wished the specularity could be removed from the monster before obtaining the light. (Basically, tricking the game into thinking the flashlight on the mannequin dress is "off" but this trick only affects the Mannequin monster because when the light is off all monsters have their specularity removed.) I know in the PS2 build the Mannequin has specularity like this while it lays dormant but it doesn't seem near as much. I actually removed it on the upcoming video as well just for nicer presentation purposes:

0002

Would you like to make a ticket and add it to this repository? We have a lot of conversations/testing for all sorts of different things throughout the same thread(s) so it may be better to make more individual tickets to keep track of them all.

@Bigmanjapan
Copy link

Would you like to make a ticket and add it to this repository?

Sure. I might try to remove the flicker on the mannequin and the blood stain while I search for animation fix.

@Polymega
Copy link
Author

Polymega commented Jun 9, 2018

I don't know if it'd help you guys but I extracted my PS2 save files of SH2 to use with PCSX2. You can download them here:

SH2 PCSX2 Save Files.zip

  • Place PCSX2_Silent_Hill_2_Save_Files.ps2 in your PCSX2's memcards folder.
  • In PCSX2 go to Config > Memory cards.
  • The .ps2 file should already be assigned to a PS2 Port.
    • If not, you'll see it grayed out below under [-- Unused cards --]. Right click it and select Insert card... then select a target port to assign the .ps2 file to.
  • That's it! When you boot up SH2 PS2 you can now load many save points.

Do note these save files are from the original NTSC release of the game; I don't know if these save files are compatible with later released versions.

image

@Bigmanjapan
Copy link

Bigmanjapan commented Jun 9, 2018

a pool of blood forms on the Mannequin before it awakens in the PC build. I always thought that was odd...

This blood stain is formed via three layers.
Change their Y coordinates to shift them underneath the floor. I don't know if something else accesses the addresses, so a single change of value to 128 upon entering the room should be fine. Better to leave the addresses unfrozen to make sure it doesn't break anything else in the game later on.

sh2pc.exe+556364 (00956364) float
sh2pc.exe+5563BC (009563BC) float
sh2pc.exe+556414 (00956414) float

Change them to 128.

https://youtu.be/0Brt9z60Rew

Interestin fact: blood stain Y position is calculated from mannequin Y position. If you change mannequin Y position via address in the next message, freeze the value and re-enter the room — blood stain will also be shifted on Y axis following the mannquin.

@Bigmanjapan
Copy link

Bigmanjapan commented Jun 9, 2018

It looks like the monster's model just needs to be rotated 180 degrees while it's dormant on the ground?

I'm afraid it's not that simple. I found all the addresses that control it's position and it seems that the way his legs positioned are entirely different to consoles' versions. Simply rotating it won't do.

sh2pc.exe+1BB15B4 (01FB15B4) float - Mannequin position X
sh2pc.exe+1BB15BC (01FB15BC) float - Mannequin position Z
sh2pc.exe+1BB15B8 (01FB15B8) float - Mannequin position Y
sh2pc.exe+1BB15C8 (01FB15C8) float - Mannequin horizontal rotation
sh2pc.exe+1BB15CC (01FB15CC) float - Mannequin vertical roll (need to NOP an instruction that writes to this address to be able to change the value)

Not sure what to do about it yet.

@Bigmanjapan
Copy link

Bigmanjapan commented Jun 9, 2018

These three addresses control flickering on the mannequin. NOPing functions that write to them and setting the value, for example, to 1 — removes flickering but also breaks the flashlight.

Maybe some manipulation with the addresses upon entering the room but before the flashlight pick up and reverting it to default after the pickup?

sh2pc.exe+4A0020 (008A0020) float
sh2pc.exe+4A0028 (008A0028) float
sh2pc.exe+4A002C (008A002C) float

https://youtu.be/HHz0iCFWqpA

@Polymega
Copy link
Author

Polymega commented Jun 9, 2018

I'm afraid it's not that simple. I found all the addresses that control it's position and it seems that the way his legs positioned are entirely different to consoles' versions. Simply rotating it won't do.

I think the largest issue with this is that the Mannequin does a complete 180 flip. Because of how drastically the creature must move to be back in the right position it's noticeable even at just one frame long.

If you can get the creature rotated to the correct angle so it doesn't "flip" over upon activation I seriously think that would suffice. Because, even if the Mannequin's legs are slightly different I would bet no one would notice when it comes to life. It's the entire body flipping that is large enough on-screen to become noticeable, if that makes sense.

@Bigmanjapan
Copy link

If you can get the creature rotated to the correct angle so it doesn't "flip" over upon activation

The issue is that 180 flip is scripted, no matter what it's initial position is, the flip will occur.

https://youtu.be/DvD4NsmjmM0

@Polymega
Copy link
Author

Polymega commented Jun 9, 2018

Well that's just both silly and frustrating... And is a downside of the Quick Save feature then. On PS2 the devs would never need to worry about that.

@AeroWidescreen
Copy link

I don't know if it'd help you guys but I extracted my PS2 save files of SH2 to use with PCSX2. You can download them here:

It definitely helped me. I've had the game running without a hitch in PCSX2 for awhile now, but I've never got around to doing a full playthrough. I don't have to rely on YouTube videos for comparisons anymore. Thanks for this.

@AeroWidescreen
Copy link

@Polymega Thought you might find this interesting. With a little bit of trial and error I was able to create a custom zoom and movement for the map like I was trying to do before. I don't have any plans on implementing it, but it's cool to see that it's possible to fix the pillarboxing without having to replace the textures.

Ignore the markings not being synced when zooming; I didn't feel like going through the trouble of fixing that for this video.

https://youtu.be/KpK7YC84qmc

@Polymega
Copy link
Author

😮 I don't find that interesting; I find that sexy.

As you said: I know with the hopeful advent of implementing widescreen 2D images we probably won't need to completely fix the full screen map images but it's super nice knowing you found a solution as a back up.

Plus, I know this is both something that's been requested of you for a long time and something you've wanted to properly fix for quite some time. So I'm sure it's a wonderful relief just for yourself to have this egg finally cracked. Your talents always amaze!

@Polymega
Copy link
Author

Polymega commented Jul 7, 2018

@AeroWidescreen @Bigmanjapan
I did a speed run of SH2 Greatest Hits PS2 and am attaching my PCSX2 memory card for you guys to use if you'd like. This has every save point saved at within the game. This memory card now holds saves for both the original NTSC release and GH NTSC release.

PCSX2_Silent_Hill_2_Save_Files.zip

image
image

Also, Aero, a neat fun fact: The "Maria" ending is also glitched when playing on PCSX2:

image

@elishacloud
Copy link
Owner

Moving This Issue to Silent-Hill-2-Enhancements

Everyone, I am moving this issue to the Silent-Hill-2-Enhancements project. Some comments were not able to be moved, but they can still be referenced here.

Please put all comments in the New Issue. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants