Page 1 sur 1

MapCycle

Posté : 29 févr. 2024, 19:32
par Papy___
mapcycle.jpg



Ce plugin vous permet de changer de map automatiquement dans un ordre précis ou aléatoire. Vous pouvez définir les maps via leur nom de map et via le Workshop. Vous pouvez également activer le rtv.
Ce plugin fonctionne sous Counter-Strike 2.
CSSharp doit être installé et fonctionnel.


Installation

Téléchargez et décompressez l'archive au bas de ce tutoriel.
Uploadez le dossier addons dans csgo.
Relancez votre serveur ou chargez le plugin en tapant en console la commande
css_plugins load MapCycle
Une fois le plugin chargé le fichier de configuration MapCycle.json se crée dans
addons/counterstrikesharp/configs/plugins/MapCycle/
Éditez le et configurez le.


Configuration

Voici son contenu

Code : Tout sélectionner

{
  "ConfigVersion": 2,
  "MapCycle": {
    "RandomOrder": false,
    "MapChangeAtTheEndOfMatchDelay": 19
  },
  "Maps": [
    {
      "Name": "test_official_map",
      "DisplayName": "Offi (REMOVE IT)",
      "Id": "test_official_map",
      "Workshop": false
    },
    {
      "Name": "test_workshop",
      "DisplayName": "WS (REMOVE IT)",
      "Id": "123123123",
      "Workshop": true
    }
  ],
  "Rtv": {
    "Enabled": true,
    "AutoVoteEnabled": true,
    "AutoVoteTimeStartInSeconds": 0,
    "AutoVoteRoundStart": 3,
    "AutoVoteStartAtTheEndOfMatch": false,
    "PlayerCommandEnabled": true,
    "PlayerCommandTriggerAVote": false,
    "PlayerCommandRatioEnabled": false,
    "PlayerCommandRatio": 0.5,
    "PlayerCommandChangeTheMapDirectlyAfterVote": false,
    "VoteMapCount": 5,
    "VoteDurationInSeconds": 30,
    "VoteRatioEnabled": true,
    "VoteRatio": 0.5,
    "ExtendMap": false
  }
}
  • ConfigVersion = ne pas toucher
  • RandomOrder = sur true active le changement de map aléatoire. Sur false le changement de map se fera dans l'ordre que vous avez définit.
  • MapChangeAtTheEndOfMatchDelay = délai en secondes avant le changement de map une fois le panneau de victoire affiché.
