mirror of
https://github.com/sfall-team/sfall.git
synced 2026-07-27 16:52:34 -07:00
Added an option to disable Arroyo-related events
Minor fix to DisableSpecialMapIDs (as ID 0 is still a valid map). Edited some descriptions in ddraw.ini.
This commit is contained in:
+14
-4
@@ -1,5 +1,5 @@
|
||||
;sfall configuration settings
|
||||
;v4.4.7
|
||||
;v4.4.7.1
|
||||
|
||||
[Main]
|
||||
;Set to 1 to enable the built-in High Resolution Patch mode that is similar to the hi-res patch by Mash
|
||||
@@ -156,7 +156,7 @@ AllowSoundForFloats=0
|
||||
;This does not effect the play_sfall_sound and stop_sfall_sound script functions
|
||||
AllowDShowSound=0
|
||||
|
||||
;Set to 1 to override the default music path with data\sound\music\ if music_path is not present in the cfg
|
||||
;Set to 1 to override the default music path with data\sound\music\ if music_path is not present in fallout2.cfg
|
||||
;Set to 2 to overwrite all occurrences of the music path
|
||||
OverrideMusicDir=1
|
||||
|
||||
@@ -783,15 +783,25 @@ PartyMemberSkillFix=0
|
||||
;Set to -1 to disable the special death message when the global variable is set
|
||||
SpecialDeathGVAR=491
|
||||
|
||||
;Set to 1 to disable the special handling of map IDs 19 and 37 in the engine when entering the maps
|
||||
;Set to 1 to disable the engine's special handling of map IDs 19 and 37 when entering those maps
|
||||
;Note that enabling this option will break the map changes in Modoc and Vault 15 in Fallout 2
|
||||
DisableSpecialMapIDs=0
|
||||
|
||||
;Set to 1 to disable the special handling of city areas 45 and 46 in the engine when visiting Area 45:
|
||||
;Set to 1 to disable the engine's special handling of city areas 45 and 46 when visiting Area 45:
|
||||
;Area 45 automatically disappears from the world map, and Area 46 appears on the world map
|
||||
;Note that enabling this option will break the location change of the 'Fake Vault 13' in Fallout 2
|
||||
DisableSpecialAreas=0
|
||||
|
||||
;Set to 1 to disable the engine's processing of events related to Arroyo (areas 0 and 22)
|
||||
;This also disables the playback of Hakunin dream sequences and the processing of global variables:
|
||||
;GVAR_ENEMY_ARROYO (7), GVAR_TOWN_REP_ARROYO (47), GVAR_FALLOUT_2 (494)
|
||||
DisableArroyoEvents=0
|
||||
|
||||
;Set to 1 to fix the issue with the division operator treating negative integers as unsigned
|
||||
;Note: To perform the unsigned integer division, use the new 'div' operator
|
||||
;This option is always enabled in 4.3.5/3.8.35 or later. The information is left for reference only
|
||||
DivisionOperatorFix=1
|
||||
|
||||
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||
; Configuration ini files
|
||||
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||
|
||||
@@ -639,7 +639,7 @@ static void EncounterTableSizePatch() {
|
||||
|
||||
static void DisablePipboyAlarmPatch() {
|
||||
if (IniReader::GetConfigInt("Misc", "DisablePipboyAlarm", 0)) {
|
||||
dlogr("Applying Disable Pip-Boy alarm button patch.", DL_INIT);
|
||||
dlogr("Applying disable Pip-Boy alarm button patch.", DL_INIT);
|
||||
SafeWrite8(0x499518, CodeType::Ret);
|
||||
SafeWrite8(0x443601, 0);
|
||||
}
|
||||
@@ -977,7 +977,7 @@ void MiscPatches::init() {
|
||||
// Remove hardcoding for maps with IDs 19 and 37
|
||||
if (IniReader::GetConfigInt("Misc", "DisableSpecialMapIDs", 0)) {
|
||||
dlogr("Applying disable special maps handling patch.", DL_INIT);
|
||||
SafeWriteBatch<BYTE>(0, {0x4836D6, 0x4836DB});
|
||||
SafeWriteBatch<BYTE>(-1, {0x4836D6, 0x4836DB});
|
||||
}
|
||||
|
||||
// Remove hardcoding for city areas 45 and 46 (AREA_FAKE_VAULT_13)
|
||||
@@ -986,6 +986,13 @@ void MiscPatches::init() {
|
||||
SafeWrite8(0x4C0576, CodeType::JumpShort);
|
||||
}
|
||||
|
||||
// Remove processing of events related to Arroyo (areas 0 and 22)
|
||||
if (IniReader::GetConfigInt("Misc", "DisableArroyoEvents", 0)) {
|
||||
dlogr("Applying disable Arroyo-related events patch.", DL_INIT);
|
||||
SafeWrite8(0x4A36BF, CodeType::Jump);
|
||||
SafeWrite32(0x4A36C0, 336); // jmp 0x4A3814 (scriptsCheckGameEvents_)
|
||||
}
|
||||
|
||||
// Set the normal font for death screen subtitles
|
||||
if (IniReader::GetConfigInt("Misc", "DeathScreenFontPatch", 0)) {
|
||||
dlogr("Applying death screen font patch.", DL_INIT);
|
||||
|
||||
Reference in New Issue
Block a user