From: MirceaKitsune Date: Wed, 8 Sep 2010 00:55:06 +0000 (+0300) Subject: 3 vore personalities for bots (multiplied by the bot_ai_vore_* cvars) X-Git-Url: http://de.git.xonotic.org/?p=voretournament%2Fvoretournament.git;a=commitdiff_plain;h=51830b8602df50cad9ca44363501777ce767d10b 3 vore personalities for bots (multiplied by the bot_ai_vore_* cvars) --- diff --git a/Todo & known bugs.txt b/Todo & known bugs.txt index d6abe91f..71ad134b 100644 --- a/Todo & known bugs.txt +++ b/Todo & known bugs.txt @@ -6,6 +6,4 @@ Todo: - Allow an item respawn time of -1 (never respawn again). Useful for RPG and Single Player maps -- Use bot personalities (specified in bots.txt) for vore too, and remove what VoreTournament doesn't use from them any more - Known bugs: diff --git a/data/bots.txt b/data/bots.txt index 251c1ae4..5ceb17c0 100644 --- a/data/bots.txt +++ b/data/bots.txt @@ -1,15 +1,15 @@ -//bot configuration: name model skin shirt pants team keyboard use moving dodging ping weapon use aggressivity range aiming calmhand mouse fightthink aithink +//bot configuration: name model skin shirt pants team keyboard use moving dodging ping weapon use aggressivity range aiming calmhand mouse fightthink aithink vore vorethink vorefear voreteamheal //default team values (team-override): 1 = red, 2 = blue, 3 = yellow, 4 = pink //use -1 for shirt-color or pants-color to get random colors -DarkVixen vixen.zym 1 4 0 0 0 0 -0.5 -1 1 1 -0.5 -1 -1 2 0.5 -1 -Rainbow vixen.zym 1 15 0 0 0 -1 -1 -1 0 2 0 1 0 2 -1 -1 -VorePrincess vixen.zym 0 -1 0 0 -0.5 0 0 1 -0.5 0 1 0 0 0 0 0 -Eater vixen.zym 0 1 1 0 0 -1 0 -0.5 0.5 1 0 1 -2 1 0 0 -HungryFox vixen.zym 1 8 14 0 0 0 0 1 0 -1 -0.5 -1 1 0 0 0 -Angel vixen.zym 1 0 0 0 0 0 0 2 -1 0 0 0 -1 0 0 0 -Mystic vixen.zym 0 11 4 0 0 0 0 -0.5 -1 1 0.5 0.5 -0.5 0 0.5 0 -Sweetie vixen.zym 0 9 9 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1 -Silver vixen.zym 1 6 5 0 1 1.5 2 -1 -1 -1 1 0 1 -0.5 -1 -1 -Shadow vixen.zym 0 4 8 0 -0.5 2 1 0 0 -1 0 -1 0 1 -1 -0.5 -BellyFox vixen.zym 1 12 -1 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0 -Snack vixen.zym 1 -1 -1 0 0 0 -1.5 -0.5 -0.5 0 0 0 0 -0.5 1.5 1.5 \ No newline at end of file +DarkVixen vixen.zym 1 4 0 0 0 0 -0.5 -1 1 1 -0.5 -1 -1 2 0.5 -1 1.25 1.5 0.5 +Rainbow vixen.zym 1 15 0 0 0 -1 -1 -1 0 2 0 1 0 2 -1 -1 0.75 0.5 1.25 +VorePrincess vixen.zym 0 -1 0 0 -0.5 0 0 1 -0.5 0 1 0 0 0 0 0 1.5 1.25 0.75 +Eater vixen.zym 0 1 1 0 0 -1 0 -0.5 0.5 1 0 1 -2 1 0 0 1 1 0.75 +HungryFox vixen.zym 1 8 14 0 0 0 0 1 0 -1 -0.5 -1 1 0 0 0 1.25 1 0.5 +Angel vixen.zym 1 0 0 0 0 0 0 2 -1 0 0 0 -1 0 0 0 0.75 1.25 1.5 +Mystic vixen.zym 0 11 4 0 0 0 0 -0.5 -1 1 0.5 0.5 -0.5 0 0.5 0 1 1.25 1 +Sweetie vixen.zym 0 9 9 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1 1 0.5 1.25 +Silver vixen.zym 1 6 5 0 1 1.5 2 -1 -1 -1 1 0 1 -0.5 -1 -1 1.25 1 1 +Shadow vixen.zym 0 4 8 0 -0.5 2 1 0 0 -1 0 -1 0 1 -1 -0.5 1.25 1.25 0.75 +BellyFox vixen.zym 1 12 -1 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0 0.75 1 1 +Snack vixen.zym 1 -1 -1 0 0 0 -1.5 -0.5 -0.5 0 0 0 0 -0.5 1.5 1.5 0.75 1 1.25 \ No newline at end of file diff --git a/data/qcsrc/server/bot/bot.qc b/data/qcsrc/server/bot/bot.qc index de6bed13..c9c1e44a 100644 --- a/data/qcsrc/server/bot/bot.qc +++ b/data/qcsrc/server/bot/bot.qc @@ -191,6 +191,10 @@ void bot_setnameandstuff() READSKILL(bot_thinkskill, 1, 0.5); // think skill READSKILL(bot_aiskill, 2, 0); // "ai" skill + READSKILL(bot_vorethink, 1, 0.5); // vore think skill + READSKILL(bot_vorefear, 1, 0.5); // vore fear skill + READSKILL(bot_voreteamheal, 1, 0.5); // vore teamheal skill + self.bot_config_loaded = TRUE; // this is really only a default, JoinBestTeam is called later diff --git a/data/qcsrc/server/bot/bot.qh b/data/qcsrc/server/bot/bot.qh index 0550431e..21adcf1a 100644 --- a/data/qcsrc/server/bot/bot.qh +++ b/data/qcsrc/server/bot/bot.qh @@ -38,6 +38,10 @@ float autoskill_nextthink; .float bot_thinkskill; // target choice .float bot_aiskill; // strategy choice +.float bot_vorethink; // vore decision time +.float bot_vorefear; // vore fear choice +.float bot_voreteamheal; // vore teamheal choice + .float totalfrags_lastcheck; // Custom weapon priorities diff --git a/data/qcsrc/server/bot/havocbot/vore_ai.qc b/data/qcsrc/server/bot/havocbot/vore_ai.qc index 11ef8380..12039c4e 100644 --- a/data/qcsrc/server/bot/havocbot/vore_ai.qc +++ b/data/qcsrc/server/bot/havocbot/vore_ai.qc @@ -36,7 +36,7 @@ void Vore_AI_Teamheal(entity prey) if(self.status_teamhealing > 1) if(Swallow_condition_check_bot(prey)) if(prey.team != self.team) - if(random() * 10 < cvar("bot_ai_vore_decide_teamhealabandon") * skill) // there are 10 bot skill steps + if(random() * 10 < cvar("bot_ai_vore_decide_teamhealabandon") * skill / self.bot_voreteamheal) // there are 10 bot skill steps self.BUTTON_REGURGITATE = TRUE; // release the team mate entity head; @@ -118,11 +118,11 @@ void Vore_AI() random_try = random() * 10; // there are 10 bot skill steps if(prey.items & IT_STRENGTH) // avoid eating bots that have the Strenght powerup - random_try /= cvar("bot_ai_vore_decide_fear"); + random_try /= cvar("bot_ai_vore_decide_fear") * self.bot_vorefear; if(prey.items & IT_INVINCIBLE) // avoid eating bots that have the Invincible powerup - random_try /= cvar("bot_ai_vore_decide_fear"); - decide_prey = cvar("bot_ai_vore_decide_prey") / (skill * 2 + 1); - decide_pred = cvar("bot_ai_vore_decide_pred") / (skill * 2 + 1); + random_try /= cvar("bot_ai_vore_decide_fear") * self.bot_vorefear; + decide_prey = cvar("bot_ai_vore_decide_prey") / (skill * 2 + 1) / self.bot_vorethink; + decide_pred = cvar("bot_ai_vore_decide_pred") / (skill * 2 + 1) / self.bot_vorethink; if(time > self.swallow_retry) if(Swallow_condition_check_bot(prey))