Skip to content

Commit

Permalink
v9.1.1.510
Browse files Browse the repository at this point in the history
+ Added an option to enable unused Busted NISs.
  • Loading branch information
nlgxzef committed Dec 2, 2020
1 parent 0156a3c commit e3c3494
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 1 deletion.
Binary file modified NFSMWExtraOptions/NFSMWExtraOptions.rc
Binary file not shown.
15 changes: 14 additions & 1 deletion NFSMWExtraOptions/dllmain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
float heatLevel, gameSpeed, FallingRainSize, RainAmount, RoadReflection, RainIntensity, RainXing, RainFallSpeed, RainGravity, SplashScreenTimeLimit, CarSelectTireSteerAngle, MaxHeatLevel, MinHeatLevel, WorldAnimationSpeed, CarScale, VTRed, VTBlue, VTGreen, VTBlackBloom, VTColorBloom, VTSaturation, DebugCameraTurboSpeed, DebugCameraSuperTurboSpeed, SBRechargeTime, SBRechargeSpeedLimit, SBMassMultiplier, SpeedingLimit, ExcessiveSpeedingLimit, RecklessDrivingLimit;
int hotkeyToggleForceHeat, hotkeyForceHeatLevel, hotkeyToggleCopLights, hotkeyToggleHeadlights, hotkeyCarHack, hotkeyUnlockAllThings, hotkeyAutoDrive, randomizeCount, hotkeyToggleCops, hotkeyFreezeCamera, NosTrailRepeatCount, UG2SaveMoney;
unsigned char raceType, raceMode, minLaps, maxLaps, minOpponents, maxOpponents, maxLapsRandomQR, maxOpponentsRandomQR, maxBlacklist, csBlacklist, headlightsMode, lowTraffic, medTraffic, highTraffic, ShowHiddenTracks, MaxUniqueOpponentCars, ShowAllCarsInFE, WindowedMode, SelectableMarkerCount, PurchasedCarLimit;
bool copLightsEnabled, HideOnline, ShowOnlineOpts, removeSceneryGroupDoor, removePlayerBarriers, unfreezeKO, EnablePresetAndDebugCars, AlwaysRain, SkipMovies, EnableSound, EnableMusic, EnableCameras, ExOptsTeamTakeOver, ShowSubs, EnableHeatLevelOverride, CarbonStyleRaceProgress, moreVinyls, eatSomeBurgers, UnlockAllThings, GarageRotate, GarageZoom, GarageShowcase, EnableSaveLoadHotPos, EnableMaxPerfOnShop, EnableVTOverride, EnableDebugWorldCamera, DebugWorldCamera, DebugWatchCarCamera, ForceBlackEdition, HelicopterFix, X10Fix, WheelFix, ExperimentalSplitScreenFix, ShowDebugCarCustomize, CarbonStyleBustedScreen, ShowMessage, ReplayBlacklistRaces, PursuitActionMode, MoreCarsForOpponents, VisualFixesAndTweaks, UncensoredBustedScreen, ShowPursuitCops, ShowNonPursuitCops, ShowDebugEventID, CarbonStyleRandomCars, SkipCareerIntro, ShowTimeOfDay, BetterRandomRaces, AllowMultipleInstances, TimeBugFix, NoCatchUp, CarSkinFix, ImmobileColFix, NFSU2StyleLookBackCamera, NoRevLimiter, SkipNISs, ExpandMemoryPools, ShowPresetCarsInFE, AllowLongerProfileNames, DDayFix;
bool copLightsEnabled, HideOnline, ShowOnlineOpts, removeSceneryGroupDoor, removePlayerBarriers, unfreezeKO, EnablePresetAndDebugCars, AlwaysRain, SkipMovies, EnableSound, EnableMusic, EnableCameras, ExOptsTeamTakeOver, ShowSubs, EnableHeatLevelOverride, CarbonStyleRaceProgress, moreVinyls, eatSomeBurgers, UnlockAllThings, GarageRotate, GarageZoom, GarageShowcase, EnableSaveLoadHotPos, EnableMaxPerfOnShop, EnableVTOverride, EnableDebugWorldCamera, DebugWorldCamera, DebugWatchCarCamera, ForceBlackEdition, HelicopterFix, X10Fix, WheelFix, ExperimentalSplitScreenFix, ShowDebugCarCustomize, CarbonStyleBustedScreen, ShowMessage, ReplayBlacklistRaces, PursuitActionMode, MoreCarsForOpponents, VisualFixesAndTweaks, UncensoredBustedScreen, ShowPursuitCops, ShowNonPursuitCops, ShowDebugEventID, CarbonStyleRandomCars, SkipCareerIntro, ShowTimeOfDay, BetterRandomRaces, AllowMultipleInstances, TimeBugFix, NoCatchUp, CarSkinFix, ImmobileColFix, NFSU2StyleLookBackCamera, NoRevLimiter, SkipNISs, ExpandMemoryPools, ShowPresetCarsInFE, AllowLongerProfileNames, DDayFix, BustedNISFix;
DWORD selectedCar, careerCar, raceOptions, Strings, HeatLevelAddr, VTecx, StartingCashDWORD, GameState, ThreadDelay;
HWND windowHandle;

