Skip to content

Commit

Permalink
- changed the filter name for Doom IWADs
Browse files Browse the repository at this point in the history
It's "doom.id.doom1/2" instead of "doom.doom1/2" now.
The config file's content will be renamed and for lump filtering a fallback has been added - note that you cannot combine both naming schemes! The old one has to be considered deprecated now.

This also removes the duplicated content necessitated by the old naming scheme.
  • Loading branch information
coelckers authored and madame-rachelle committed Apr 10, 2019
1 parent b784bb9 commit 08c533a
Show file tree
Hide file tree
Showing 10 changed files with 38 additions and 3,745 deletions.
24 changes: 17 additions & 7 deletions src/gameconfigfile.cpp
Expand Up @@ -210,13 +210,23 @@ void FGameConfigFile::DoAutoloadSetup (FIWadManager *iwad_man)
RenameSection("Freedoom2.Autoload", "doom.freedoom.phase2.Autoload");
RenameSection("Freedoom1.Autoload", "doom.freedoom.phase1.Autoload");
RenameSection("Freedoom.Autoload", "doom.freedoom.Autoload");
RenameSection("DoomBFG.Autoload", "doom.doom1.bfg.Autoload");
RenameSection("DoomU.Autoload", "doom.doom1.ultimate.Autoload");
RenameSection("Doom1.Autoload", "doom.doom1.registered.Autoload");
RenameSection("TNT.Autoload", "doom.doom2.tnt.Autoload");
RenameSection("Plutonia.Autoload", "doom.doom2.plutonia.Autoload");
RenameSection("Doom2BFG.Autoload", "doom.doom2.bfg.Autoload");
RenameSection("Doom2.Autoload", "doom.doom2.commercial.Autoload");
RenameSection("DoomBFG.Autoload", "doom.id.doom1.bfg.Autoload");
RenameSection("DoomU.Autoload", "doom.id.doom1.ultimate.Autoload");
RenameSection("Doom1.Autoload", "doom.id.doom1.registered.Autoload");
RenameSection("TNT.Autoload", "doom.id.doom2.tnt.Autoload");
RenameSection("Plutonia.Autoload", "doom.id.doom2.plutonia.Autoload");
RenameSection("Doom2BFG.Autoload", "doom.id.doom2.bfg.Autoload");
RenameSection("Doom2.Autoload", "doom.id.doom2.commercial.Autoload");
}
else if (last < 218)
{
RenameSection("doom.doom1.bfg.Autoload", "doom.id.doom1.bfg.Autoload");
RenameSection("doom.doom1.ultimate.Autoload", "doom.id.doom1.ultimate.Autoload");
RenameSection("doom.doom1.registered.Autoload", "doom.id.doom1.registered.Autoload");
RenameSection("doom.doom2.tnt.Autoload", "doom.id.doom2.tnt.Autoload");
RenameSection("doom.doom2.plutonia.Autoload", "doom.id.doom2.plutonia.Autoload");
RenameSection("doom.doom2.bfg.Autoload", "doom.id.doom2.bfg.Autoload");
RenameSection("doom.doom2.commercial.Autoload", "doom.id.doom2.commercial.Autoload");
}
const FString *pAuto;
for (int num = 0; (pAuto = iwad_man->GetAutoname(num)) != NULL; num++)
Expand Down
13 changes: 12 additions & 1 deletion src/gamedata/resourcefiles/resourcefile.cpp
Expand Up @@ -367,6 +367,7 @@ void FResourceFile::PostProcessArchive(void *lumps, size_t lumpsize)
{
// Entries in archives are sorted alphabetically
qsort(lumps, NumLumps, lumpsize, lumpcmp);


// Filter out lumps using the same names as the Autoload.* sections
// in the ini file use. We reduce the maximum lump concidered after
Expand Down Expand Up @@ -406,7 +407,17 @@ int FResourceFile::FilterLumps(FString filtername, void *lumps, size_t lumpsize,
return 0;
}
filter << "filter/" << filtername << '/';
if (FindPrefixRange(filter, lumps, lumpsize, max, start, end))

bool found = FindPrefixRange(filter, lumps, lumpsize, max, start, end);

// Workaround for old Doom filter names.
if (!found && filtername.IndexOf("doom.id.doom") == 0)
{
filter.Substitute("doom.id.doom", "doom.doom");
found = FindPrefixRange(filter, lumps, lumpsize, max, start, end);
}

if (found)
{
void *from = (uint8_t *)lumps + start * lumpsize;

Expand Down
2 changes: 1 addition & 1 deletion src/version.h
Expand Up @@ -65,7 +65,7 @@ const char *GetVersionString();
// Version stored in the ini's [LastRun] section.
// Bump it if you made some configuration change that you want to
// be able to migrate in FGameConfigFile::DoGlobalSetup().
#define LASTRUNVERSION "217"
#define LASTRUNVERSION "218"

// Protocol version used in demos.
// Bump it if you change existing DEM_ commands or add new ones.
Expand Down
162 changes: 0 additions & 162 deletions wadsrc/static/filter/doom.doom2/sprofs.txt

This file was deleted.

File renamed without changes.
16 changes: 8 additions & 8 deletions wadsrc/static/iwadinfo.txt
Expand Up @@ -307,7 +307,7 @@ IWad
IWad
{
Name = "DOOM: BFG Edition"
Autoname = "doom.doom1.bfg"
Autoname = "doom.id.doom1.bfg"
Game = "Doom"
Config = "Doom"
IWADName = "doom.wad", 2
Expand All @@ -324,7 +324,7 @@ IWad
IWad
{
Name = "DOOM: Complete: WadSmoosh"
Autoname = "doom.doom2.wadsmoosh"
Autoname = "doom.id.doom2.wadsmoosh"
Game = "Doom"
Config = "Doom"
Mapinfo = "mapinfo/doom2.txt"
Expand All @@ -337,7 +337,7 @@ IWad
IWad
{
Name = "The Ultimate DOOM"
Autoname = "doom.doom1.ultimate"
Autoname = "doom.id.doom1.ultimate"
Game = "Doom"
Config = "Doom"
IWADName = "doom.wad"
Expand All @@ -353,7 +353,7 @@ IWad
IWad
{
Name = "DOOM Registered"
Autoname = "doom.doom1.registered"
Autoname = "doom.id.doom1.registered"
Game = "Doom"
Config = "Doom"
IWADName = "doom.wad", 1
Expand Down Expand Up @@ -381,7 +381,7 @@ IWad
IWad
{
Name = "Final Doom: TNT - Evilution"
Autoname = "doom.doom2.tnt"
Autoname = "doom.id.doom2.tnt"
Game = "Doom"
Config = "Doom"
IWADName = "tnt.wad"
Expand All @@ -395,7 +395,7 @@ IWad
IWad
{
Name = "Final Doom: Plutonia Experiment"
Autoname = "doom.doom2.plutonia"
Autoname = "doom.id.doom2.plutonia"
Game = "Doom"
Config = "Doom"
IWADName = "plutonia.wad"
Expand All @@ -409,7 +409,7 @@ IWad
IWad
{
Name = "DOOM 2: BFG Edition"
Autoname = "doom.doom2.bfg"
Autoname = "doom.id.doom2.bfg"
Game = "Doom"
Config = "Doom"
IWADName = "doom2.wad"
Expand All @@ -425,7 +425,7 @@ IWad
IWad
{
Name = "DOOM 2: Hell on Earth"
Autoname = "doom.doom2.commercial"
Autoname = "doom.id.doom2.commercial"
Game = "Doom"
Config = "Doom"
IWADName = "doom2.wad", 1
Expand Down

0 comments on commit 08c533a

Please sign in to comment.