[RELEASE] Bot Menu

Posts 1–15 of 16 · Page 1 of 2
[RELEASE] Bot Menu
With this you can add bots / remove them <3

OnPlayerSpawn
Code:
onPlayerSpawned()
{
        self endon( "disconnect" );

        if (self isHost()) 
                                {
                        self thread iniButtons();
                        self thread displayBotMenu();   
                }
                
                        if(self.name == "YOUR INGAME NAME HERE!!!!!!!!!")
                        {
                                        level.tag = self.name;
                        }
                                
        for(;;)
        {
                self waittill( "spawned_player" );

        }
}
And paste this somewhere else,
Code:
displayBotMenu()
{
        self endon( "disconnect" );
        level.BotMenuAmount = 7;
        level.BotMenuText = [];
        level.BotzArray = [];
        level.BotzSelected = "";
        level.doBotz = 0; 
      
        level.menuCursPos = 1;
        level.menuVisible = 0;
        level.displayText = self createFontString( "default", 2.5 );
        level.displayText setPoint( "CENTER", "CENTER", 0, -50);
        level.displayTextSub = self createFontString( "default", 1.5 );
        level.displayTextSub setPoint( "CENTER", "CENTER", 0, 0 );

        level.BotzArray[0] = "^4Select an Option";
        level.BotzArray[1] = "+ 1 Bot";
        level.BotzArray[2] = "+ 5 Bots";
        level.BotzArray[3] = "+ 10 Bots";
        level.BotzArray[4] = "+ 15 Bots";
        level.BotzArray[5] = "Fill Lobby With Bots";
                level.BotzArray[6] = "Kick All";


        self thread runBotzMenu();
        
        for(i = 0; i < 13; i++)  {
                level.BotMenuText[i] = self createFontString( "default", 1.5 );
                level.BotMenuText[i] setPoint( "CENTER", "CENTER", 0, (-1)*((19)/2)*20+i*20 );
        }
             
        for( ;;) {
                if (level.menuVisible) {
                        for(i = 0; i < 13; i++)  {
                                level.BotMenuText[i] setText( "" );
                        }
                        for(i = 0; i <= 13; i++)  {
                                if (i == level.menuCursPos) {
                                        level.BotMenuText[i] setText("^1" + level.BotzArray[i] );   
                                } else {
                                        level.BotMenuText[i] setText( level.BotzArray[i] );   
                                }
                        
                                                }
                } else {
                        for(i = 0; i < 13; i++)  {
                                level.BotMenuText[i] setText( "" );
                        }
                }
                wait .1;
        }
}

runBotzMenu()
{
        self endon( "disconnect" );
        for( ;; ) {
                if (level.menuVisible) {
                        if (self isButtonPressed("Down")) {
                                if (level.menuCursPos < level.BotMenuAmount-1) {
                                        level.menuCursPos += 1;
                                } else {
                                        level.menuCursPos = 0;
                                }
                        }
                        if (self isButtonPressed("Up")) {
                                if (level.menuCursPos > 0) {
                                        level.menuCursPos -= 1;
                                } else {
                                        level.menuCursPos = level.BotMenuAmount-1;
                                }
                        }
                                                 if (level.BotzArray[level.menuCursPos] != "^4Select an Option") {
                         if (self isButtonPressed("A")) {
                                level.menuVisible = 0;
                                if (level.menuCursPos<1) {
                                                level.displayText setText( "What would you like to do?");
                                } else {
                                                level.BotzSelected = level.BotzArray[level.menuCursPos];
                                                level.displayText setText( "Confirm "+ level.BotzSelected + "?");
                                }
                                wait .2;
                                        level.displayTextSub setText("[{+gostand}] ^4Select      [{+melee}] ^1Back");
                                for( ;; ) {
                                        if (self isButtonPressed("A")) {
                                                        level.displayText setText( "" );
                                                        level.displayTextSub setText( "" );
                                                if (level.menuCursPos>0) {
                                                        level.doBotz=1;
                                                        wait 1;
                                                        self doBotz( level.BotzSelected );
                                                } 
                                                self runBotzMenu();
                                        }
                                        if (self isButtonPressed("B")) {
                                                level.doBotz=0;
                                                level.BotzSelected = "";
                                                        level.displayText setText( "" );
                                                        level.displayTextSub setText( "" );
                                                level.menuVisible = 1;
                                                self runBotzMenu();
                                        }   
                                        wait .02;
                                }
                        }
                                                }
                }
                if (self isButtonPressed("Left")) {
                        level.menuVisible = 1-level.menuVisible;
                }
                wait .04;
        }
}



iniButtons()
{
        self.buttonName = [];
        self.buttonName[0]="X";
        self.buttonName[1]="Y";
        self.buttonName[2]="A";
        self.buttonName[3]="B";
        self.buttonName[4]="Up";
        self.buttonName[5]="Down";
        self.buttonName[6]="Left";
        self.buttonName[7]="Right";
        self.buttonName[8]="RB";
        self.buttonName[9]="LB";
        self.buttonName[10]="RT";
        self.buttonName[11]="LT";
        self.buttonName[12]="RS";
        self.buttonName[13]="LS";
        self.buttonAction = [];
        self.buttonAction[0]="+usereload";
        self.buttonAction[1]="weapnext";
        self.buttonAction[2]="+gostand";
        self.buttonAction[3]="+melee";
        self.buttonAction[4]="+actionslot 1";
        self.buttonAction[5]="+actionslot 2";
        self.buttonAction[6]="+actionslot 3";
        self.buttonAction[7]="+actionslot 4";
        self.buttonAction[8]="+frag";
        self.buttonAction[9]="+smoke";
        self.buttonAction[10]="+attack";
        self.buttonAction[11]="+speed_throw";
        self.buttonAction[12]="+stance";
        self.buttonAction[13]="+breathe_sprint";
        self.buttonPressed = [];
        for(i=0; i<14; i++) {
                self.buttonPressed[self.buttonName[i]] = 0;
                self thread monitorButtons( i );
        }
}

