SourceMod

De Verywiki-FR.

Image:Sourcemod.jpg

Modèle:Pub small

Sommaire

Présentation

SourceMod est l'équivalent de ce que AmxmodX est à Counter-Strike 1.6.
C'est un plugin comportant une partie administration de serveur (comme Mani Admin Plugin) auquel il est possible d'ajouter des plugins/scripts
Voici le site officiel : http://www.sourcemod.net/

Liste des serveurs utilisant ce plugin: http://www.game-monitor.com/search.php?search=sourcemod_version&type=variable .

Installation

L'installation de SourceMod nécessite la présence de MetaMod sur le serveur. Si vous ne l'avez pas, référez vous ici: http://wiki.verygames.net/wiki/index.php/Metamod_Source

Télécharger la dernière nightly : http://www.sourcemod.net/nightly.php
Choisissez la version Simplified Packages en .tar.gz(version linux)
Décompressez l'archive, vous optenez un dossier ADDONS et un dossier CFG
Uploadez ces 2 dossiers dans votre FTP à leur endroit respectif
Ajoutez la ligne suivante dans le fichier metaplugins.ini

addons/sourcemod/bin/sourcemod_mm

Rebootez le serveur.
Utilisez la commande "meta list" pour vérifier que sourcemod soit bien chargé. Les lignes suivante doivent apparaitre:

Listing 3 plugins:
[01] SourceMod (1.0.4) by AlliedModders LLC
[02] CS:S Tools (1.0.4) by AlliedModders LLC
[03] SDK Tools (1.0.4) by AlliedModders LLC

Configuration

Le premier fichier où vous pouvez configurer SourceMod est: /addons/sourcemod/configs/core.cfg

Voici les variables que vous retrouvez dans ce fichier:

