- BCOMPATF_NOSECTIONMERGE is not safe for the self referencing sector hacks in the Final doom IWADs.

This commit is contained in:
Christoph Oelckers 2023-06-16 21:53:42 +02:00
parent 89d8c7b4fe
commit 99c76a3ff5
2 changed files with 12 additions and 13 deletions

View file

@ -292,12 +292,11 @@ FName MapLoader::CheckCompatibility(MapData *map)
Level->ib_compatflags = 0;
// When playing Doom IWAD levels force BCOMPATF_NOSECTIONMERGE, COMPAT_SHORTTEX and COMPATF_LIGHT.
// I'm not sure if the IWAD maps actually need COMPATF_LIGHT but it certainly does not hurt. BCOMPATF_NOSECTIONMERGE is mainly for MAP18's sector 0
// I'm not sure if the IWAD maps actually need COMPATF_LIGHT but it certainly does not hurt.
// TNT's MAP31 also needs COMPATF_STAIRINDEX but that only gets activated for TNT.WAD.
if (fileSystem.GetFileContainer(map->lumpnum) == fileSystem.GetIwadNum() && (gameinfo.flags & GI_COMPATSHORTTEX) && Level->maptype == MAPTYPE_DOOM)
{
Level->ii_compatflags = COMPATF_SHORTTEX|COMPATF_LIGHT;
Level->ib_compatflags = BCOMPATF_NOSECTIONMERGE;
if (gameinfo.flags & GI_COMPATSTAIRS) Level->ii_compatflags |= COMPATF_STAIRINDEX;
}

View file

@ -326,7 +326,7 @@ IWad
Config = "Doom"
IWADName = "doom.wad", 2
Mapinfo = "mapinfo/ultdoom.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "E1M1","E2M1","E2M2","E2M3","E2M4","E2M5","E2M6","E2M7","E2M8","E2M9",
"E3M1","E3M2","E3M3","E3M4","E3M5","E3M6","E3M7","E3M8","E3M9",
"DPHOOF","BFGGA0","HEADA1","CYBRA1","SPIDA1D1", "E4M2",
@ -343,7 +343,7 @@ IWad
Config = "Doom"
IWADName = "doomunity.wad", 2
Mapinfo = "mapinfo/ultdoom.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "E1M1","E2M1","E2M2","E2M3","E2M4","E2M5","E2M6","E2M7","E2M8","E2M9",
"E3M1","E3M2","E3M3","E3M4","E3M5","E3M6","E3M7","E3M8","E3M9",
"DPHOOF","BFGGA0","HEADA1","CYBRA1","SPIDA1D1", "E4M2",
@ -375,7 +375,7 @@ IWad
Config = "Doom"
IWADName = "doom.wad"
Mapinfo = "mapinfo/doomxbox.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "E1M1","E2M1","E2M2","E2M3","E2M4","E2M5","E2M6","E2M7","E2M8","E2M9",
"E3M1","E3M2","E3M3","E3M4","E3M5","E3M6","E3M7","E3M8","E3M9",
"DPHOOF","BFGGA0","HEADA1","CYBRA1","SPIDA1D1", "E4M2", "E1M10", "SEWERS"
@ -391,7 +391,7 @@ IWad
Config = "Doom"
IWADName = "doom.wad"
Mapinfo = "mapinfo/ultdoom.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "E1M1","E2M1","E2M2","E2M3","E2M4","E2M5","E2M6","E2M7","E2M8","E2M9",
"E3M1","E3M2","E3M3","E3M4","E3M5","E3M6","E3M7","E3M8","E3M9",
"DPHOOF","BFGGA0","HEADA1","CYBRA1","SPIDA1D1", "E4M2"
@ -407,7 +407,7 @@ IWad
Config = "Doom"
IWADName = "doom.wad", 1
Mapinfo = "mapinfo/doom1.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "E1M1","E2M1","E2M2","E2M3","E2M4","E2M5","E2M6","E2M7","E2M8","E2M9",
"E3M1","E3M2","E3M3","E3M4","E3M5","E3M6","E3M7","E3M8","E3M9",
"DPHOOF","BFGGA0","HEADA1","CYBRA1","SPIDA1D1"
@ -422,7 +422,7 @@ IWad
Game = "Doom"
Config = "Doom"
Mapinfo = "mapinfo/doom1.txt"
Compatibility = "Shareware", "Shorttex"
Compatibility = "Shareware", "Shorttex", "nosectionmerge"
MustContain = "E1M1"
BannerColors = "54 54 54", "a8 a8 a8"
IgnoreTitlePatches = 1
@ -492,7 +492,7 @@ IWad
Config = "Doom"
IWADName = "doom2.wad"
Mapinfo = "mapinfo/doom2bfg.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "MAP01", "DMENUPIC", "M_ACPT", "M_CAN", "M_EXITO", "M_CHG"
BannerColors = "a8 00 00", "a8 a8 a8"
Load = "nerve.wad"
@ -507,7 +507,7 @@ IWad
Config = "Doom"
IWADName = "doom2unity.wad"
Mapinfo = "mapinfo/doom2unity.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "MAP01", "DMENUPIC"
BannerColors = "00 7c 00", "a8 a8 a8"
IgnoreTitlePatches = 1
@ -522,7 +522,7 @@ IWad
Config = "Doom"
IWADName = "doom2.wad", 1
Mapinfo = "mapinfo/doom2xbox.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "MAP01", "MAP33", "CWILV32"
BannerColors = "18 18 18", "a8 a8 a8"
IgnoreTitlePatches = 1
@ -538,7 +538,7 @@ IWad
Config = "Doom"
IWADName = "doom2f.wad", 1
Mapinfo = "mapinfo/doom2.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "MAP01", "WIOBJ"
BannerColors = "ff ff ff", "a8 00 00"
}
@ -552,7 +552,7 @@ IWad
Config = "Doom"
IWADName = "doom2.wad", 1
Mapinfo = "mapinfo/doom2.txt"
Compatibility = "Shorttex"
Compatibility = "Shorttex", "nosectionmerge"
MustContain = "MAP01"
BannerColors = "a8 00 00", "a8 a8 a8"
IgnoreTitlePatches = 1