Documentation - CODAGE

Nombre de membres 


CODAGE

Limitation BOTS  -  par FSMOD

Limitation des BOTS

Penchons nous sur le cas suivant:

Le serveur tourne en DM avec un CVAR bot_minplayers à 12. Il y donc 12 bots sur le terrain. Un vote est lancé avec agrément des autres joueurs afin que la map soit relancée en CTF. Comme il s'agit d'un jeu d'équipe et conformément à la valeur du CVAR bot_minplayers, chaque équipe se verra dotée de 12 joueurs, soit un total général de 24 bots sur le terrain.

Or le manager du serveur, par souci financier, n'a loué que 16 slots. Les bots vont donc occuper tous les slots en bloquant ainsi l'accès au serveur pour tout joueur voulant se connecter, assorti du message d'alerte "Server Full".

Nota: Pour mémoire, le nombre de slots alloués sur le serveur est fixé par le CVAR sv_maxclients.

Un moyen radical et plus sûr est d'empêcher SOF2 de charger plus de bots que de slots alloués.

Modification du code sources

Fichier g_local.h

Après

 extern    vmCvar_t    g_dropWeapon;

Insérez la ligne suivante

 extern    vmCvar_t    g_slot;              // *FSMOD* Limitation BOTS

Fichier g_main.c

Après

 vmCvar_t    g_dropWeapon;

Insérez la ligne suivante

 vmCvar_t    g_slot;   // *FSMOD* Limitation BOTS

Après

 { &g_dropWeapon, "g_dropWeapon", "0", CVAR_ARCHIVE, 0.0f, 0.0f, 0, qfalse },

Insérez la ligne suivante

 { &g_slot, "g_slot", "6", CVAR_SERVERINFO|CVAR_ARCHIVE, 0.0f, 0.0f, 0, qfalse }, // *FSMOD* Limitation BOTS

Dans la fonction CheckVote recherchez le groupe

 if ( strstr( level.voteString, "g_gametype" ) )
        {
            trap_SendConsoleCommand( EXEC_APPEND, "map_restart 0n" );
        }

Le remplacer par le groupe suivant

 if ( strstr( level.voteString, "g_gametype" ) )
        {
            trap_SendConsoleCommand( EXEC_APPEND, "map_restart 0n" );
            trap_SendConsoleCommand( EXEC_APPEND, va("bot_minplayers %i n", g_slot.integer )); // *FSMOD* Limitation BOTS
        }

Le CVAR g_slot est fixé à 6 par défaut mais il peut être défini par n'importe quelle autre valeur dans le fichier server.cfg,  en fonction du nombre de slots loués sur le serveur.

-=confused=-

Publié le 17/03/2019 01:25   Toutes les pages   Prévisualiser...   Imprimer...   Haut
Rubriques

Vous êtes ici :   Accueil » Documentation » CODAGE