Skip to content

Commit

Permalink
All Games|Cleanup: Set the required packages for each game
Browse files Browse the repository at this point in the history
Currently there only are the legacy data files.
  • Loading branch information
skyjake committed Jan 19, 2016
1 parent 5af4ffc commit c14b925
Show file tree
Hide file tree
Showing 6 changed files with 53 additions and 40 deletions.
3 changes: 0 additions & 3 deletions doomsday/apps/client/src/dd_main.cpp
Expand Up @@ -1396,9 +1396,6 @@ bool App_ChangeGame(Game &game, bool allowReload)

#ifdef __CLIENT__
ClientApp::inputSystem().initAllDevices();
#endif

#ifdef __CLIENT__
R_InitViewWindow();
#endif

Expand Down
17 changes: 10 additions & 7 deletions doomsday/apps/libdoomsday/src/resource/resources.cpp
Expand Up @@ -39,13 +39,13 @@ DENG2_PIMPL(Resources)
{
theResources = thisPublic;

resClasses.append(new ResourceClass("RC_PACKAGE", "Packages"));
resClasses.append(new ResourceClass("RC_DEFINITION", "Defs"));
resClasses.append(new ResourceClass("RC_GRAPHIC", "Graphics"));
resClasses.append(new ResourceClass("RC_MODEL", "Models"));
resClasses.append(new ResourceClass("RC_SOUND", "Sfx"));
resClasses.append(new ResourceClass("RC_MUSIC", "Music"));
resClasses.append(new ResourceClass("RC_FONT", "Fonts"));
resClasses << new ResourceClass("RC_PACKAGE", "Packages")
<< new ResourceClass("RC_DEFINITION", "Defs")
<< new ResourceClass("RC_GRAPHIC", "Graphics")
<< new ResourceClass("RC_MODEL", "Models")
<< new ResourceClass("RC_SOUND", "Sfx")
<< new ResourceClass("RC_MUSIC", "Music")
<< new ResourceClass("RC_FONT", "Fonts");

// Determine the root directory of the saved session repository.
if(auto arg = App::commandLine().check("-savedir", 1))
Expand All @@ -54,6 +54,9 @@ DENG2_PIMPL(Resources)
App::commandLine().makeAbsolutePath(arg.pos + 1);
nativeSavePath = App::commandLine().at(arg.pos + 1);
}

// The legacy base package is still needed for all games (doomsday.pk3).
App::packageLoader().load("net.dengine.legacy.base");
}

~Instance()
Expand Down
36 changes: 21 additions & 15 deletions doomsday/apps/plugins/doom/src/d_api.cpp
Expand Up @@ -69,19 +69,25 @@ static char const *gameIds[NUM_GAME_MODES] =
"doom2-freedm",
};

#define STARTUPPK3 "libdoom.pk3"
#define LEGACYSAVEGAMENAMEEXP "^(?:DoomSav)[0-9]{1,1}(?:.dsg)"
#define LEGACYSAVEGAMESUBFOLDER "savegame"

static void setCommonParameters(Game &game)
{
game.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
game.setRequiredPackages(StringList() << "net.dengine.legacy.doom_2");
}