Expand Down Expand Up @@ -785,6 +785,7 @@ void Init()
CarSkinFix = iniReader.ReadInteger("Fixes", "CarSkinFix", 0) == 1;
ImmobileColFix = iniReader.ReadInteger("Fixes", "ImmobileCollisionsFix", 0) == 1;
DDayFix = iniReader.ReadInteger("Fixes", "DDayFix", 1) == 1;
BustedNISFix = iniReader.ReadInteger("Fixes", "BustedNISFix", 1) == 1;

// Misc
WindowedMode = iniReader.ReadInteger("Misc", "WindowedMode", 0);
Expand Down Expand Up @@ -1252,6 +1253,18 @@ void Init()
injector::MakeRangedNOP(0x419019, X10FixCodeCave2Exit, true);
injector::MakeJMP(0x419019, X10FixCodeCave2, true);
}

// Enable unused Busted NISs
if (BustedNISFix)
{
// ChooseArrestAnimation
injector::MakeJMP(0x44D8AE, 0x44D968, true); // Heat level 2
injector::MakeJMP(0x44D8C9, 0x44D968, true); // Heat level 3 - ArrestM07
injector::MakeJMP(0x44D8DA, 0x44D968, true); // Heat level 3 - ArrestM14
injector::MakeJMP(0x44D8F3, 0x44D968, true); // Heat level 3 - ArrestM07b
injector::MakeJMP(0x44D904, 0x44D968, true); // Heat level 3 - ArrestM14b
injector::MakeJMP(0x44D915, 0x44D968, true); // Heat level 3 - ArrestF14/b
}

// Load Any Save Game
// injector::WriteMemory<unsigned char>(0x5ACD4F, 0xEB, true); // Skip hash check, breaks compatibility for non-exopts users
Expand Down
1 change: 1 addition & 0 deletions NFSMWExtraOptionsSettings.ini
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ ZeroBountyFix = 1 // Fixes 0 bounty reward for x10 and higher
CarSkinFix = 0 // (EXPERIMENTAL) Fixes skinless ghost cars. (0 = False (Default), 1 = True)
ImmobileCollisionsFix = 0 // (EXPERIMENTAL) Fixes infinite mass of some objects. (0 = False (Default), 1 = True)
DDayFix = 1 // Fixes an issue when the user is forced to play DDay (prologue) events even if they have done so. (0 = False, 1 = True (Default))
BustedNISFix = 1 // Enables unused Busted NISs by fixing a bug in the chooser function. (0 = False, 1 = True (Default))
[Misc]
WindowedMode = 0 // Runs the game in a window instead of full screen. (0 = False (Default), 1 = True, 2 = Bordered)
Expand Down

0 comments on commit e3c3494

Please sign in to comment.