ineed bots e71722bbe9 a lot
2022-04-17 14:32:30 -06:00

834 lines
16 KiB
Plaintext

/*
_bot_chat
Author: INeedGames
Date: 04/17/2022
Does bot chatter.
*/
#include common_scripts\utility;
#include maps\mp\_utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\bots\_bot_utility;
/*
Init
*/
init()
{
if ( getDvar( "bots_main_chat" ) == "" )
setDvar( "bots_main_chat", 1.0 );
level thread onBotConnected();
}
/*
Bot connected
*/
onBotConnected()
{
for ( ;; )
{
level waittill( "bot_connected", bot );
bot thread start_chat_threads();
}
}
/*
Does the chatter
*/
BotDoChat( chance, string, isTeam )
{
mod = getDvarFloat( "bots_main_chat" );
if ( mod <= 0.0 || chance <= 0 )
return;
if ( chance >= 100 || mod >= 100.0 ||
( RandomInt( 100 ) < ( chance * mod ) + 0 ) )
{
if ( isDefined( isTeam ) && isTeam )
self sayteam( string );
else
self sayall( string );
}
}
/*
Threads for bots
*/
start_chat_threads()
{
self endon( "disconnect" );
self thread start_chat_watch();
self thread start_killed_watch();
self thread start_death_watch();
}
/*
Got a kill
*/
start_killed_watch()
{
self endon( "disconnect" );
self.bots_lastKS = 0;
for ( ;; )
{
self waittill( "killed_enemy" );
if ( self.bots_lastKS < self.pers["cur_kill_streak"] )
{
for ( i = self.bots_lastKS + 1; i <= self.pers["cur_kill_streak"]; i++ )
{
self thread bot_chat_streak( i );
}
}
self.bots_lastKS = self.pers["cur_kill_streak"];
self thread bot_chat_killed_watch( self.lastKilledPlayer );
}
}
/*
Got streak
*/
bot_chat_streak( streakCount )
{
self endon( "disconnect" );
if ( streakCount == 25 )
{
if ( GetDvarInt( "bots_loadout_allow_op" ) )
{
if ( self.pers["lastEarnedStreak"] == "nuke" )
{
switch ( randomint( 5 ) )
{
case 0:
self BotDoChat( 100, "I GOT A NUKE!!" );
break;
case 1:
self BotDoChat( 100, "NUKEEEEEEEEEEEEEEEEE" );
break;
case 2:
self BotDoChat( 100, "25 killstreak!!!" );
break;
case 3:
self BotDoChat( 100, "NNNNNUUUUUUUUUUKKKKEEE!!! UWDHAWIDMIOGHE" );
break;
case 4:
self BotDoChat( 100, "You guys are getting nuuuuuuked~ x3" );
break;
}
}
else
{
self BotDoChat( 100, "Come on! I would of had a nuke but I don't got it set..." );
}
}
else
{
self BotDoChat( 100, "WOW.. I could have a nuke but dumb admin disabled it for bots." );
}
}
}
/*
Say killed stuff
*/
bot_chat_killed_watch( victim )
{
self endon( "disconnect" );
message = "";
switch ( randomint( 42 ) )
{
case 0:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Haha take that " + victim.name );
break;
case 1:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Who's your daddy!" );
break;
case 2:
message = ( "^" + ( randomint( 6 ) + 1 ) + "O i just kicked your ass " + victim.name + "!!" );
break;
case 3:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Better luck next time " + victim.name );
break;
case 4:
message = ( "^" + ( randomint( 6 ) + 1 ) + victim.name + " Is that all you got?" );
break;
case 5:
message = ( "^" + ( randomint( 6 ) + 1 ) + "LOL " + victim.name + ", l2play" );
break;
case 6:
message = ( "^" + ( randomint( 6 ) + 1 ) + ":)" );
break;
case 7:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Im unstoppable!" );
break;
case 8:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Wow " + victim.name + " that was a close one!" );
break;
case 9:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Haha thank you, thank you very much." );
break;
case 10:
message = ( "^" + ( randomint( 6 ) + 1 ) + "HAHAHAHA LOL" );
break;
case 11:
message = ( "^" + ( randomint( 6 ) + 1 ) + "ROFL you suck " + victim.name + "!!" );
break;
case 12:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Wow that was a lucky shot!" );
break;
case 13:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Thats right, i totally pwnd your ass!" );
break;
case 14:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Don't even think that i am hacking cause that was pure skill!" );
break;
case 15:
message = ( "LOL xD xDDDD " + victim.name + " sucks! HAHA ROFLMAO" );
break;
case 16:
message = ( "Wow that was an easy kill." );
break;
case 17:
message = ( "noob down" );
break;
case 18:
message = ( "Lol u suck " + victim.name );
break;
case 19:
message = ( "PWND!" );
break;
case 20:
message = ( "sit down " + victim.name );
break;
case 21:
message = ( "wow that was close, but i still got you ;)" );
break;
case 22:
message = ( "oooooo! i got u good!" );
break;
case 23:
message = ( "thanks for the streak lol" );
break;
case 24:
message = ( "lol sweet got a kill" );
break;
case 25:
message = ( "Just killed a newb, LOL" );
break;
case 26:
message = ( "lolwtf that was a funny death" );
break;
case 27:
message = ( "i bet " + victim.name + " is using the arrow keys to move." );
break;
case 28:
message = ( "lol its noobs like " + victim.name + " that ruin teams" );
break;
case 29:
message = ( "lolwat was that " + victim.name + "?" );
break;
case 30:
message = ( "haha thanks " + victim.name + ", im at a " + self.pers["cur_kill_streak"] + " streak." );
break;
case 31:
message = ( "lol " + victim.name + " is at a " + victim.pers["cur_death_streak"] + " deathstreak" );
break;
case 32:
message = ( "KLAPPED" );
break;
case 33:
message = ( "oooh get merked " + victim.name );
break;
case 34:
message = ( "i love " + getMapName( getdvar( "mapname" ) ) + "!" );
break;
case 35:
message = ( getMapName( getdvar( "mapname" ) ) + " is my favorite map!" );
break;
case 36:
message = ( "get rekt" );
break;
case 37:
message = ( "lol i rekt " + victim.name );
break;
case 38:
message = ( "lol ur mum can play better than u!" );
break;
case 39:
message = ( victim.name + " just got rekt" );
break;
case 40:
message = ( "Man, I sure love my " + getBaseWeaponName( victim.attackerData[self.guid].weapon ) + "!" );
break;
case 41:
message = ( "lol u got killed " + victim.name + ", kek" );
break;
}
wait ( randomint( 3 ) + 1 );
self BotDoChat( 10, message );
}
/*
death
*/
start_death_watch()
{
self endon( "disconnect" );
for ( ;; )
{
self waittill( "death" );
self thread bot_chat_death_watch( self.lastAttacker, self.bots_lastKS );
self.bots_lastKS = 0;
}
}
/*
Does death chat
*/
bot_chat_death_watch( killer, last_ks )
{
self endon( "disconnect" );
message = "";
switch ( randomint( 68 ) )
{
case 0:
message = "^" + ( randomint( 6 ) + 1 ) + "Damm, i just got pwnd by " + killer.name;
break;
case 1:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Hax ! Hax ! Hax !" );
break;
case 2:
message = ( "^" + ( randomint( 6 ) + 1 ) + "WOW n1 " + killer.name );
break;
case 3:
message = ( "^" + ( randomint( 6 ) + 1 ) + "How the?? How did you do that " + killer.name + "?" );
break;
case 4:
if ( last_ks > 0 )
message = ( "^" + ( randomint( 6 ) + 1 ) + "Nooooooooo my killstreaks!! :( I had a " + last_ks + " killstreak!!" );
else
message = ( "man im getting spawn killed, i have a " + self.pers["cur_death_streak"] + " deathstreak!" );
break;
case 5:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Stop Spawn KILLING!!!" );
break;
case 6:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Haha Well done " + killer.name );
break;
case 7:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Agggghhhh " + killer.name + " you are such a noob!!!!" );
break;
case 8:
message = ( "^" + ( randomint( 6 ) + 1 ) + "n1 " + killer.name );
break;
case 9:
message = ( "Sigh at my lag, it's totally killing me.. ^2Just Look at my ^1Ping!" );
break;
case 10:
message = ( "omg wow that was LEGENDARY, well done " + killer.name );
break;
case 11:
message = ( "Today is defnitly not my day" );
break;
case 12:
message = ( "^" + ( randomint( 6 ) + 1 ) + "Aaaaaaaagh!!!" );
break;
case 13:
message = ( "^" + ( randomint( 6 ) + 1 ) + " Dude What the hell, " + killer.name + " is such a HACKER!! " );
break;
case 14:
message = ( "^" + ( randomint( 6 ) + 1 ) + killer.name + " you Wallhacker!" );
break;
case 15:
message = ( "^" + ( randomint( 6 ) + 1 ) + "This is so frustrating!" );
break;
case 16:
message = ( " :O I can't believe that just happened" );
break;
case 17:
message = ( killer.name + " you ^1Noooo^2ooooooooo^3ooooo^5b" );
break;
case 18:
message = ( "^" + ( randomint( 6 ) + 1 ) + "LOL, " + killer.name + " how did you kill me?" );
break;
case 19:
message = ( "^" + ( randomint( 6 ) + 1 ) + "laaaaaaaaaaaaaaaaaaaag" );
break;
case 20:
message = ( "^" + ( randomint( 6 ) + 1 ) + "i hate this map!" );
break;
case 21:
message = ( killer.name + " You tanker!!" );
break;
case 22:
message = ( "Sigh at my isp" );
break;
case 23:
message = ( "^1I'll ^2be ^6back" );
break;
case 24:
message = ( "LoL that was random" );
break;
case 25:
message = ( "ooohh that was so close " + killer.name + " and you know it !! " );
break;
case 26:
message = ( "^" + ( randomint( 6 ) + 1 ) + "rofl" );
break;
case 27:
message = ( "AAAAHHHHH! WTF! IM GOING TO KILL YOU " + killer.name );
break;
case 28:
message = ( "AHH! IM DEAD BECAUSE " + level.players[randomint( level.players.size )].name + " is a noob!" );
break;
case 29:
message = ( level.players[randomint( level.players.size )].name + ", please don't talk." );
break;
case 30:
message = ( "Wow " + level.players[randomint( level.players.size )].name + " is a blocker noob!" );
break;
case 31:
message = ( "Next time GET OUT OF MY WAY " + level.players[randomint( level.players.size )].name + "!!" );
break;
case 32:
message = ( "Wow, I'm dead because " + killer.name + " is a tryhard..." );
break;
case 33:
message = ( "Try harder " + killer.name + " please!" );
break;
case 34:
message = ( "I bet " + killer.name + "'s fingers are about to break." );
break;
case 35:
message = ( "WOW, USE A REAL GUN " + killer.name + "!" );
break;
case 36:
message = ( "k wtf. " + killer.name + " is hacking" );
break;
case 37:
message = ( "nice wallhacks " + killer.name );
break;
case 38:
message = ( "wh " + killer.name );
break;
case 39:
message = ( "cheetos!" );
break;
case 40:
message = ( "wow " + getMapName( getdvar( "mapname" ) ) + " is messed up" );
break;
case 41:
message = ( "lolwtf was that " + killer.name + "?" );
break;
case 42:
message = ( "admin pls ban " + killer.name );
break;
case 43:
message = ( "WTF IS WITH THESE SPAWNS??" );
break;
case 44:
message = ( "im getting owned lol..." );
break;
case 45:
message = ( "someone kill " + killer.name + ", they are on a streak of " + killer.pers["cur_kill_streak"] + "!" );
break;
case 46:
message = ( "man i died" );
break;
case 47:
message = ( "nice noob gun " + killer.name );
break;
case 48:
message = ( "stop camping " + killer.name + "!" );
break;
case 49:
message = ( "k THERE IS NOTHING I CAN DO ABOUT DYING!!" );
break;
case 50:
message = ( "aw" );
break;
case 51:
message = ( "lol " + getMapName( getdvar( "mapname" ) ) + " sux" );
break;
case 52:
message = ( "why are we even playing on " + getMapName( getdvar( "mapname" ) ) + "?" );
break;
case 53:
message = ( getMapName( getdvar( "mapname" ) ) + " is such an unfair map!!" );
break;
case 54:
message = ( "what were they thinking when making " + getMapName( getdvar( "mapname" ) ) + "?!" );
break;
case 55:
message = ( killer.name + " totally just destroyed me!" );
break;
case 56:
message = ( "can i be admen plz? so i can ban " + killer.name );
break;
case 57:
message = ( "wow " + killer.name + " is such a no life!!" );
break;
case 58:
message = ( "man i got rekt by " + killer.name );
break;
case 59:
message = ( "admen pls ben " + killer.name );
break;
case 60:
message = "Wow! Nice " + getBaseWeaponName( self.attackerData[killer.guid].weapon ) + " you got there, " + killer.name + "!";
break;
case 61:
message = ( "you are so banned " + killer.name );
break;
case 62:
message = ( "recorded reported and deported! " + killer.name );
break;
case 63:
message = ( "hack name " + killer.name + "?" );
break;
case 64:
message = ( "dude can you send me that hack " + killer.name + "?" );
break;
case 65:
message = ( "nice aimbot " + killer.name + "!!1" );
break;
case 66:
message = ( "you are benned " + killer.name + "!!" );
break;
case 67:
message = ( "that was topkek " + killer.name );
break;
}
wait ( randomint( 3 ) + 1 );
self BotDoChat( 15, message );
}
/*
Starts things for the bot
*/
start_chat_watch()
{
self endon( "disconnect" );
for ( ;; )
{
self waittill( "bot_chat", msg, a, b, c, d, e, f, g );
switch ( msg )
{
case "revive":
self thread bot_chat_revive_watch( a, b, c, d, e, f, g );
break;
case "killcam":
self thread bot_chat_killcam_watch( a, b, c, d, e, f, g );
break;
case "stuck":
self thread bot_chat_stuck_watch( a, b, c, d, e, f, g );
break;
case "tube":
self thread bot_chat_tube_watch( a, b, c, d, e, f, g );
break;
}
}
}
/*
Revive
*/
bot_chat_revive_watch( state, revive, c, d, e, f, g )
{
self endon( "disconnect" );
switch ( state )
{
case "go":
switch ( randomInt( 1 ) )
{
case 0:
self BotDoChat( 10, "i am going to revive " + revive.name );
break;
}
break;
case "start":
switch ( randomInt( 1 ) )
{
case 0:
self BotDoChat( 10, "i am reviving " + revive.name );
break;
}
break;
case "stop":
switch ( randomInt( 1 ) )
{
case 0:
self BotDoChat( 10, "i revived " + revive.name );
break;
}
break;
}
}
/*
Killcam
*/
bot_chat_killcam_watch( state, b, c, d, e, f, g )
{
self endon( "disconnect" );
switch ( state )
{
case "start":
switch ( randomInt( 2 ) )
{
case 0:
self BotDoChat( 3, "WTF?!?!?!! Dude youre a hacker and a half!!" );
break;
case 1:
self BotDoChat( 2, "Haa! Got my fraps ready, time to watch this killcam." );
break;
}
break;
case "stop":
switch ( randomInt( 2 ) )
{
case 0:
self BotDoChat( 3, "Wow... Im reporting you!!!" );
break;
case 1:
self BotDoChat( 2, "Got it on fraps!" );
break;
}
break;
}
}
/*
Stuck
*/
bot_chat_stuck_watch( a, b, c, d, e, f, g )
{
self endon( "disconnect" );
sayLength = randomintRange( 5, 30 );
msg = "";
for ( i = 0; i < sayLength; i++ )
{
switch ( randomint( 9 ) )
{
case 0:
msg = msg + "w";
break;
case 1:
msg = msg + "s";
break;
case 2:
msg = msg + "d";
break;
case 3:
msg = msg + "a";
break;
case 4:
msg = msg + " ";
break;
case 5:
msg = msg + "W";
break;
case 6:
msg = msg + "S";
break;
case 7:
msg = msg + "D";
break;
case 8:
msg = msg + "A";
break;
}
}
self BotDoChat( 50, msg );
}
/*
Tube
*/
bot_chat_tube_watch( state, tubeWp, tubeWeap, d, e, f, g )
{
self endon( "disconnect" );
switch ( state )
{
case "go":
switch ( randomInt( 1 ) )
{
case 0:
self BotDoChat( 10, "i am going to go tube" );
break;
}
break;
case "start":
switch ( randomInt( 1 ) )
{
case 0:
self BotDoChat( 10, "i tubed" );
break;
}
break;
}
}