/**
* Register the game modes supported by this plugin.
*/
int G_RegisterGames(int hookType, int param, void *data)
{
Games &games = DoomsdayApp::games();

#define STARTUPPK3 "libdoom.pk3"
#define LEGACYSAVEGAMENAMEEXP "^(?:DoomSav)[0-9]{1,1}(?:.dsg)"
#define LEGACYSAVEGAMESUBFOLDER "savegame"

DENG_UNUSED(hookType); DENG_UNUSED(param); DENG_UNUSED(data);

Games &games = DoomsdayApp::games();

/* HacX */
Game &hacx = games.defineGame(gameIds[doom2_hacx],
Record::withMembers(Game::DEF_CONFIG_DIR, "hacx",
Expand All @@ -90,7 +96,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hacx.mapinfo"));
hacx.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(hacx);
hacx.addResource(RC_PACKAGE, FF_STARTUP, "hacx.wad", "HACX-R;PLAYPAL");
hacx.addResource(RC_DEFINITION, 0, "hacx.ded", 0);

Expand All @@ -102,7 +108,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/chex.mapinfo"));
chex.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(chex);
chex.addResource(RC_PACKAGE, FF_STARTUP, "chex.wad", "E1M1;E4M1;_DEUTEX_;POSSH0M0");
chex.addResource(RC_DEFINITION, 0, "chex.ded", 0);

Expand All @@ -114,7 +120,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom2-tnt.mapinfo"));
tnt.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(tnt);
tnt.addResource(RC_PACKAGE, FF_STARTUP, "tnt.wad", "CAVERN5;CAVERN7;STONEW1");
tnt.addResource(RC_DEFINITION, 0, "doom2-tnt.ded", 0);

Expand All @@ -126,7 +132,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom2-plut.mapinfo"));
plut.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(plut);
plut.addResource(RC_PACKAGE, FF_STARTUP, "plutonia.wad", "_DEUTEX_;MAP01;MAP25;MC5;MC11;MC16;MC20");
plut.addResource(RC_DEFINITION, 0, "doom2-plut.ded", 0);

Expand All @@ -138,7 +144,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom2-freedm.mapinfo"));
freedm.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(freedm);
freedm.addResource(RC_PACKAGE, FF_STARTUP, "freedm.wad", "MAP01");
freedm.addResource(RC_DEFINITION, 0, "doom2-freedm.ded", 0);

Expand All @@ -150,7 +156,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom2.mapinfo"));
d2.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(d2);
d2.addResource(RC_PACKAGE, FF_STARTUP, "doom2f.wad;doom2.wad", "MAP01;MAP02;MAP03;MAP04;MAP10;MAP20;MAP25;MAP30;VILEN1;VILEO1;VILEQ1;GRNROCK");
d2.addResource(RC_DEFINITION, 0, "doom2.ded", 0);

Expand All @@ -162,7 +168,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom1-ultimate.mapinfo"));
ultimate.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(ultimate);
ultimate.addResource(RC_PACKAGE, FF_STARTUP, "doomu.wad;doom.wad", "E4M1;E4M2;E4M3;E4M4;E4M5;E4M6;E4M7;E4M8;E4M9;M_EPI4");
ultimate.addResource(RC_DEFINITION, 0, "doom1-ultimate.ded", 0);

Expand All @@ -174,7 +180,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom1.mapinfo"));
d1.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(d1);
d1.addResource(RC_PACKAGE, FF_STARTUP, "doom.wad", "E2M1;E2M2;E2M3;E2M4;E2M5;E2M6;E2M7;E2M8;E2M9;E3M1;E3M2;E3M3;E3M4;E3M5;E3M6;E3M7;E3M8;E3M9;CYBRE1;CYBRD8;FLOOR7_2");
d1.addResource(RC_DEFINITION, 0, "doom1.ded", 0);

Expand All @@ -186,7 +192,7 @@ int G_RegisterGames(int hookType, int param, void *data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/doom1-share.mapinfo"));
shareware.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(shareware);
shareware.addResource(RC_PACKAGE, FF_STARTUP, "doom1.wad", "E1M1;E1M2;E1M3;E1M4;E1M5;E1M6;E1M7;E1M8;E1M9;D_E1M1;FLOOR4_8;FLOOR7_2");
shareware.addResource(RC_DEFINITION, 0, "doom1-share.ded", 0);
return true;
Expand Down
1 change: 1 addition & 0 deletions doomsday/apps/plugins/doom64/src/d64_api.cpp
Expand Up @@ -72,6 +72,7 @@ int G_RegisterGames(int hookType, int param, void* data)
game.addResource(RC_PACKAGE, FF_STARTUP, "libdoom64.pk3", 0);
game.addResource(RC_PACKAGE, FF_STARTUP, "doom64.wad", "MAP01;MAP20;MAP33;F_SUCK");
game.addResource(RC_DEFINITION, 0, PLUGIN_NAMETEXT ".ded", 0);
game.setRequiredPackages(StringList() << "net.dengine.legacy.doom64_2");
return true;
}

Expand Down
3 changes: 3 additions & 0 deletions doomsday/apps/plugins/heretic/src/h_api.cpp
Expand Up @@ -84,6 +84,7 @@ int G_RegisterGames(int hookType, int param, void* data)
extended.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
extended.addResource(RC_PACKAGE, FF_STARTUP, "heretic.wad", "EXTENDED;E5M2;E5M7;E6M2;MUMSIT;WIZACT;MUS_CPTD;CHKNC5;SPAXA1A5");
extended.addResource(RC_DEFINITION, 0, "heretic-ext.ded", 0);
extended.setRequiredPackages(StringList() << "net.dengine.legacy.heretic_2");

/* Heretic */
Game &htc = games.defineGame(gameIds[heretic],
Expand All @@ -96,6 +97,7 @@ int G_RegisterGames(int hookType, int param, void* data)
htc.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
htc.addResource(RC_PACKAGE, FF_STARTUP, "heretic.wad", "E2M2;E3M6;MUMSIT;WIZACT;MUS_CPTD;CHKNC5;SPAXA1A5");
htc.addResource(RC_DEFINITION, 0, "heretic.ded", 0);
htc.setRequiredPackages(StringList() << "net.dengine.legacy.heretic_2");

/* Heretic (Shareware) */
Game &shareware = games.defineGame(gameIds[heretic_shareware],
Expand All @@ -108,6 +110,7 @@ int G_RegisterGames(int hookType, int param, void* data)
shareware.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
shareware.addResource(RC_PACKAGE, FF_STARTUP, "heretic1.wad", "E1M1;MUMSIT;WIZACT;MUS_CPTD;CHKNC5;SPAXA1A5");
shareware.addResource(RC_DEFINITION, 0, "heretic-share.ded", 0);
shareware.setRequiredPackages(StringList() << "net.dengine.legacy.heretic_2");
return true;

#undef STARTUPPK3
Expand Down
33 changes: 18 additions & 15 deletions doomsday/apps/plugins/hexen/src/x_api.cpp
Expand Up @@ -61,19 +61,23 @@ static char const *gameIds[NUM_GAME_MODES] =
"hexen-v10",
};

/**
* Register the game modes supported by this plugin.
*/
int G_RegisterGames(int hookType, int param, void* data)
{
Games &games = DoomsdayApp::games();

#define CONFIGDIR "hexen"
#define STARTUPPK3 "libhexen.pk3"
#define LEGACYSAVEGAMENAMEEXP "^(?:hex)[0-9]{1,1}(?:.hxs)"
#define LEGACYSAVEGAMESUBFOLDER "hexndata"

DENG_UNUSED(hookType); DENG_UNUSED(param); DENG_UNUSED(data);
static void setCommonParameters(Game &game)
{
game.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
game.setRequiredPackages(StringList() << "net.dengine.legacy.hexen_2");
}

/**
* Register the game modes supported by this plugin.
*/
int G_RegisterGames(int, int, void *)
{
Games &games = DoomsdayApp::games();

/* Hexen (Death Kings) */
Game &deathkings = games.defineGame(gameIds[hexen_deathkings],
Expand All @@ -83,8 +87,7 @@ int G_RegisterGames(int hookType, int param, void* data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hexen-dk.mapinfo"));

deathkings.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(deathkings);
deathkings.addResource(RC_PACKAGE, FF_STARTUP, "hexdd.wad", "MAP59;MAP60");
deathkings.addResource(RC_PACKAGE, FF_STARTUP, "hexen.wad", "MAP08;MAP22;TINTTAB;FOGMAP;TRANTBLA;DARTA1;ARTIPORK;SKYFOG;TALLYTOP;GROVER");
deathkings.addResource(RC_DEFINITION, 0, "hexen-dk.ded", 0);
Expand All @@ -97,8 +100,8 @@ int G_RegisterGames(int hookType, int param, void* data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hexen.mapinfo"));
setCommonParameters(hxn);
hxn.addResource(RC_PACKAGE, FF_STARTUP, "hexen.wad", "MAP08;MAP22;TINTTAB;FOGMAP;TRANTBLA;DARTA1;ARTIPORK;SKYFOG;TALLYTOP;GROVER");
hxn.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
hxn.addResource(RC_DEFINITION, 0, "hexen.ded", 0);

/* Hexen (v1.0) */
Expand All @@ -109,7 +112,7 @@ int G_RegisterGames(int hookType, int param, void* data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hexen.mapinfo"));
hexen10.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(hexen10);
hexen10.addResource(RC_PACKAGE, FF_STARTUP, "hexen.wad", "MAP08;MAP22;MAP41;TINTTAB;FOGMAP;DARTA1;ARTIPORK;SKYFOG;GROVER");
hexen10.addResource(RC_DEFINITION, 0, "hexen-v10.ded", 0);

Expand All @@ -121,7 +124,7 @@ int G_RegisterGames(int hookType, int param, void* data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hexen.mapinfo"));
demo.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(demo);
demo.addResource(RC_PACKAGE, FF_STARTUP, "hexendemo.wad;machexendemo.wad;hexen.wad", "MAP01;MAP04;TINTTAB;FOGMAP;DARTA1;ARTIPORK;DEMO3==18150");
demo.addResource(RC_DEFINITION, 0, "hexen-demo.ded", 0);

Expand All @@ -133,15 +136,15 @@ int G_RegisterGames(int hookType, int param, void* data)
Game::DEF_LEGACYSAVEGAME_NAME_EXP, LEGACYSAVEGAMENAMEEXP,
Game::DEF_LEGACYSAVEGAME_SUBFOLDER, LEGACYSAVEGAMESUBFOLDER,
Game::DEF_MAPINFO_PATH, "$(App.DataPath)/$(GamePlugin.Name)/hexen.mapinfo"));
beta.addResource(RC_PACKAGE, FF_STARTUP, STARTUPPK3, 0);
setCommonParameters(beta);
beta.addResource(RC_PACKAGE, FF_STARTUP, "hexendemo.wad;machexendemo.wad;hexenbeta.wad;hexen.wad", "MAP01;MAP04;TINTTAB;FOGMAP;DARTA1;ARTIPORK;AFLYA0;DEMO3==13866");
beta.addResource(RC_DEFINITION, 0, "hexen-demo.ded", 0);

return true;
}

#undef STARTUPPK3
#undef CONFIGDIR
}

/**
* Called right after the game plugin is selected into use.
Expand Down

0 comments on commit c14b925

Please sign in to comment.