Maps = dans cette catégorie vous définissez l'ordre des maps, si le workshop est actif et si oui donner l'id de la map etc.
  • Name = nom de la map, par exemple de_dust2
  • DisplayName = le nom de la map qui sera affiché, par exemple Dust 2
  • Id = si c'est une map officielle vous mettez son de_dust2 et si elle provient du workshop mettez son ID.
  • Workshop = sur true active le Workshop. Sur false désactive.

    Rtv = dans cette catégorie vous activez et configurez le RTV.
    • Enabled = sur true active le RTV, sur false désactive.
    • AutoVoteEnabled = sur true active le déclenchement automatique du vote. Sur false désactive.
    • AutoVoteTimeStartInSeconds = déclenchera le vote après ce nombre de secondes. Remplace AutoVoteRoundStart et AutoVoteStartAtTheEndOfMatch. Sur 0 pour désactiver.
    • AutoVoteRoundStart = Nombre de round effectué avant le déclenchement du vote.
    • AutoVoteStartAtTheEndOfMatch = Sur true permet de voter à la fin du match. Remplace AutoVoteRoundStart. Sur false désactive.
    • PlayerCommandEnabled = Sur true les joueurs peuvent utiliser la commande !rtv. Sur false désactive.
    • PlayerCommandTriggerAVote = sur true déclenche un vote lorsque les joueurs tapent !rtv au lieu de changer directement la map. Sur false désactive
    • PlayerCommandRatioEnabled = Sur true permet l'utilisation de PlayerCommandRatio. Sur false désactive
    • PlayerCommandRatio = De 0.0 à 1.0. Ce ratio déclenche l'action de la commande !rtv uniquement si le ratio de joueurs ayant tapé !rtv est atteint.
    • PlayerCommandChangeTheMapDirectlyAfterVote = Sur true déclenche le changement de carte dès la fin du vote. Sur false désactive.
    • VoteMapCount = Le nombre de maps proposées lors du vote.
    • VoteDurationInSeconds =La durée du vote en secondes.
    • VoteRatioEnabled = Sur true permet l'utilisation de VoteRatio. Sur false désactive.
    • VoteRatio = De 0.0 à 1.0. Le ratio minimum de joueurs pour que le vote soit valable, sinon une map sera choisie par le cycle de map.
    • ExtendMap Sur true ajoute une option de vote pour continuer sur la map en cours. Sur false désactive.
    Voici un exemple de configuration pour des maps officielles sans utilisation du Workshop et sans utilisation du !rtv.

    Code : Tout sélectionner

    {
      "ConfigVersion": 2,
      "MapCycle": {
        "RandomOrder": false,
        "MapChangeAtTheEndOfMatchDelay": 5
      },
      "Maps": [
        {
          "Name": "de_dust2",
          "DisplayName": "Dust 2",
          "Id": "de_dust2",
          "Workshop": false
        },
        {
          "Name": "de_mirage",
          "DisplayName": "Mirage",
          "Id": "de_mirage",
          "Workshop": false
        },
    	{
          "Name": "cs_office",
          "DisplayName": "Office",
          "Id": "cs_office",
          "Workshop": false
        },
    	{
          "Name": "de_inferno",
          "DisplayName": "Inferno",
          "Id": "de_inferno",
          "Workshop": false
        },
    	{
          "Name": "cs_italy",
          "DisplayName": "Italy",
          "Id": "cs_italy",
          "Workshop": false
        },
    	{
          "Name": "de_nuke",
          "DisplayName": "Nuke",
          "Id": "de_nuke",
          "Workshop": false
        }
      ],
      "Rtv": {
        "Enabled": false,
        "AutoVoteEnabled": false,
        "AutoVoteTimeStartInSeconds": 0,
        "AutoVoteRoundStart": 3,
        "AutoVoteStartAtTheEndOfMatch": false,
        "PlayerCommandEnabled": true,
        "PlayerCommandTriggerAVote": false,
        "PlayerCommandRatioEnabled": false,
        "PlayerCommandRatio": 0.5,
        "PlayerCommandChangeTheMapDirectlyAfterVote": false,
        "VoteMapCount": 5,
        "VoteDurationInSeconds": 30,
        "VoteRatioEnabled": true,
        "VoteRatio": 0.5,
        "ExtendMap": false
      }
    }
    Je fais donc tourner le serveur sur les maps de_dust2, de_mirage, cs_office, de_inferno, cs_italy et de_nuke.
    Faites bien attention car comme vous pouvez le voir ma dernière map est de_nuke et le "module" est configuré comme ceci

    Code : Tout sélectionner

    	{
          "Name": "de_nuke",
          "DisplayName": "Nuke",
          "Id": "de_nuke",
          "Workshop": false
        }
    et vous pouvez voir que contrairement aux autre maps le "module" se termine par } alors que les autres maps se terminent par },. Vu que c'est le dernier de la liste il faut donc retirer la , à la fin donc dans votre liste il faudra faire de même sinon ça ne fonctionnera pas.

    Vous relancez votre serveur pour appliquer les modifications ou rechargez le plugin en console avec la commande
    css_plugins reload MapCycle
    Vous venez de configurer le plugin directement par le fichier de config. Vous pouvez également, via des commandes, ajouter des maps etc.


    Les commandes

    Pour pouvoir administrer le plugin vous devez avoir le flag @css/changemap. Si vous êtes admin root vous l'avez déjà de base. Si vous voulez l'ajouter a un admin en particulier qui ne l'a pas vous éditez le fichier
    addons/counterstrikesharp/configs/admins.json
    puis dans la partie flags vous ajoutez le flag @css/changemap.

    Voici les commandes ingame
    • !addmap = Ajoute une nouvelle map au cycle sans modifier manuellement le fichier de config. Par exemple : !addmap cs_assault Assault 3070594412 (!addmap nom_de_la_map nom_affiché ID_de_la_map)
    • !removemap = Supprime une map du cycle. Par exemple !removemap cs_assault
    • !keepmap = Ajoute la map en cours au cycle. P
    • !goto = Vous permet de changer de map immédiatement vers une map du cycle. Par exemple !goto cs_assault
    • !go = change de map immédiatement vers la suivante du cycle.
    • !cfgr = Modifie une valeur dans la configuration du plugin sans redémarrer le serveur.
    • !resetrtv = Réinitialise le Rock The Vote (RTV).
    • !nextmap = Affiche la map suivante ou définit une autre map suivante par la commande !nextmap cs_assault. La commande !nextmap est accessible aux joueurs.
    • !rtv = Initie un vote ou déclenche un changement de map en fonction d'un ratio. Commande accessible aux joueurs.

    Source : https://github.com/RonanLOUARN/Map-Cycle