2 votes

CS:GO fichiers de configuration par équipe

TLDR : Je veux être capable d'avoir terrorist.cfg y counterterrorist.cfg pour changer mes raccourcis clavier (par exemple, F1 doit acheter un AUG ou un AK-47, mais pas un SG ou un M4).

Voici mon plan actuel. Étape 1 : Créer un fichier de configuration teambinds.cfg :

clear
say_team GLHF everyone!
condump
exec team.cfg

Étape 2 : Dans team.cfg on tourne en boucle :

wait
exec team.cfg

Étape 3 : Demandez à un script Python de rechercher le fichier créé par condump. C'est son signal pour se mettre au travail. Il devrait trouver mon message "GLHF" préfixé par l'un ou l'autre des éléments suivants (Terrorist) o (Counter-Terrorist) . C'est comme ça qu'il sait dans quelle équipe je suis. Il remplace alors team.cfg avec l'un ou l'autre :

exec terrorist.cfg
condump

ou

exec counterterrorist.cfg
condump

Lorsque le script Python voit le deuxième condump, il nettoie tout et réinitialise (en supprimant les deux condumps, en remplaçant team.cfg par la boucle).

Questions :

  • 1) Est-ce que cela compte comme une aide extérieure (est-ce que cela va me faire bannir par ACC) ?
  • 2) Existe-t-il un moyen de déclencher l'exécution initiale ?
  • 3) Sûrement, sûrement, sûrement, il y a un meilleur moyen de déterminer mon équipe que say_team .... s'il vous plaît ?
  • 4) Est-il possible de contourner toute cette configuration de ruban adhésif et de fil de fer et d'avoir des configurations par équipe ?

2voto

dly Points 15016

Tu n'as pas besoin de faire compliqué comme ça.

Si vous voulez acheter des armes spécifiques à une équipe en utilisant la même clé pour les deux équipes, vous pouvez simplement mettre les deux sur la clé.

Par exemple, si vous voulez utiliser F3 pour acheter l'AK-47 ou le M4A1 et F4 pour acheter l'AUG ou le SG en fonction de votre équipe :

bind "F3" "buy ak47; buy m4a1"
bind "F4" "buy aug; buy sg556"

En appuyant sur F3 sur CT on achète un M4 et sur T on achète un AK-47 (et F4 pour l'AUG ou le SG).

Cela fonctionne également avec d'autres objets disponibles uniquement pour des équipes spécifiques, comme le Molotov/Incendiaire.

De cette façon, il est tout à fait légal car vous n'avez pas à vous soucier des scripts externes.


Ou si vous avez vraiment besoin que l'AUG et le SG soient séparés...

Utilisez des configurations basées sur les équipes :

créez deux configurations (quelque chose comme t.cfg et ct.cfg) et mettez-y vos scripts d'achat et autres paramètres.

A la fin du t.cfg :

bind "F1" "exec ct.cfg"
echo "Terrorist Config loaded"

Et vice versa le ct.cfg :

bind "F1" "exec t.cfg"
echo "Counter-Terrorist Config loaded"

Vous pouvez également remplacer ou modifier l'écho par un son plus soigné :

play ui\now-playing-as-counter-terrorist
play ui\now-playing-as-terrorist

Vous pouvez maintenant les activer en utilisant la touche F1 et vous n'avez plus à vous soucier des scripts externes qui manipulent vos fichiers de jeu. VAC va certainement jeter un coup d'œil à votre script python.

2voto

rosuav Points 498

Solution trouvée. Elle nécessite toujours un script Python externe, mais de façon beaucoup moins étrange. La clé ici est un "intégration de l'état du jeu" qui est la même chose que celle utilisée par un HUD personnalisé.

Étape 1 : Créer un fichier de configuration gamestate_integration_python.cfg :

"GameState Integration Configs"
{
    "uri"       "http://127.0.0.1:27014/"
    "timeout"   "5.0"
    "buffer"    "0.1"
    "throttle"  "0.5"
    "data"
    {
        "player_id"         "1"
    }
}

Étape 2 : Créez un script Python (également dans le répertoire csgo/cfg) qui écoute les requêtes entrantes et met à jour les fichiers de configuration.

from flask import Flask, request
app = Flask(__name__)

@app.route("/", methods=["POST"])
def update_configs():
    if not request.json: return "", 400
    team = request.json.get("player", {}).get("team")
    with open("gsi_player_team.cfg", "w") as f:
        if team == "T":
            f.write("buy ak47")
        else:
            f.write("buy aug")
    return "" # Response doesn't matter

if __name__ == "__main__":
    app.run(host="127.0.0.1", port=27014)

Étape 3 : bind f1 "exec gsi_player_team"

Étape 4 : Assurez-vous que le script Python est toujours en cours d'exécution lorsque CS:GO l'est.

L'intégration de l'état du jeu est automatiquement déclenchée (plusieurs fois, en fait), et les informations essentielles lui sont fournies. En fait, cela peut être utilisé pour de nombreuses autres personnalisations, également. Pour autant que je sache, cela ne viole aucune règle et ne devrait pas entraîner un bannissement du VAC.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X