From f0bb92030a0cb715471d4db6f5541b0c24ed35fd Mon Sep 17 00:00:00 2001 From: bones_was_here Date: Tue, 7 May 2024 19:14:18 +1000 Subject: [PATCH] Recognise mod Arcane Dimensions Signed-off-by: bones_was_here --- cmd.c | 11 +++++++++-- com_game.c | 1 + com_game.h | 1 + 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/cmd.c b/cmd.c index 4f9f3e48..de0ae7fe 100644 --- a/cmd.c +++ b/cmd.c @@ -548,8 +548,6 @@ static void Cmd_Exec(cmd_state_t *cmd, const char *filename) if (isdefaultcfg) { // special defaults for specific games go here, these execute before default.cfg - // Nehahra pushable crates malfunction in some levels if this is on - // Nehahra NPC AI is confused by blowupfallenzombies switch(gamemode) { case GAME_NORMAL: @@ -577,6 +575,8 @@ static void Cmd_Exec(cmd_state_t *cmd, const char *filename) "csqc_polygons_defaultmaterial_nocullface 0\n" ); break; + // Nehahra pushable crates malfunction in some levels if this is on + // Nehahra NPC AI is confused by blowupfallenzombies case GAME_NEHAHRA: Cbuf_InsertText(cmd, "\n" "sv_gameplayfix_blowupfallenzombies 0\n" @@ -752,6 +752,13 @@ static void Cmd_Exec(cmd_state_t *cmd, const char *filename) "sv_gameplayfix_unstickentities 1\n" ); break; + // Arcane Dimensions V1.80 Patch 1 assumes engines that don't pass values to CSQC_Init() are DP, + // instead of doing a workaround there we can give it what it really wants (fixes offscreen HUD). + case GAME_AD: + Cbuf_InsertText(cmd, "\n" +"csqc_lowres 1\n" + ); + break; default: Cbuf_InsertText(cmd, "\n" "sv_gameplayfix_blowupfallenzombies 1\n" diff --git a/com_game.c b/com_game.c index 2969d391..2bfaf927 100644 --- a/com_game.c +++ b/com_game.c @@ -87,6 +87,7 @@ static const gamemode_info_t gamemode_info [GAME_COUNT] = { GAME_DOOMBRINGER, GAME_DOOMBRINGER, "doombringer", "-doombringer", "DOOMBRINGER", "DOOMBRINGER", "dbdata", NULL, "doombringer", "doombringer" }, // COMMANDLINEOPTION: Game: -doombringer runs the game DOOMBRINGER { GAME_BATTLEMETAL, GAME_NORMAL, "battlemetal", "-battlemetal", "battlemetal", "battlemetal", "metaldata", NULL, "battlemetal", "battlemetal" }, // COMMANDLINEOPTION: Game: -battlemetal runs the game battleMETAL { GAME_QUAKE15, GAME_NORMAL, "quake15", "-quake15", "Quake 1.5", "Quake_1.5", "id1", "quake15", "quake15", "darkplaces" }, // COMMANDLINEOPTION: Game: -quake15 runs the Quake 1.5 or Quake Combat+ mod +{ GAME_AD, GAME_NORMAL, "ad", "-ad", "Arcane Dimensions", "Arcane_Dimensions", "id1", "ad", "ad", "darkplaces" }, // COMMANDLINEOPTION: Game: -ad runs the Arcane Dimensions mod }; static void COM_SetGameType(int index); diff --git a/com_game.h b/com_game.h index 43bac1da..2d4d0430 100644 --- a/com_game.h +++ b/com_game.h @@ -61,6 +61,7 @@ typedef enum gamemode_e GAME_DOOMBRINGER, // added by Cloudwalk for kristus GAME_BATTLEMETAL, // added by Cloudwalk for Subject9x GAME_QUAKE15, // added by bones_was_here as it depends on an old bug and a workaround + GAME_AD, // added by bones_was_here as it depends on old DP behaviour or csqc_lowres GAME_COUNT } gamemode_t; -- 2.39.2