Garry's Mod Wiki

Revision Difference

player.CreateNextBot#524857

<function name="CreateNextBot" parent="player" type="libraryfunc"> <description> Similar to the serverside command "bot", this function creates a new Player bot with the given name. This bot will not obey to the usual "bot_*" commands, and it's the same bot base used in TF2 and CS:S. The best way to control the behaviour of a Player bot right now is to use the <page>GM:StartCommand</page> hook and modify its input serverside. <note>Despite this Player being fake, it has to be removed from the server by using <page>Player:Kick</page> and **NOT** <page>Entity:Remove</page>. Also keep in mind that these bots still use player slots, so you won't be able to spawn them in singleplayer!</note> <note>Any Bot created using this method will be considered UnAuthed by Garry's Mod</note> </description> <realm>Server</realm> <args> <arg name="botName" type="string">The name of the bot, using an already existing name will append brackets at the end of it with a number pertaining it. Example: "Bot name test", "Bot name test(1)".</arg> </args> <rets> <ret name="" type="Player">The newly created Player bot. Returns NULL if there's no Player slots available to host it.</ret> </rets> </function> <example> <description>Create a bot if that is possible.</description> <code> local listBots = {} function CreateBot() if ( !game.SinglePlayer() && player.GetCount() &lt; game.MaxPlayers() ) then if ( !game.SinglePlayer() && player.GetCount() < game.MaxPlayers() ) then local num = #listBots listBots[ num ] = player.CreateNextBot("Bot_" .. ( num + 1 ) ) return listBots[ num ] else print( "Can't create bot!" ) end end </code> </example>