Jump to content

AlphaYellow

Trusted
  • Posts

    195
  • Joined

  • Last visited

  • Days Won

    22

AlphaYellow last won the day on June 4

AlphaYellow had the most liked content!

About AlphaYellow

  • Rank
    Member

Recent Profile Visitors

4,839 profile views
  1. Version 1.0

    2 downloads

    Comes with a RAR file, which includes a LEGO Racers 2.exe and a LEGO Racers 2 - Widescreen Fixer v1.0.exe, intended to fix the field of view and resolution in LEGO Racers 2 (2001). Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/LegoRacers2WSFix/LegoRacers2WidescreenFix.cpp Instructions 1. Extract both executables to the root game folder (32 or 64 depending if your system is 32 or 64 bits), replacing the original LEGO Racers 2.exe. 2. Run LEGO Racers 2 - Widescreen Fixer v1.0.exe, insert your desired resolution width and height to fix the resolution and FOV automatically, or if desired set a custom FOV value. 3. While in-game, go to the graphics settings and choose the resolution that's furthest to the right, which is the one you set in the fixer executable.
  2. So, I've noticed nobody talks about modding old games here, so I'll break the tradition. Many people know old games have many issues running on newer monitors with aspect ratios different from what they used to be designed for, like 4:3 and 5:4, including no support for any kind of widescreen or wider resolutions, or when they do, they have a fixed field of view or it gets reduced with a wider resolution. Many old engines have the option to set a widescreen resolution, but just don't expose it to the user through the in-game settings, so editing through the Registry or external .ini/.cfg/.xml files or other similar kind of files might be needed. Usually when it's not possible to edit settings through external files or through Registry, it's needed to edit executables or other files around it directly (usually it can be DLLs, but not only), usually by using softwares that can edit the code in those files in hexadecimal form, like the so-called hexadecimal editors, or hex editors for short. HOW OLD GAMES STORE VALUES RESOLUTION Usually old games use 4-byte integers to store the resolution, so say a game supports 640x480, 800x600, 1024x768 and 1280x960. Each of those resolutions are stored as 4-byte integers in a file as hexadecimal numbers, so it means 640x480 is stored as 80 02 (640) and E0 01 (480). ASPECT RATIO For the aspect ratio, games might use a separate value to determine the aspect ratio or it might be tied with the resolution, it varies for every game. Usually games store aspect ratio just by dividing width by the height, so usually it might be 4:3, 5:4 or 3:2. The values are 1.333333, 1.25 and 1.5 respectively. FIELD OF VIEW For field of view, games usually either determine it from the aspect ratio, or might use a separate and different value for it, by using multipliers like 0.25, 0.5, 0.75. 1.0, setting it in degrees (60º, 65º, 70º, etc.), radians or through another kind of formula. EDITING FILES So to start editing files, a hex editor like it was mentioned above is needed. Usually HxD is a good choice, it's not too hard to learn and has all that's needed for a hex editor. 1. First open the file you want to edit on it either by dragging the file onto the HxD window, or press Ctrl+O and open it from there. 2. Then, when the file is opened, it's time to search for values. First press Ctrl+F, this window will appear, if wanting to find a hexadecimal number, change the datatype to "Hex-values", for integer numbers it's "Integer number" and for floating point numbers like those shown in the "Aspect Ratio" section, change it to "Floating point number". 3. Let's take this example for Lego Racers 2. The game only supports the following resolutions by default: 640x480, 800x600 and 1024x768. 5. To find the right resolution, it's needed to find both width and height values that are close enough to eachother in a file. For that, this program made by myself can be used to determine that: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/releases/tag/utilities 6. Put the downloaded executable in the same folder where the game exe is, run it, put the executable name, write one of the resolutions the game supports, set the byte search range to 15 and type Enter. 7. Since the 800x600 resolution has the least amount of close enough pairs in the executable (just 1), we'll go with it. 8. Go back to HxD, press Ctrl+G and search for the address that was found for the width: 0002A912 (just for info, each pair of numbers or letters represents 1 byte, so the highlighted value below is 2 bytes long). 9. 9. Highlight it, then go to the right side of the window in the "Data inspector" tab, and go to the row where it says Int16. 10. Change it to the desired width, and type Enter. 11. Do the same for the height, highlight the value in the right address you found in the program above and change the value in the Int16 row at the right side. Save the file. 12. Now inside the game, we can see the new resolution that was changed earlier above now appears in the graphics settings, but if it doesn't appear, just set it to the one you changed before (so change it to 800x600 and the resolution in-game will change to the one you set in the file). 13. Now during gameplay we can check the proportions look correct but the camera view looks cropped in relation to 4:3, which means the field of view is reduced with wider resolutions, this scaling behavior is called Vert-, because the vertical field of view is reduced to accomodate the new aspect ratio. This means we have to increase it. 14. For the field of view, it was found the game stores FOV values as degrees, and after some experimentation, it's found the value is 90º. Note that in some games, they might store FOV for different areas of the game in more than one place, it might be either the same value as normal gameplay one, or might be a different FOV value altogether, like using one FOV for menus and another FOV for gameplay, or even different FOVs for each mission. Also cutscenes might have its own FOV assigned to it, so beware. 15. In HxD, press Ctrl+F, change the tab to "Floating point number" and type 90, change "Search direction" to "All", and click in "Search all". 16. All the found 90 values are listed below: 15. To edit each value, double click on one of the results below, and then go to the right side, and change the value in the "Single (float32)" row. You can try editing each value to a much higher one like 130, noting in which address the value is before changing it (see the second screenshot below this one), then saving the file, starting the game and going into gameplay, and seeing if the FOV became much higher, then if not, closing the game and coming back to HxD, changing the value back to 90 in the address you noted before, and going to the next value and doing the same process again until the camera FOV changes in-game. 16. It won't take long to find out it's the second value responsible for the camera FOV ingame, highlight it and change the value according to WSGF's FOV calculator: https://www.wsgf.org/fovcalc.php . Leave it as it is, and change the "number of monitors across" to 1, and change the resolution to the desired one above (in my case it's 1920x1080). 17. Copy the value after where it says "New hFOV =", only copy the number in bold. Also note that if the standard FOV isn't 90º but another number, you can change the number that is after "Old hFOV:" to that one to get the correct FOV for your aspect ratio. 18. After copying the number in step 17, go back to HxD and paste it in the "Single (float32)" row of the second address that was found in the first screenshot of step 15. 19. Now going back in-game, we can see the resolution and field of view were successfully changed and the game is fixed! ADVANCED EDITING THROUGH MEMORY HACKING If changing resolution or FOV values in files doesn't change anything in-game, then memory scanning/debugging softwares like Cheat Engine and code disassemblers like OllyDbg and x32dbg are needed. I'll expand on this section later.
  3. Version 1.0

    1 download

    Comes with a RAR file, which includes a sinbad.exe and a Sinbad Legend of the Seven Seas - Widescreen Fixer v1.0.exe intended to fix the resolution in Sinbad: Legend of the Seven Seas (2003). Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/SinbadLegendofTheSevenSeasWSFix/SinbadLegendofTheSevenSeasWidescreenFix.cpp Instructions 1. Extract both executables to the root game folder, replacing the original sinbad.exe, and extract the 32-bit or 64-bit fixer executable depending if your system is 32 or 64-bits. 2. Run Sinbad Legend of the Seven Seas - Widescreen Fixer v1.0.exe, insert your desired resolution width and height to fix the resolution. Issues: :-: Field of view is lower in wider resolutions than 4:3, I still haven't found the FOV value but will try to do so soon.
  4. Version 1.0

    2 downloads

    Comes with a RAR file, which includes a pac-man.exe and a PacMan Adventures in Time - FOV Fixer v1.0.exe intended to fix the field of view in Pac-Man: Adventures in Time (2000), since the engine stretches the image by default at resolutions with an aspect ratio wider than 4:3. Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/PacmanAdventuresInTimeFOVFix/PacmanAdventuresInTimeFOVFix.cpp Instructions 1. Extract both executables to the root game folder, replacing the original pac-man.exe, and extract the 32-bit or 64-bit fixer executable depending if your system is 32 or 64-bits. 2. Run PacMan Adventures in Time - FOV Fixer v1.0.exe, insert your desired resolution width and height to automatically fix the FOV.
  5. Version 1.0

    12 downloads

    Comes with a RAR file, which includes a Crusaders of Might and Magic - FOV Fixer v1.0.exe intended to fix the field of view in Crusaders of Might and Magic (1999), since the game's engine, Emote Animation Technology (EAT), crops the view at aspect ratios wider than 4:3. Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/CrusadersofMightandMagicFOVFix/CoMMFOVFix.cpp Instructions 1. Extract Crusaders of Might and Magic - FOV Fixer v1.0.exe to the root game folder (32 or 64 one, depending if your system is 32 or 64-bits). 2. Run Crusaders of Might and Magic - FOV Fixer v1.0.exe, and insert your desired resolution width and height. 3. The FOV will be fixed in-game after that.
  6. Version 1.0

    7 downloads

    Comes with a RAR file, which includes a modified GreatQuest.exe and a Frogger The Great Quest - Widescreen Fixer v1.0.exe, intended to fix the field of view and resolution in Frogger: The Great Quest (2002). Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/FroggerTheGreatQuestWSFix/FroggerTheGreatQuestWidescreenFix.cpp Instructions 1. Extract both executables to the root game folder (32 or 64 depending if your system is 32 or 64 bits), replacing the original game executable (GreatQuest.exe). 2. Run Frogger The Great Quest - Widescreen Fixer v1.0.exe, insert your desired resolution width and height to fix the resolution and FOV automatically. Issues: :-: Menus, loading screens and HUD are kept at 640x480 and don't scale to fill the whole screen, it's practically impossible to see them at very high resolutions. :-: Menu texts and icons are misaligned, but menus are still somewhat usable.
  7. Version 1.0

    6 downloads

    This is a Cheat Engine table file intended to fix the resolution, aspect ratio and FOV in Barbie Horse Adventures: Mystery Ride (2003), as the game only runs in 640x480 by default, with no way of changing resolution either ingame or through configuration files. Instructions: 1. Start the game, 2. Alt+tab and open Cheat Engine. 3. Open the game's process (Barbie Horse.exe) and open the cheat table provided in the fix: Barbie Horse Adventures - Widescreen & FOV Fix.CT 4. Once the scripts appear in the address list in the box below the main one, first type your desired resolution width and height in "Renderer Resolution (Horizontal)" and "Renderer Resolution (Vertical)". 5. Open each of the four scripts below the two fields in step 4 by double clicking in <script>. 6. In line 18 of all scripts, after the "," part, replace the hexadecimal number there with your desired resolution width or height, use this decimal to hexadecimal converter: https://www.rapidtables.com/convert/number/decimal-to-hex.html 7. In the site, enter the desired decimal number, press Convert, and copy the hex number that appears below "Hex number (3 digits)". 8. After doing it for all scripts, click OK and tick the "Active" box of all scripts to activate them, a red cross will appear on the boxes to let you know they are working. 9. For the Aspect Ratio fields, replace the float numbers on those with this formula: width / height (for 16:9 it's 1.777777777777, because 1920 / 1080 = 1.7777777777). 10. For the FOV fields, replace the float numbers with this formula: ( ( width / height ) / ( 4 / 3 ) ) * 0.5 [default is 0.5 for 4:3]. 11. Go back to the game and start a new level or game. That's it. - Issues: :-: This has to be done every time the game is started, as I haven't figured out a way to make all of these changes permanent in the EXE yet. :-: There might be parts where the aspect ratio and FOV might not be fixed, as I haven't tested the whole game yet. :-: Menus and HUD are stretched.
  8. Fixing FOV usually is way more difficult than fixing aspect ratio and resolution (just not more than HUD), since widening FOV might lead to clipping and objects around the 4:3 area not being rendered at all, but finally Automaniak fixed the issue after so long 🙂
  9. Oh I'm sorry, I'll try to adapt the fix to let people choose their own resolution, thanks for letting me know 😄
  10. Version 1.0

    62 downloads

    This RAR file contains files that fix resolution, field of view and HUD in the driving game Driver (1999). All instructions are included in the readme file of the fix. :-: Credits go to: AuToMaNiAk005. Source of the fix in case you wish to contact the author:
  11. Yeah, I guess most people who played this game don't know it either.
  12. Version 1.3

    25 downloads

    Comes with a RAR file, which includes a modified KaosPC.exe and a State of Emergency - Widescreen Fixer v1.3.exe, intended to fix the field of view and resolution in State of Emergency (2003). Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/StateofEmergencyWSFix/StateofEmergencyWidescreenFix.cpp Instructions 1. Extract both executables to the root game folder (32 or 64 depending if your system is 32 or 64 bits), replacing the original KaosPC.exe. 2. Run State of Emergency - Widescreen Fixer v1.3.exe, insert your desired resolution width and height to fix the resolution and FOV automatically.
  13. Version 1.0

    15 downloads

    Comes with a RAR file, which includes a modified Croc2.exe and a Croc 2 - FOV Fixer v1.0.exe intended to fix the field of view in Croc 2 (2000), as the game's engine, Blazing Renderer, stretches the image at resolutions wider than 4:3. Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/Croc2FOVFix/Croc2FOVFix.cpp Instructions 1. Extract both executables to the root game folder (32 or 64 depending if your system is 32 or 64 bits), replacing the original Croc2.exe. 2. Run Croc 2 - FOV Fixer v1.0.exe, insert your desired resolution width and height to fix the FOV automatically.
  14. Version 1.1

    52 downloads

    Comes with a RAR file, which includes a modified CARMA2_HW0.EXE and a Carmageddon 2 - Widescreen Fixer v1.1.exe intended to fix the aspect ratio and field of view in the racing game Carmageddon II: Carpocalypse Now (1998). Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/Carmageddon2WSFix/Carmageddon2WidescreenFix.cpp Instructions 1. Extract both executables to the root game folder, and extract the 32-bit or 64-bit fixer exe depending if your system is 32 or 64-bits. 2. Run Carmageddon 2 - Widescreen Fixer v1.1.exe, insert your desired resolution width and resolution height, and the FOV will be fixed automatically in-game. 3. Download dgVoodoo2, and extract all files inside "MS/x86" folder and also dgVoodooCpl.exe and dgVoodoo.conf, to the game folder and set your desired resolution in the "DirectX" tab. 4. Create a shortcut to CARMA2_HW0.EXE and run the shorcut with the "-d3d" parameter to run the game in Direct3D mode. 5. Run the game and it will run at your chosen resolution. - Issues: :-: Menus and HUD are stretched.
  15. Version 1.0

    11 downloads

    This is a RAR file that contains an Adventure Pinball: Forgotten Island - Resolution Fixer v1.0 exe, intended to fix the resolution support in Adventure Pinball: Forgotten Island (2001), since the game's default Direct3D driver (D3DDrv.dll) only supports some resolutions, like 640x480, 800x600, 1024x768, 1280x1024 and 1600x1200, and changing to another one in PB.ini makes the engine revert to one of the hardcoded resolutions in the driver. This fix overrides all those resolutions in the driver DLL, and it reports the selected resolution in the fixer as available, and can be changed in PB.ini. Source code available here: https://github.com/alphayellow1/AlphaYellowWidescreenFixes/blob/main/source/AdventurePinballForgottenIslandResolutionFix/AdventurePinballForgottenIslandResolutionFix.cpp Instructions: 1. Extract Adventure Pinball: Forgotten Island - Resolution Fixer v1.0 exe to (path-to-game)/System/, run it and type the desired resolution width and height, and extract the 32-bit or 64-bit fixer exe depending if your system is 32 or 64-bits. 2. Follow the instructions that appear inside the fixer. 3. For very high resolutions like 4K, a DirectX wrapper like dgVoodoo2 or dxWrapper is required.
×
×
  • Create New...