[nexuiz-commits] r7374 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Fri Aug 7 02:08:21 EDT 2009
Author: div0
Date: 2009-08-07 02:08:21 -0400 (Fri, 07 Aug 2009)
New Revision: 7374
Modified:
trunk/data/qcsrc/server/havocbot_roles.qc
Log:
keyhunt:
1. route to key carrier, not to key
2. adjust ratings
This appears to fix the bot AI on aneurysm.
Modified: trunk/data/qcsrc/server/havocbot_roles.qc
===================================================================
--- trunk/data/qcsrc/server/havocbot_roles.qc 2009-08-06 19:25:40 UTC (rev 7373)
+++ trunk/data/qcsrc/server/havocbot_roles.qc 2009-08-07 06:08:21 UTC (rev 7374)
@@ -333,12 +333,14 @@
}
}
if(!head.owner)
- navigation_routerating(head, ratingscale_dropped, 100000);
+ navigation_routerating(head, ratingscale_dropped * BOT_PICKUP_RATING_HIGH, 100000);
else if(head.team == self.team)
- navigation_routerating(head, ratingscale_team, 100000);
+ navigation_routerating(head.owner, ratingscale_team * BOT_PICKUP_RATING_HIGH, 100000);
else
- navigation_routerating(head, ratingscale_enemy, 100000);
+ navigation_routerating(head.owner, ratingscale_enemy * BOT_PICKUP_RATING_HIGH, 100000);
}
+
+ havocbot_goalrating_items(1, self.origin, 10000);
};
void() havocbot_role_kh_carrier;
@@ -350,7 +352,7 @@
if(self.deadflag != DEAD_NO)
return;
- if (!(self.items & IT_KEY1))
+ if (!(self.kh_next))
{
dprint("changing role to freelancer\n");
self.havocbot_role = havocbot_role_kh_freelancer;
@@ -364,11 +366,10 @@
navigation_goalrating_start();
if(kh_Key_AllOwnedByWhichTeam() == self.team)
- havocbot_goalrating_kh(100000, 1, 1); // bring home
+ havocbot_goalrating_kh(10, 0.1, 0.1); // bring home
else
- havocbot_goalrating_kh(40000, 40000, 1000); // play defensively
+ havocbot_goalrating_kh(4, 4, 1); // play defensively
- havocbot_goalrating_items(10000, self.origin, 10000);
navigation_goalrating_end();
}
}
@@ -378,7 +379,7 @@
if(self.deadflag != DEAD_NO)
return;
- if (self.items & IT_KEY1)
+ if (self.kh_next)
{
dprint("changing role to carrier\n");
self.havocbot_role = havocbot_role_kh_carrier;
@@ -404,13 +405,12 @@
key_owner_team = kh_Key_AllOwnedByWhichTeam();
if(key_owner_team == self.team)
- havocbot_goalrating_kh(100000, 1, 1); // defend key carriers
+ havocbot_goalrating_kh(10, 0.1, 0.1); // defend key carriers
else if(key_owner_team == -1)
- havocbot_goalrating_kh(40000, 10000, 1); // play defensively
+ havocbot_goalrating_kh(4, 1, 0.1); // play defensively
else
- havocbot_goalrating_kh(1, 1, 100000); // ATTACK ANYWAY
+ havocbot_goalrating_kh(0.1, 0.1, 10); // ATTACK ANYWAY
- havocbot_goalrating_items(10000, self.origin, 10000);
navigation_goalrating_end();
}
};
@@ -420,7 +420,7 @@
if(self.deadflag != DEAD_NO)
return;
- if (self.items & IT_KEY1)
+ if (self.kh_next)
{
dprint("changing role to carrier\n");
self.havocbot_role = havocbot_role_kh_carrier;
@@ -447,13 +447,12 @@
key_owner_team = kh_Key_AllOwnedByWhichTeam();
if(key_owner_team == self.team)
- havocbot_goalrating_kh(100000, 1, 1); // defend anyway
+ havocbot_goalrating_kh(10, 0.1, 0.1); // defend anyway
else if(key_owner_team == -1)
- havocbot_goalrating_kh(1, 10000, 40000); // play offensively
+ havocbot_goalrating_kh(0.1, 1, 4); // play offensively
else
- havocbot_goalrating_kh(1, 1, 100000); // ATTACK! EMERGENCY!
+ havocbot_goalrating_kh(0.1, 0.1, 10); // ATTACK! EMERGENCY!
- havocbot_goalrating_items(10000, self.origin, 10000);
navigation_goalrating_end();
}
};
@@ -463,7 +462,7 @@
if(self.deadflag != DEAD_NO)
return;
- if (self.items & IT_KEY1)
+ if (self.kh_next)
{
dprint("changing role to carrier\n");
self.havocbot_role = havocbot_role_kh_carrier;
@@ -498,13 +497,12 @@
key_owner_team = kh_Key_AllOwnedByWhichTeam();
if(key_owner_team == self.team)
- havocbot_goalrating_kh(100000, 1, 1); // defend anyway
+ havocbot_goalrating_kh(10, 0.1, 0.1); // defend anyway
else if(key_owner_team == -1)
- havocbot_goalrating_kh(10000, 40000, 10000); // prefer dropped keys
+ havocbot_goalrating_kh(1, 10, 4); // prefer dropped keys
else
- havocbot_goalrating_kh(1, 1, 100000); // ATTACK ANYWAY
+ havocbot_goalrating_kh(0.1, 0.1, 10); // ATTACK ANYWAY
- havocbot_goalrating_items(10000, self.origin, 10000);
navigation_goalrating_end();
}
};
More information about the nexuiz-commits
mailing list