Page 1 of 1

D3-style singleplayer mode?

Posted: Wed Jan 07, 2009 6:11 pm
by Herr W
Hi everyone!

As the title says, I would like to have a Doom3-style SinglePlayer mode for my Monkeys of Doom, i.e. the player against ALL bots, instead of standard all-against-all. Something like a Team Deathmatch singleplayer mode with only the human player in one of the teams.

What I've found is this tutorial http://rfactory.org/singlegame.html ... which looks pretty much like what I'm looking for. BUT: I'm still a none-coder and can't do much more than copy and paste the given code into the right lines. :rolleyes: (- which worked a couple of times, so I would dare to do it again!)

But before I'd like to know if one of you tried out something similar already and has some tips for me! Seems a not-so-exotic idea, so I'm hopeful... :D

Re: D3-style singleplayer mode?

Posted: Tue Jan 13, 2009 5:04 pm
by Herr W
Hm... Unfortunately that tutorial didn't help me much. It's not very detailed and alters the game much more than I want to.

I hoped there would be a way to leave almost everything as it is in original singleplayer mode (reading the maporder and the botnames from arenas.txt, displaying the podium, unlocking tiers) but only as a Team Deathmatch game instead of Free For All... :question: Anyone with an idea?!

Re: D3-style singleplayer mode?

Posted: Wed Jan 14, 2009 9:47 am
by ^misantropia^
Force the player on one team and the bots on the other. Maybe add a new gametype to the gametype_t enum in game/bg_public.h (at the bottom because lots of code does something like 'if (gametype >= GT_TEAM) {') so you can render the default models instead of the red/blue ones. You'd have to hack cgame/cg_players.c a little so it loads the correct model, but that's not rocket science.

Re: D3-style singleplayer mode?

Posted: Wed Jan 14, 2009 3:01 pm
by Herr W
Hi ^misantropia^, thanks for the quick reply!
^misantropia^ wrote:Force the player on one team and the bots on the other.
... That's what I had in mind!

^misantropia^ wrote:Maybe add a new gametype to the gametype_t enum in game/bg_public.h (at the bottom because lots of code does something like 'if (gametype >= GT_TEAM) {')...
Okay, that is somewhere around HERE

Code: Select all

typedef enum {
	GT_FFA,		// free for all
	GT_TOURNAMENT,		// one on one tournament
	GT_SINGLE_PLAYER,	// single player ffa

	//-- team games go after this --

	GT_TEAM,			// team deathmatch
	GT_CTF,				// capture the flag
	GT_1FCTF,
	GT_OBELISK,
	GT_HARVESTER,
	GT_MAX_GAME_TYPE
} gametype_t;
Hm, but only adding something like GT_SINGLE_TEAM or so wouldn't do much, right?

^misantropia^ wrote:... so you can render the default models instead of the red/blue ones. You'd have to hack cgame/cg_players.c a little so it loads the correct model...
To keep it as simple as possible for a dummy like me: Let's say the bots are all in the red team (that textures look pretty similar to the default ones in MoD anyway).
^misantropia^ wrote:... but that's not rocket science.
If it only was. It's Herr W...erner von Braun. But coding..? No way! :clownboat: