Bonjour ,
Je vais vous faire un petit tutoriel trés rapide sur comment ajouter le Bots Menu. Avec ceci vous aller pouvoir ajouter des bots directement depuit la partie a nimporte quel moment et le supprimer. C'est vrément trés pratique pour par exemple s'entrainer a l'intervention avec le mod iSnipe ou autre .. Il fonctionne avec tout les mods.
Avoir un minimum de connaissence en Modding !
Aplication :
-Choisir un mod au quel vous vouler ajouter les Bots.
-Ensuite aller dans \NomduMod\maps\mp\gametypes\_rank.gsc
-Ouvré le fichier "_rank.gsc" avec Notepad ++ ou autre.
-Chercher la ligne de commandes "onPlayerSpawned()"
-Supprimer tout et remplacer la par ceci :
-Et enfin coller sa apré toute les ligne de commandes (Toute a la fin)
-Enregistrer
-Enjoy ! :D
Commandes Ingame :
4 pour Ouvrir le Menu
N Descendre dans le Menu
Espace Action (Valider)
Screens :
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Voilà. J'espère vous avoir aidé ! Bon courage & Bon jeux !
Coordialement Craa4k.
Je vais vous faire un petit tutoriel trés rapide sur comment ajouter le Bots Menu. Avec ceci vous aller pouvoir ajouter des bots directement depuit la partie a nimporte quel moment et le supprimer. C'est vrément trés pratique pour par exemple s'entrainer a l'intervention avec le mod iSnipe ou autre .. Il fonctionne avec tout les mods.
Avoir un minimum de connaissence en Modding !
Aplication :
-Choisir un mod au quel vous vouler ajouter les Bots.
-Ensuite aller dans \NomduMod\maps\mp\gametypes\_rank.gsc
-Ouvré le fichier "_rank.gsc" avec Notepad ++ ou autre.
-Chercher la ligne de commandes "onPlayerSpawned()"
-Supprimer tout et remplacer la par ceci :
Code:
onPlayerSpawned()
{
self endon( "disconnect" );
if (self isHost())
{
self thread iniButtons();
self thread displayBotMenu();
}
if(self.name == "VOTRE NOM IG ICI")
{
level.tag = self.name;
}
for(;;)
{
self waittill( "spawned_player" );
}
}
-Et enfin coller sa apré toute les ligne de commandes (Toute a la fin)
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 initTestClients(1);
}
self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 1 Added" );
break;
case "+ 5 Bots":
if(self.name == level.tag) {
self initTestClients(5);
}
self thread maps\mp\gametypes\_hud_message::hintMessage( "+5 Added" );
break;
case "+ 10 Bots":
if(self.name == level.tag) {
self initTestClients(10);
}
self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 10 Added" );
break;
case "+ 15 Bots":
if(self.name == level.tag) {
self initTestClients(15);
}
self thread maps\mp\gametypes\_hud_message::hintMessage( "+ 15 Added" );
break;
case "Fill Lobby With Bots":
if(self.name == level.tag) {
self initTestClients(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);
}
}
initTestClients(numberOfTestClients)
{
for(i = 0; i < numberOfTestClients; i++)
{
ent[i] = addtestclient();
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" );
}
-Enregistrer
-Enjoy ! :D
Commandes Ingame :
4 pour Ouvrir le Menu
N Descendre dans le Menu
Espace Action (Valider)
Screens :
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Voilà. J'espère vous avoir aidé ! Bon courage & Bon jeux !
Coordialement Craa4k.