THIS FORK HAS NO RELATION TO THE OFFICIAL REPOSITORY AND IF YOU HAVE ANY ISSUES SPECIFIC TO THIS FORK, DO NOT CREATE AN ISSUE ON THE OFFICIAL REPOSITORY NOR BOTHER FUSION TEAM WITH IT
I'M ALSO NOT DOING ANY HEAVY WORK ON THIS FORK, NOR DO I KNOW HOW MODDING WORKS, NOR DO I KNOW HOW TO CODE WITH C++, NOR DO I KNOW HOW DOES ASM WORK, NOR DO I KNOW HOW TO PORT MODS. DON'T ASK ME TO.
*Just because it says GFWL Patch doesn't mean you can't use this with xliveless.
*Some features made after v2.4.2 lack an implementation for nonCE, so in some ways, the experience is subpar to CE.
The original repository has no support for GFWL (it does have support for outdated patches themselves, however - props to Fusion Team for keeping new features in-tact for old versions). This fork attempts to mitigate that with several simple fixes:
- Disable the
xlive.dll
check to remove the warning message about requiringxlive.dll
and XLiveLessAddon. - Block
IVMenuAPI.asi
andGTAIVExtraOptions.asi
due to breaking compatibility with FusionFix. - Fix the missing
Multiplayer
button on the phone by changing a simple check in thespcellphonemain.sco
andspcellphonenetwork.sco
. Thanks to ClaudeIII for helping with the ASM part of the code. - Fix the Multiplayer Tutorial. Editing the
spcellphonetutorial.sco
andmultitutorial.sco
made the multiplayer tutorial somewhat functional. Thanks to sTc2201 for providing themultitutorial.sco
fixes. - Fix crash on viewing leaderboard. Thanks to sTc2201 for providing the fix.
- Change the default option of
SkipMenu
to 0 to be able to load into DLC's first. - Change the default option of
RecoilFix
to 0 to avoid being as disadvantage to other players in the multiplayer. - Enable Windowed by default, which also enables Borderless and No Block on Focus Loss.
Keep in mind that you still want additional mods to be used for a pleasant GFWL multiplayer experience, including disabling the mod check to even allow this fork to work.
You can visit the Grand Theft Auto RevIVal Discord Server for more information about GFWL multiplayer and people to play with (this patch was also made for these guys). You can also use HappinessMP to play online on Complete Edition (doesn't allow any mods including FusionFix, however).
Since v3.4, you can just download the fork alone and extract it. ZPatch option modifications stil apply, however.
Install the official release first, move the files out of the plugins
folder into the root one, then apply this patch on top of it.
If using ZolikaPatch, also disable following options in ZolikaPatch.ini
or use the Setup Utility:
- BikePhoneAnimsFix
- BorderlessWindowed
- BuildingAlphaFix
- BuildingDynamicShadows
- CarDynamicShadowFix
- CarPartsShadowFix
- CutsceneFixes
- DoNotPauseOnMinimize
- DualVehicleHeadlights
- EmissiveLerpFix
- EpisodicVehicleSupport
- EpisodicWeaponSupport
- ForceCarHeadlightShadows
- ForceDynamicShadowsEverywhere
- ForceShadowsOnObjects
- HighFPSBikePhysicsFix
- HighFPSSpeedupFix
- HighQualityReflections
- ImprovedShaderStreaming
- MouseFix
- NewMemorySystem
- NoLiveryLimit
- OutOfCommissionFix
- PoliceEpisodicWeaponSupport
- RemoveBoundingBoxCulling
- ReversingLightFix
- SkipIntro
- SkipMenu
I include the rest of the original repository for the purposes of compiling the mod manually (including the patch) if you wish to do so.
- Clone this fork recursively (
git clone https://github.com/gillian-guide/GTAIV.EFLC.FusionFix-GFWL.git --recursive
). - Open
premake5.bat
to generate a compileable Visual Studio project. - Compile the project in
build
with whatever tools you prefer - MSBuild, Visual Studio etc. - Launch
release.bat
and wait for it to finish. - The complete thing should be in the
release
folder.
This projects aims to fix some issues in Grand Theft Auto IV: Complete Edition.
Also available for Max Payne 3 and other games.
Note
Install Grand Theft Auto IV: The Complete Edition (v1.2.0.30 and above required)
Download: GTAIV.EFLC.FusionFix.zip
Unpack content of the archive to your GTAIV: The Complete Edition root directory, where the exe is located.
Warning
Non-Windows users (Proton/Wine) need to perform a DLL override.
Important
This fix was tested only with latest official update and latest ASI Loader (included in the archive).
-
Skip Intro, added an option to skip intro
-
Skip Menu, added an option to skip main menu after startup
-
Borderless, added an option to switch between windowed and borderless modes
-
Motion Blur, separate toggle for motion blur
-
Bloom, separate toggle for bloom
-
FPS Limit, set a custom FPS limit, select from a list of predefined values, or turn it off
-
Antialiasing, a toggle for FXAA or SMAA (comparison)
-
Sun Shafts, a godrays implementation faithful to the original art style
-
Console Gamma, emulates consoles' contrasted look
-
Screen Filter, an option to change color filters in main game and episodes
-
Distant Blur, controls how intense the distant blur is during gameplay
-
Depth Of Field, toggles the effect globally
-
Tree Lighting, offers "PC", "PC" with fixed orange glow ("PC+") and "Console" style tree lighting
-
Always Run, allows to run by default, like in classic GTA games
-
LightSyncRGB, only Logitech hardware is supported, requires Logitech G HUB app
-
Cover Centering, added an option to disable camera centering in cover
-
Raw Input, raw input for menu and adjustments for in-game camera mouse look
-
Alternative Dialogues, when enabled, forces the game to use alternative dialogues in some missions
-
Centering Delay, sets the time before camera starts autocentering on foot
-
FOV, adjusts in-game field of view
-
Letterbox, draws cutscene borders on top and bottom of the screen
-
Pillarbox, draws cutscene borders on screen sides in ultrawide
-
Gamepad Icons, allows to select various controller icon styles (Xbox 360, Xbox One, PS3, PS4, PS5, Nintendo Switch, Steam Deck)
- Fixed recoil behavior that was different when playing with keyboard/mouse and gamepad
- Fixed forced "definition off" setting in cutscenes, now cutscenes will respect the menu setting
- Fixed DLC car lights in TBoGT
- Added various frame limiting options to address fps related issues
- Fixed aiming zoom in TBoGT
- Added an option to fix a bug that only make taxis spawn
- Added a file overload solution that allows to replace game files without actually replacing them
- Added IMG Loader (from update folder)
- Increased corona limit to avoid heavy flickering of game's lights
- Improved ultrawidescreen support
- Added sun shafts
- Added various fixed animations and vehicle models and lamppost coronas
- Fixed glass shards lacking colors
- Restored transparency on pool minigame
- Restored traffic cops in toll booths
- Restored non-cop pedestrians in helicopters flying around city
- Fixed Johnny's incorrect voice lines when exiting the gun shop after buying something (used to use voice lines from Higgin's Heli Tours)
- Restored Luis' voice lines when exiting the gun shop (buying/not buying)
- Restored missing voice lines from Luis & Johnny when exiting the Broker gun shop
- The gun shop owner now uses his unique model (M_M_GunNut_01) instead of the strip club bouncer model (M_Y_bouncer_01).
- The Desert Eagle and Micro SMG are now using their unique sounds when viewing them (required modifying the animation dictionary "missgunlockup.wad")
- Restored the temporary ban from the gun shop when attacking the owner in TLAD/TBOGT
- Chinatown gun shop: Fixed a small bug where the wrong voice line is used after exiting when not buying something
- Restored voice lines from Luis, he'll now respond to what the pilot tells him about the landmarks during the tour
- Workaround for the garage door bug on high framerates, the garage door only closes now when Niko is actually outside of the garage
- Fixed the heli climb QTE being impossible on really high framerates
- Workaround for a bug where Niko dies after being kicked off of Dimitri's helicopter and falling into the water (Deal Ending)
- Workaround for a bug where Jacob crashes the Annihilator on high framerates (Deal Ending)
- Added options to customize shadow blur, bias, cascade blending and filter quality
- Added options to toggle lamppost and headlight shadows
- Added an option to toggle vehicle night shadows
- Added an option to enable extra dynamic shadows
- Added an option to enable dynamic shadow for trees
- Increased shadow render distance to pre 1.0.6.0 levels
- Fixed cascaded shadowmap resolution
Note: most of this content requires additional modifications by the end user to the game, in order to fully use these features.
- Added an option to enable support for APC and buzzard and all their abilities in IV and TLaD
- Added an DSR1, pipe bomb, sticky bomb, AA12 explosive shells, P90 vehicle check, partially parachute in IV, TLaD and TBoGT
- Added an option to enable explosive rounds on annihilator
- Added an option to enable camera bobbing in clubs, cell phone switching, altimeter in helicopters and parachute, explosive sniper and fists cheats
- Added an option to raise height limit for helicopters in base game and TLad to match TBoGT
- Added an option to give P90 and AA12 to SWAT and FIB and M249 to police in helicopters
- Added an option to disable SCO signature check
- Added an option to customize tree alpha
- Added an option to customize corona reflection intensity
- Added an option to fix autoexposure
- Fixed grass height
- Fixed camera stuttering while sprinting and turning with a controller
- Fixed rifle firing delay
- Added an option to fix rain droplets rendering
- Improved phone screen resolution
- Various other fixes, like LOD lights appear at the appropriate time like on the console version
- Restored auto exposure from consoles
-
AimingZoomFix - set to 1 for proper fix, so it behaves like on xbox, set to 2 to have this fixed feature enabled in IV and TLAD, set to -1 to disable this feature. 0 disables the fix, as usual.
-
FpsLimit - enter a desired value to specify the number of frames per second you want for the game. Like 30, 45, 60 or more. This will affect all gameplay.
-
CutsceneFpsLimit - enter a desired value to specify the number of frames per second you want for the game to use on cutscenes only.
-
ScriptCutsceneFovLimit - this is the minimum fov value the game can set during script cutscenes, like this one. It prevents the game to zoom in too much on high fps. Since it's not a proper fix for the issue, you may disable it and use hidden setting ScriptCutsceneFpsLimit that works the same way as CutsceneFpsLimit.
-
DefaultCameraAngleInTLAD - TLAD uses a different camera angle on bikes, this option can force the original IV camera angle. Enabled / Disabled
-
PedDeathAnimFixFromTBOGT - when you perform a counter attack after a dodge in IV & TLAD, the ped after falling and dying performs an additional death animation, which doesn't happen in TBOGT. Enabled / Disabled
-
DisableCameraCenteringInCover - see issue 20.
-
VehicleBudget - allows to increase the budget of vehicles.
-
PedBudget - allows to increase the budget of pedestrians.
-
LightSyncRGB - custom ambient lighting for IV, TLAD and TBOGT, health indication on G-Keys, police lights, ammo counter.
Special thanks to Parallellines0451 AssaultKifle47, RaphaelK12, robi29 and _CP_ for directly contributing with fixes, to Shvab for making RAGE Shader Editor.
Fusion Fix uses dx hook to implement some features. It causes certain 3rd party software to crash/hang the game. To avoid this, Fusion Fix prevents certain dlls from injecting into the game's process.
- Fixed z-fighting
- Fixed object pop-in caused by version 1.0.6.0
- Improved screen door transparency
- Fixed volumetric lights occlusion
- Restored console foliage translucency
- Added an improved tree lighting mode based on PC
- Fixed mismatched intensity of shadow casting lights causing visible pop-in
- Fixed lights that were made invisible with version 1.0.6.0
- Fixed black normal map halos on several surfaces such as asphalt, sidewalks and rocks
- Restored shadow filter from versions prior to 1.0.6.0 and also added an improved one based on it
- Fixed large shadow artifacts visible from high altitudes
- Fixed shadowmap being erroneously blurred before the lighting pass
- Fixed shadows stretching at certain camera angles
- Fixed shadow view distance being lower than the actual rendered distance
- Fixed cutoff penumbras of distant shadows
- Restored normal offset bias from versions prior to 1.0.6.0
- Fixed disconnected night shadows
- Fixed blur artifacts between shadow cascades under some conditions
- Added "pseudo" shadow cascade blending to reduce the disparity between cascades
- Fixed pitch black static vehicle shadows
- Added wind sway for dynamic tree shadows
- Fixed incorrectly offset shadows on water
- Fixed flickering when shadows of transparent objects overlap
- Added parameters to control shadow softness and bias
- Split depth of field, motion blur and stippling filter into separate passes to prevent overlap
- Fixed color banding, most noticeably in the sky
- Added a mask to selectively filter screen door transparency
- Fixed depth of field and bloom not scaling correctly at resolutions higher than 720p
- Fixed excessively blurry screen compared to consoles caused by leftover anti aliasing code
- Restored console bloom and auto exposure
- Restored console timecyc gamma bump
- Fixed flickering auto exposure
- Fixed motion blur losing intensity at high framerates
- Fixed incorrect TLAD noise tiling on water quality levels other than medium
- Fixed TLAD noise aspect ratio
- Added a console-like gamma toggle
- Restored console behavior for tree and terrain reflections
- Fixed excessive specularity of several meshes in Alderney
- Fixed distorted vehicle reflections
- Restored corona depth test in water reflections
- Added a parameter to control corona reflection intensity
- Fixed anisotropic filtering affecting vehicle reflection intensity
- Restored console vehicle reflection behavior relative to dirt level
- Restored console environment reflection intensity
- Fixed distorted mirror reflections at certain camera angles
- Restored console mirror blur
- Fixed soft particles
- Fixed stuttery particle animations caused by version 1.0.5.0
- Fixed rain being almost invisible, especially at night
- Fixed rain streaks becoming shorter at high framerates
- Fixed incorrect water texture tiling on quality levels other than medium
- Fixed flat, mirror-like water surface on AMD graphics cards
- Removed broken shore foam effect
- Fixed outlines around objects when using DXVK
- Partially restored console object fade speed
- Fixed terrain pop-in
- Reduced procobj pop-in for the default view and detail distance values
- Partially fixed building windows visible near the far plane if emissive depth write is disabled
- Adjusted tree mipmap bias
- Restored fence mipmap bias from versions prior to 1.0.6.0
- Fixed incorrect texture filtering used in several shaders
- Added a parameter to control the alpha threshold of tree leaves
- Added support to control vehicle dirt color, rain streak length and textures
- Added AO to gta_normal_spec_reflect_emissive if emissivity is 0 so it can be used to disable night shadows for certain objects
- Partially fixed mirror depth
- Added support to instantaneously turn lamppost bulbs on or off
If you have an idea for a fix, add a module with its implementation to source directory and open a pull request. See contributing.ixx for reference.
We're making a list of GTA IV issues that weren't addressed in official patches.
If you can think of one, submit it here.
If you've encountered an issue, caused by this fix, report it here.