Page 1 of 3 123 LastLast
Results 1 to 10 of 23
  1. #1
    Banned
    Join Date
    May 2011
    Location
    ');DROP TABLE 'users';--
    Posts
    737
    Points
    1,710
         User Info     Contact     Gamer ID
    Join Date
    May 2011
    Location
    ');DROP TABLE 'users';--
    Posts
    737
    Points
    1,710

    Default Bot Base Gametype

    So I was bored and made a base to a gametype, I really don't feel like spending the time on making a gametype so i'm posting what I made and letting you guys do whatever you want with it.

    I made it so that it could be incorporated with other people's future game types if they want, since it's pretty neat.

    What I made is basically a zombie type thingy almost except with bots, here's what it includes...
    • A round system
    • More bots spawn each round
    • Bots get stronger as rounds progress
    • Kill all bots to reach the next round


    Now sure I could have just released this and called it like "bot battle" but it would be really boring and stupid. And seeing as I don't have the time/motivation to continue it I will let you guys do what you want with it. I see it having good potential in like a zombie type gametype but hey thats with me. So enough of my crap and here you go:

    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    //bot battle by nity
    
    init()
    {
    	thread vars();
    	level thread onPlayerConnect();
    	level thread on_next_round();
    	level thread monitor_bot_spawn();
    	level thread round_switch();
    }
    
    vars()
    {
    	level.round_number = 1;
    	level.bot_health = 10;
    	level.bot_increase_in_health = 10;
    	level.num_of_bots = 5;
    	level.killed_bots = 0;
    	level.num_of_players = level.players.size;
    }
    
    round_switch()
    {
    	while ( 1 )
    	{
    		if ( level.killed_bots >= level.num_of_bots )
    		{
    			for ( i = 0; i < level.players.size; i++ )
    			{
    				level.players[i] iPrintlnBold( "^1Next Round!!!" );
    				wait 0.01;
    			}
    			wait 5;
    			level notify ( "next_round" );
    			level.killed_bots = 0;
    		}
    		wait 0.01;
    	}
    }
    
    on_next_round()
    {
    	while ( 1 )
    	{
    		level waittill ( "next_round" );
    		level.bot_health += int ( level.bot_health / 2 );
    		level.num_of_bots += int ( level.round_number * 1.5 );
    		level.round_number++;
    	}
    }
    
    monitor_bot_spawn()
    {
    	spawnedBots = 0;
    	while ( 1 )
    	{
    		while ( level.player.size < 13 )
    		{
    			if ( spawnedBots < level.num_of_bots )
    			{
    				thread spawnBot();
    				spawnedBots++;
    			}
    			else
    			{
    				level waittill ( "next_round" );
    				spawnedBots = 0;
    				break;
    			}
    		}
    		wait 0.01;
    	}
    }
    
    spawnBot()
    {
    	player = GetHostPlayer();
    	team = player.pers[ "team" ];
    	wait( 0.25 );
    	bot = AddTestClient();        
    	bot.pers[ "isBot" ] = true;
    	bot thread maps\mp\gametypes\_bot::bot_spawn_think( getOtherTeam( team ) );
    
    }
    
    onPlayerConnect()
    {
    	while ( 1 )
    	{
    		level waittill ( "connected", player );
    		player thread OnPlayerSpawned();
    		player thread hud();
    	}
    }
    
    hud()
    {
        self endon ( "disconnect" );
    	round_num_hud = self createFontString( "objective", 1.8 );
    	round_num_hud  setPoint( "BOTTOMCENTER", "BOTTOMCENTER",0, -14 );
    	while ( 1 )
    	{
    		level waittill( "next_round" );
    		round_num_hud  setText( "^1Round: " + level.round_number );
    	}
    }
    
    OnPlayerSpawned()
    {
    	self endon ( "disconnect" );
    	level notify ( "next_round" );
    	while ( 1 )
    	{
    		self waittill ("spawned_player");
    		if ( self.pers[ "isBot" ] )
    		{
    			self thread fix_health();
    			self thread onDeath();
    		}
    	}
    }
    
    fix_health()
    {
    	self endon ( "disconnect" );
    	self.maxhealth = level.bot_health + ( level.round_number * level.bot_increase_in_health );
    	self.health = bot.maxhealth;
    }
    
    onDeath()
    {
    	self endon ( "disconnect" );
    	self waittill ( "death" );
    	level.killed_bots++;
    	kick ( self getEntityNumber() );
    }

    0 Not allowed! Not allowed!
    Last edited by Nity; 07-20-2011 at 05:33 PM.

  2. #2
    The Fire Within
    Winning!
    Notorious's Avatar
    Join Date
    May 2011
    Location
    Twilight Zone
    Posts
    2,053
    Points
    3,427
         User Info     Contact     Gamer ID
    Join Date
    May 2011
    Location
    Twilight Zone
    Posts
    2,053
    Points
    3,427
    Gamer IDs

    Gamertag: TehNotorious PSN ID: NOTORIOUS-ORTIZ

    Default

    This should be epic!! We could make some pretty badass mp zombies with this
    As always nity amazing work :3

    0 Not allowed! Not allowed!
    Last edited by Notorious; 07-19-2011 at 11:22 PM.


    ^Thanks Renji for the awesome sig^

  3. #3
    Jungler Strike's Avatar
    Join Date
    Apr 2011
    Location
    Gotham
    Posts
    6,319
    Points
    9,420
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Location
    Gotham
    Posts
    6,319
    Points
    9,420
    Gamer IDs

    PSN ID: xSTR11K3Rx Steam ID: xSTRiiK3Rx

    Contact info:

    Youtube Channel: http://www.youtube.com/xSTRiiK3Rx/

    Default

    sweet for a survival gametype try stering clear of the classic mp zombies try something like from the spec ops giving them all lmg's invading a base of some sort. if someone wants to work with me on this then sure!

    0 Not allowed! Not allowed!

    ^Ty goober^
    Quote Originally Posted by xX_BiGFooTT_Xx View Post
    compensate my cock faggot

  4. #4
    Member
    Join Date
    Jun 2011
    Posts
    189
    Points
    360
         User Info     Contact     Gamer ID
    Join Date
    Jun 2011
    Posts
    189
    Points
    360

    Default

    thanx nity ima try to use the round thingy for zombies lol

    0 Not allowed! Not allowed!

  5. #5
    MonsterCat
    Insan3Lik3
    CheeseToast's Avatar
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169

    Contact info:

    Youtube Channel: http://www.youtube.com/CheeseToastHax

    Default

    i already made a round system in mine

    btw nice work!

    0 Not allowed! Not allowed!
    "It's better to lose an argument/debate then to win. Cause when you lose you grow as a person."
    -CheeseToast

  6. #6
    Wii Modder
    I AM BEAST
    JellyInjector's Avatar
    Join Date
    Apr 2011
    Posts
    598
    Points
    1,088
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Posts
    598
    Points
    1,088

    Default

    fuck, this is somewhat similar to CHAOS DOGS... i gotta release it soon... lol

    0 Not allowed! Not allowed!

  7. #7
    MonsterCat
    Insan3Lik3
    CheeseToast's Avatar
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169

    Contact info:

    Youtube Channel: http://www.youtube.com/CheeseToastHax

    Default

    ERROR "unknown utitiy "bot" " I tryed on combat training and privite match. are you sure this works? here is the script with your bots in it:
    Code:
    #include common_scripts\utility;
    
    #include maps\mp\_airsupport;
    #include maps\mp\_utility;
    
    #include maps\mp\gametypes\_hud_util;
    
    
    main()
    
    {
    	thread init();
    }
    
    init()
    {
    	thread onPlayerConnect();
    	thread onPlayerConnected();
    }
    
    onPlayerConnect()
    {	
    	for(;;)
    	{
    		level waittill( "connecting", player );
    
    		player thread onPlayerSpawned();
    		player thread onJoinedSpectators();
    		player thread playerVariables();
    		player thread hud();
    	}
    }
    
    onPlayerConnected()
    {	
    	for(;;)
    	{
    		level waittill( "connected", player );
    		player thread playerVariables();
    	}
    }
    
    onPlayerSpawned()
    {
    	for(;;)
    	{
    		self waittill( "spawned_player" );
    	        level notify ( "next_round" );
    	}
    }
    
    onJoinedSpectators()
    {	
    	for(;;)
    	{
    		self waittill( "joined_spectators" );
    	}
    }
    
    playerVariables()
    {
    	self setClientDvar( "cg_brass", 0 );
    	self setClientDvar( "g_maxDroppedWeapons", 0 );
    	self setClientDvar( "scr_game_killstreaks", 0 );
    	self setClientDvar( "scr_game_forceuav", 0 );
    	self setClientDvar( "sv_cheats", 0 );
    }
    
    doVars()
    {
    	setDvar( "g_TeamName_Allies", "^2Humans" );
    	setDvar( "g_TeamName_Axis", "^1Zombies" );
            self [[level.allies]]();
    }
    
    doSettings()
    {
    	self endon ( "disconnect" );
    	if( self.pers["team"] == "axis" )
    	{
    	thread vars();
    	level thread onPlayerConnect();
    	level thread on_next_round();
    	level thread monitor_bot_spawn();
    	level thread round_switch();
            self thread ZombieWeapons();
    	}
    	else if( self.pers["team"] == "allies" )
    	{      
            self thread HumanSettings(); 
            self thread HumanWeapons(); 
    	}
    }
    
    vars()
    {
    	level.round_number = 1;
    	level.bot_health = 10;
    	level.bot_increase_in_health = 10;
    	level.num_of_bots = 5;
    	level.killed_bots = 0;
    	level.num_of_players = level.players.size;
    }
    
    round_switch()
    {
    	while ( 1 )
    	{
    		if ( level.killed_bots >= level.num_of_bots )
    		{
    			for ( i = 0; i < level.players.size; i++ )
    			{
    				level.players[i] iPrintlnBold( "^1Next Round..." );
    				wait 0.01;
    			}
    			wait 5;
    			level notify ( "next_round" );
    			level.killed_bots = 0;
    		}
    		wait 0.01;
    	}
    }
    
    on_next_round()
    {
    	while ( 1 )
    	{
    		level waittill ( "next_round" );
    		level.bot_health += int ( level.bot_health / 2 );
    		level.num_of_bots += int ( level.round_number * 1.5 );
    		level.round_number++;
    	}
    }
    
    monitor_bot_spawn()
    {
    	spawnedBots = 0;
    	while ( 1 )
    	{
    		while ( level.player.size < 13 )
    		{
    			if ( spawnedBots < level.num_of_bots )
    			{
    				thread spawnBot();
    				spawnedBots++;
    			}
    			else
    			{
    				level waittill ( "next_round" );
    				spawnedBots = 0;
    				break;
    			}
    		}
    		wait 0.01;
    	}
    }
    
    spawnBot()
    {
    	player = GetHostPlayer();
    	team = player.pers[ "team" ];
    	wait( 0.25 );
    	bot = AddTestClient();        
    	bot.pers[ "isBot" ] = true;
    	bot thread maps\mp\gametypes\_bot::bot_spawn_think( getOtherTeam( team ) );
    	bot thread fix_health();
    	bot thread onDeath();
    }
    
    hud()
    {
        self endon ( "disconnect" );
    	round_num_hud = self createFontString( "objective", 1.8 );
    	round_num_hud  setPoint( "BOTTOMCENTER", "BOTTOMCENTER",0, -14 );
    	while ( 1 )
    	{
    		level waittill( "next_round" );
    		round_num_hud  setText( "^1Round: " + level.round_number );
    	}
    }
    
    fix_health()
    {
    	bot endon ( "disconnect" );
    	bot.maxhealth = level.bot_health + ( level.round_number * level.bot_increase_in_health );
    	bot.health = bot.maxhealth;
    }
    
    onDeath()
    {
    	bot endon ( "disconnect" );
    	bot waittill ( "death" );
    	level.killed_bots++;
    	kick ( bot getEntityNumber() );
    }
    
    ZombieWeapons()
    {
    	self takeAllWeapons();
    	self clearPerks();
    	self giveWeapon( "knife_ballistic_mp" );
    	self giveWeapon( "knife_mp" );
    	self switchToWeapon( "knife_ballistic_mp" );
    	self SetWeaponAmmoClip("knife_ballistic_mp", 0 );   
    	self SetWeaponAmmoStock("knife_ballistic_mp", 0 );
    }
    
    HumanSettings()
    {      
            self setClientDvar("scr_game_forceuav" , "1" );
            self setClientDvar("g_compassShowEnemies" , "1" );
            self setClientDvar("compassRadarUpdateTime" , "0.0001" ); 
            self setClientDvar( "compassSize", 1.25 );
            self setclientdvar("ui_allow_classchange", "0");
    	self thread maps\mp\gametypes\_hud_message::hintMessage( "^1Your Playing Multiplayer Zombies :O" );   	
    
            self iPrintlnBold("^3Dont Camp in Glitches Or I Kick You!" );
            //level thread mpSayLocalSound( self, "inform_attack", "smoke" );
    }
    
    HumanWeapons()
    {    
            self setClientDvar("scr_game_forceuav" , "1" );
            self setClientDvar("g_compassShowEnemies" , "1" );
            self setClientDvar("compassRadarUpdateTime" , "0.0001" ); 
            self setClientDvar( "compassSize", 1.25 );
            self setclientdvar("ui_allow_classchange", "0");
    	self thread maps\mp\gametypes\_hud_message::hintMessage( "^1Your Playing Multiplayer Zombies :O" );   	
    
            self iPrintlnBold("^3Dont Camp in Glitches Or I Kick You and..." );
            //level thread mpSayLocalSound( self, "inform_attack", "smoke" );
    }
    did anyone get this working?

    0 Not allowed! Not allowed!
    Last edited by CheeseToast; 07-20-2011 at 03:51 PM. Reason: because i want to jeez.
    "It's better to lose an argument/debate then to win. Cause when you lose you grow as a person."
    -CheeseToast

  8. #8
    Member
    Join Date
    Apr 2011
    Posts
    173
    Points
    272
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Posts
    173
    Points
    272

    Default

    originally posted by $TRiiK3R

    sweet for a survival gametype try stering clear of the classic mp zombies try something like from the spec ops giving them all lmg's invading a base of some sort. if someone wants to work with me on this then sure!
    This idea is some what similar to my idea of game type I would work with you on it if you want

    0 Not allowed! Not allowed!

  9. #9
    Banned
    Join Date
    May 2011
    Location
    ');DROP TABLE 'users';--
    Posts
    737
    Points
    1,710
         User Info     Contact     Gamer ID
    Join Date
    May 2011
    Location
    ');DROP TABLE 'users';--
    Posts
    737
    Points
    1,710

    Default

    Fixed OP, the entity bot was referenced incorrectly when the bot's were going through some threads but I fixed!

    Quote Originally Posted by CheeseToast View Post
    ERROR "unknown utitiy "bot" " I tryed on combat training and privite match. are you sure this works? here is the script with your bots in it:
    -removed-
    did anyone get this working?
    Here I toke what you had, fixed a couple of errors i saw with proper placement and thread calling (some of the threads we'rent referenced correctly) and applied what I fixed with it lol.
    Here:
    Code:
    #include common_scripts\utility;
    
    #include maps\mp\_airsupport;
    #include maps\mp\_utility;
    
    #include maps\mp\gametypes\_hud_util;
    
    
    main()
    
    {
    	thread init();
    }
    
    init()
    {
    	thread onPlayerConnect();
    	thread vars();
    	level thread on_next_round();
    	level thread monitor_bot_spawn();
    	level thread round_switch();
    }
    
    onPlayerConnect()
    {	
    	for(;;)
    	{
    		level waittill( "connecting", player );
    		player thread onPlayerSpawned();
    		player thread playerVariables();
    		player thread hud();
    	}
    }
    
    
    onPlayerSpawned()
    {
    	level notify ( "next_round" );
    	for(;;)
    	{
    		self waittill( "spawned_player" );
    		if ( self.pers[ "isBot" ] )
    		{
    			self thread fix_health();
    			self thread onDeath();
    			self thread ZombieWeapons();
    		}
    		else
    		{
    			self thread HumanSettings();
    			self thread HumanWeapons();
    		}
    	}
    }
    
    
    playerVariables()
    {
    	self setClientDvar( "cg_brass", 0 );
    	self setClientDvar( "g_maxDroppedWeapons", 0 );
    	self setClientDvar( "scr_game_killstreaks", 0 );
    	self setClientDvar( "scr_game_forceuav", 0 );
    	self setClientDvar( "sv_cheats", 0 );
    }
    
    vars()
    {
    	level.round_number = 1;
    	level.bot_health = 10;
    	level.bot_increase_in_health = 10;
    	level.num_of_bots = 5;
    	level.killed_bots = 0;
    	level.num_of_players = level.players.size;
    }
    
    round_switch()
    {
    	while ( 1 )
    	{
    		if ( level.killed_bots >= level.num_of_bots )
    		{
    			for ( i = 0; i < level.players.size; i++ )
    			{
    				level.players[i] iPrintlnBold( "^1Next Round..." );
    				wait 0.01;
    			}
    			wait 5;
    			level notify ( "next_round" );
    			level.killed_bots = 0;
    		}
    		wait 0.01;
    	}
    }
    
    on_next_round()
    {
    	while ( 1 )
    	{
    		level waittill ( "next_round" );
    		level.bot_health += int ( level.bot_health / 2 );
    		level.num_of_bots += int ( level.round_number * 1.5 );
    		level.round_number++;
    	}
    }
    
    monitor_bot_spawn()
    {
    	spawnedBots = 0;
    	while ( 1 )
    	{
    		while ( level.player.size < 13 )
    		{
    			if ( spawnedBots < level.num_of_bots )
    			{
    				thread spawnBot();
    				spawnedBots++;
    			}
    			else
    			{
    				level waittill ( "next_round" );
    				spawnedBots = 0;
    				break;
    			}
    		}
    		wait 0.01;
    	}
    }
    
    spawnBot()
    {
    	player = GetHostPlayer();
    	team = player.pers[ "team" ];
    	wait( 0.25 );
    	bot = AddTestClient();        
    	bot.pers[ "isBot" ] = true;
    	bot thread maps\mp\gametypes\_bot::bot_spawn_think( getOtherTeam( team ) );
    }
    
    hud()
    {
        self endon ( "disconnect" );
    	round_num_hud = self createFontString( "objective", 1.8 );
    	round_num_hud  setPoint( "BOTTOMCENTER", "BOTTOMCENTER",0, -14 );
    	while ( 1 )
    	{
    		level waittill( "next_round" );
    		round_num_hud  setText( "^1Round: " + level.round_number );
    	}
    }
    
    fix_health()
    {
    	bot endon ( "disconnect" );
    	bot.maxhealth = level.bot_health + ( level.round_number * level.bot_increase_in_health );
    	bot.health = bot.maxhealth;
    }
    
    onDeath()
    {
    	bot endon ( "disconnect" );
    	bot waittill ( "death" );
    	level.killed_bots++;
    	kick ( bot getEntityNumber() );
    }
    
    ZombieWeapons()
    {
    	self takeAllWeapons();
    	self clearPerks();
    	self giveWeapon( "knife_ballistic_mp" );
    	self giveWeapon( "knife_mp" );
    	self switchToWeapon( "knife_ballistic_mp" );
    	self SetWeaponAmmoClip("knife_ballistic_mp", 0 );   
    	self SetWeaponAmmoStock("knife_ballistic_mp", 0 );
    }
    
    HumanSettings()
    {      
            self setClientDvar("scr_game_forceuav" , "1" );
            self setClientDvar("g_compassShowEnemies" , "1" );
            self setClientDvar("compassRadarUpdateTime" , "0.0001" ); 
            self setClientDvar( "compassSize", 1.25 );
            self setclientdvar("ui_allow_classchange", "0");
    	self thread maps\mp\gametypes\_hud_message::hintMessage( "^1Your Playing Multiplayer Zombies :O" );   	
    
            self iPrintlnBold("^3Dont Camp in Glitches Or I Kick You!" );
            //level thread mpSayLocalSound( self, "inform_attack", "smoke" );
    }
    
    HumanWeapons()
    {    
            self setClientDvar("scr_game_forceuav" , "1" );
            self setClientDvar("g_compassShowEnemies" , "1" );
            self setClientDvar("compassRadarUpdateTime" , "0.0001" ); 
            self setClientDvar( "compassSize", 1.25 );
            self setclientdvar("ui_allow_classchange", "0");
    	self thread maps\mp\gametypes\_hud_message::hintMessage( "^1Your Playing Multiplayer Zombies :O" );   	
    
            self iPrintlnBold("^3Dont Camp in Glitches Or I Kick You and..." );
            //level thread mpSayLocalSound( self, "inform_attack", "smoke" );
    }

    0 Not allowed! Not allowed!

  10. #10
    MonsterCat
    Insan3Lik3
    CheeseToast's Avatar
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169
         User Info     Contact     Gamer ID
    Join Date
    Apr 2011
    Location
    Calgary, Alberta, Canada
    Posts
    4,684
    Points
    4,169

    Contact info:

    Youtube Channel: http://www.youtube.com/CheeseToastHax

    Default

    thanks nity. your the best!

    Got The Same Error is it possible if you could just send the .ff you used when you tested and then i could edit that to my liking?

    0 Not allowed! Not allowed!
    Last edited by CheeseToast; 07-22-2011 at 06:09 AM.
    "It's better to lose an argument/debate then to win. Cause when you lose you grow as a person."
    -CheeseToast

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
All times are GMT -10. The time now is 07:45 AM.
Powered by vBulletin®
Copyright © 2018 vBulletin Solutions, Inc. All rights reserved.