BasePath: Spécifie le chemin où se trouve SourceMod (très déconseillé d'y toucher)
Logging: on pour activer les logs, off pour les désactiver
LogMode: c'est le mode de logs
         daily: 1 fichier par jour
         map: 1 fichier par map
         game: les logs seront dans le fichier de logs du jeu
ServerLang: Langue qu'utilisera le plugin
            en (anglais)
            es (espagnol)
            fr (francais)
PublicChatTrigger: Spécifie le caractère qui devra précéder les commandes T'chat public (par défaut "!" )
SilentChatTrigger: Spécifie le caractère qui devra précéder les commandes T'chat privée (par défaut "/" ) 


Le deuxième fichier est: /cfg/sourcemod/sourcemod.cfg

Ce fichier sera exécuté à chaque changement de map.

// Specifie comment les actions des admins sont affichées pour les joueurs
// 1: Montre l'action de l'admin aux non-admins.
// 2: Si 1 est activé, le nom de l'admin est montré.
// 4: Montre l'action de l'admin aux autres admins.
// 8: Si 4 est activé, le nom de l'admin est montré.
// 16: Toujours montrer le nom de l'admin au 'super' admin (flag z).
// Par defaut: "13" (1+4+8) : signifie que les options 1, 4 et 8 sont activées
sm_show_activity "13" 


SourceMod intégre des fonctionnalités par défaut:

Antispam : sm_flood_time 0.75 // 0: désactiver, sinon égal au temps (en secondes ) autorisé entre 2 phrases.
Slot reservé : sm_reserved_slots 1 // 0: désactiver, 1: activer sm_hide_slots 1 // 0: Montrer le slot reservé, 1: le cacher  

Ajouter un admin

Editez le fichier addons/sourcemod/configs/admins_simple.ini Vous pouvez déclarer un admin par ip,nom et mot de passe mais surtout en utilsant le steamid :

"steamid_0:1:2584551"  "flag"

Voici la liste des droits(flag) :

"reservation"	        "a"			//Acces au slot réservé.
"generic"		"b"			//Admin generique.
"kick"			"c"			//Kicker d'autres joueurs.
"ban"			"d"			//Bannir d'autres joueurs.
"unban"			"e"			//Débannir.
"slay"			"f"			//Slayer/tuer d'autres joueurs.
"changemap"		"g"			//Changer de map.
"cvars"			"h"			//Modifier les cvars.
"config"		"i"			//Executer les fichiers de configs (.cfg).
"chat"			"j"			//Privilèges pour discuter.
"vote"			"k"			//Créer ou lancer un vote.
"password"		"l"			//Mettre un mot de passe sur le serveur.
"rcon"			"m"			//Utiliser les commandes RCON.
"cheats"		"n"			//Modifier la commande sv_cheats ou utiliser des commandes pour tricher.
"root"			"z"                     //Affecte tous les droits ci-dessus.

Exemple:

"STEAM_0:1:XXXXX"   "bce"       // Droit de kicker, bannir, et slayer
"127.0.0.1"         "z"         // Tous les droits autorisés


utilisez la commande "sm_admin" pour faire apparaitre le menu admin

Liste des commandes

Les <> signifie que le paramètre est obligatoire. Les [] signifie que le paramètre est optionnel.

Il y a plusieurs facons de désigner un joueur:

  1. name : Ceci peut être une partie du pseudo du joueur. Par exemple pour bannir MagicYan on peut tapez : sm_ban Magic (si plusieurs joueurs ont Magic dans leur pseudo, un message d'erreur sera retourné).
  2. #userid : Le IDJoueur peut être trouvé en tapant "users" dans la console).
  3. #name : Si on met # devant le nom du joueur alors il faut spécifier le pseudo exact du joueur.


sm_kick <#IDJoueur|pseudo> [raison] (Kicker un joueur)
sm_map <map> (Changes la map en cours)
sm_rcon <commande> (Execute la commande via le rcon)
sm_cvar <cvar> [valeur]   (Recherche ou modifie la valeur de la cvar)
sm_execcfg <nom_du_fichier> (Execute le fichier de config, le chemin n'est pas obligatoire mais l'extension oui)
sm_who [#IDJoueur|pseudo] (Liste tous les joueurs et leurs droits)
sm_ban <#IDJoueur|pseudo> <minutes|0> [raison] (Bannir un joueur)
sm_unban <SteamID> (Débannir un steamID)
sm_addban <temps> <SteamID> [raison] (Ajoute un steamID à la liste de bannis)
sm_banip <temps> <IP> [raison] (Ajoute une IP à la liste de bannis)


Toutes ces commandes peuvent être taper dans le chat. Il faut juste remplacer sm_ par ! ou /

Pour bannir MagicYan, je taperai donc dans le chat: !ban Magic Et si vous souhaitez que la commande ne soit pas vu par les autres joueurs, il faut tapez: /ban Magic

Compiler un plugin

Voici le compilateur online : http://www.sourcemod.net/compiler.php
Ce compilateur est mis à jour toutes les nuits avec la dernière build du sourcemod.
Il vous suffit d'uploader la source ou bien de coller le code. Une fois la compilation terminée, vous obtenez un fichier avec l'extension .smx


Trouver un plugin

Voila la liste des plugins pour CS:S [1] Et aussi pour DOD:S [2]

Installer un plugin/

Une fois le plugin compilé ou si vous avez téléchargé directement le .smx(il est conseillé de compiler), uploadez le fichier dans le dossier addons/sourcemod/plugins/
Sourcemod est configuré par défaut pour charger automatiquement tous les plugins placé dans ce dossier.
Si vous voulez personnaliser le lancement des plugins, editez le fichier addons/sourcemod/configs/plugin_settings.cfg

Pour voir si le plugin est bien chargé, changez de map et utilisez la commande "sm plugins list"

Installer une extension

Placez les fichiers (.inc et .ext.so) dans le dossiers addons/sourcemod/extensions/


Coder un plugin/script/extension

Vous trouverez un maximum de renseignements sur le wiki du projet : http://wiki.alliedmods.net/Category:SourceMod_Development
Documentation en ligne sur le sdk du sourcemod : http://www.sourcemod.net/sdk/dox/

Crédits

David "BAILOPAN" Anderson - Project Manager
-lead Developer
-(Overall Architecture and Language))

Borja "faluco" Ferrer
-Core Developer
-(Architecture and Language)

Scott "Damaged Soul" Ehlert
-Core Developer
-(HL2 Engine and hax0ring)