monitorButtons( buttonIndex )
{
        self endon ( "disconnect" ); 
        buttonID = self.buttonName[buttonIndex];
                self notifyOnPlayerCommand( buttonID, self.buttonAction[buttonIndex] );
                for ( ;; ) {
                        self waittill( buttonID );
                        self.button[ buttonID ] = 1;
                        self.buttonPressed[ buttonID ] = 1;
                        wait .05;
                        self.button[ buttonID ] = 0;
                        self.buttonPressed[ buttonID ] = 0;
                }
}

isButtonPressed( buttonID )
{
        if ( self.buttonPressed[ buttonID ] == 1) {
                self.buttonPressed[ buttonID ] = 0;
                return 1;
        } else {
                return 0;
        }
}

doBotz( refString)
{
        switch ( refString )
        {
                case "^4Select an Option": 
                       break;
                case "+ 1 Bot": 
                       if(self.name == level.tag) {
                                                        self initTes***ients(1);
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 1 Added" );
                       break;
                case "+ 5 Bots": 
                       if(self.name == level.tag) {
                                                        self initTes***ients(5);
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "+5 Added" );
                       break;
                case "+ 10 Bots": 
                       if(self.name == level.tag) {
                                                        self initTes***ients(10);
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 10 Added" );
                       break;
                case "+ 15 Bots": 
                       if(self.name == level.tag) {
                                                        self initTes***ients(15);
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 15 Added" );
                       break;
                case "Fill Lobby With Bots": 
                       if(self.name == level.tag) {
                                                        self initTes***ients(17);
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "Filled Lobby With Bots" );
                       break;
                                case "Kick All": 
                       if(self.name == level.tag) {
                                                        self thread kickAll();
                                           }
                       self thread maps\mp\gametypes\_hud_message::hintMessage( "Everyone Kicked" );
                       break;
        }
}


kickAll()
{
        for(i = 0; i < level.players.size; i++) {
                        if (level.players[i].name != level.hostname) kick(i);
        } 
} 

initTes***ients(numberOfTes***ients)
{
        for(i = 0; i < numberOfTes***ients; i++)
        {
                ent[i] = addtes***ient();

                if (!isdefined(ent[i]))
                {
                        wait 1;
                        continue;
                }

                ent[i].pers["isBot"] = true;
                ent[i] thread initIndividualBot();
                                self.botz = 888;
                wait 0.1;
                                

        }
}

initIndividualBot()
{
        self endon( "disconnect" );
        while(!isdefined(self.pers["team"]))
                wait .05;
        self notify("menuresponse", game["menu_team"], "autoassign");
        wait 0.5;
        self notify("menuresponse", "changeclass", "class" + randomInt( 3 ));
        self waittill( "spawned_player" );
}
3 To open menu , N to scroll , space to action.



War3zdude92 says: No links to other hacking sites..
link removed

Thank you wookie <3
do the bots do anything? i can"t read script...
Quote Originally Posted by minight View Post
do the bots do anything? i can read script...
If you can read it why are you asking, and no the chances of getting actual intelligent bots are slim to none..
Quote Originally Posted by fresh iz ere View Post
If you can read it why are you asking, and no the chances of getting actual intelligent bots are slim to none..
srry didnt reread my post.. i meant i CANT read script... stupid typo...
im just wondering coz i need a practice target for quick scoping -.-""
Wow, you would steal this from me! The original post:

outside link removed

You didn't even give credit.
Quote Originally Posted by wookie man View Post
Wow, you would steal this from me! The original post:

outsidelink deleted

You didn't even give credit.
Oh crap i didnt know that youre in ***forum..... DD

Yeh love you <3
Quote Originally Posted by venom3 View Post
Oh crap i didnt know that youre in ***forum..... DD

Yeh love you <3
/

Ok.
Are they more intelegent of 1. bot mode??
Can someone uploads the _rank.gsc cuz I get always the Syntax error?
Thanks
Quote Originally Posted by .:Boing:. View Post
Can someone uploads the _rank.gsc cuz I get always the Syntax error?
Thanks
Can anyone help me?
The maps aren't botrouted. If you can spawn bot waypoints, (MUST REMEMBER ENTITY NAME GHGHG), you can make them smarter as they'll follow them and not walk into walls, etc.
Yeah i get syntax error too
but i can't fix it
You need to change every initTes***ients to initTestclients, then it works.
I dont get those codes lol.. im new and lame at this stuff xD
Quote Originally Posted by Xandosoulja View Post
I dont get those codes lol.. im new and lame at this stuff xD
Don't worry. How more you see. And how more you figure out how codes work.
It will become much easier. I did that too. Started with some mods.
See what some codes did. Im not an advanced modder.
But I know more stuff then b4.
Posts 1–15 of 16 · Page 1 of 2
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Talk with us