\r
- Allow an item respawn time of -1 (never respawn again). Useful for RPG and Single Player maps\r
\r
-- Use bot personalities (specified in bots.txt) for vore too, and remove what VoreTournament doesn't use from them any more\r
-\r
Known bugs:\r
-//bot configuration: name model skin shirt pants team keyboard use moving dodging ping weapon use aggressivity range aiming calmhand mouse fightthink aithink\r
+//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\r
//default team values (team-override): 1 = red, 2 = blue, 3 = yellow, 4 = pink \r
//use -1 for shirt-color or pants-color to get random colors \r
-DarkVixen vixen.zym 1 4 0 0 0 0 -0.5 -1 1 1 -0.5 -1 -1 2 0.5 -1\r
-Rainbow vixen.zym 1 15 0 0 0 -1 -1 -1 0 2 0 1 0 2 -1 -1\r
-VorePrincess vixen.zym 0 -1 0 0 -0.5 0 0 1 -0.5 0 1 0 0 0 0 0\r
-Eater vixen.zym 0 1 1 0 0 -1 0 -0.5 0.5 1 0 1 -2 1 0 0\r
-HungryFox vixen.zym 1 8 14 0 0 0 0 1 0 -1 -0.5 -1 1 0 0 0\r
-Angel vixen.zym 1 0 0 0 0 0 0 2 -1 0 0 0 -1 0 0 0\r
-Mystic vixen.zym 0 11 4 0 0 0 0 -0.5 -1 1 0.5 0.5 -0.5 0 0.5 0\r
-Sweetie vixen.zym 0 9 9 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1\r
-Silver vixen.zym 1 6 5 0 1 1.5 2 -1 -1 -1 1 0 1 -0.5 -1 -1\r
-Shadow vixen.zym 0 4 8 0 -0.5 2 1 0 0 -1 0 -1 0 1 -1 -0.5\r
-BellyFox vixen.zym 1 12 -1 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0\r
-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\r
+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\r
+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\r
+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\r
+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\r
+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\r
+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\r
+Sweetie vixen.zym 0 9 9 0 1 1 1 1 -1 -1 0 1 1 -2 -1 -1 1 0.5 1.25\r
+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\r
+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\r
+BellyFox vixen.zym 1 12 -1 0 1 1 1 1 -1 0 0.5 0 -2 0 -1 0 0.75 1 1\r
+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
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
.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
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;
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))