Skip to content

Latest commit

 

History

History
76 lines (41 loc) · 3.15 KB

README.md

File metadata and controls

76 lines (41 loc) · 3.15 KB

pipeline status test-realtime status

JDIS Games 2020

Démarrage

Besoin de docker et docker-compose pour démarrer.

cd server

docker-compose up

Le serveur sera disponible à l'adresse http://localhost:4000.

Utilisation

Pages du client web

  • /

    Page d'accueil de l'application. Cette page est présentement vide, mais sera éventuellement remplie d'informations utiles pour les participants de la compétition.

  • /admin

    Page d'administration de la compétition. Le nom d'utilisateur et le mot de passe sont tous les deux "admin". Permet de démarrer, arrêter le redémarrage automatique et terminer la partie.

  • /spectate

    Permet de visualiser la partie en cours.

  • /scoreboard

    Permet de consulter le tableau des scores pour l'entièreté de la compétition.

  • /team-registration

    Permet d'inscrire une équipe pour la compétition.

Préparation et démarrage d'une partie

Avant de démarrer une partie, il est recommandé d'inscrire au moins une équipe à la compétition. Après l'inscription, prenez soin de noter la clé d'authentification qui vous sera donnée. Vous en aurez besoin pour connecter un agent intelligent au serveur.

Une fois une ou plusieurs équipes inscrites, vous pouvez vous rendre dans la page d'administration pour démarrer la partie. Spécifiez tout d'abord le nombre de «ticks» (le serveur exécute 15 «ticks» par seconde), puis démarrez la partie.

Une fois la partie démarrée, vous pouvez vous rendre dans les pages de visualisation de la partie ou du tableau des scores.

Connection d'un agent au serveur

L'agent inclus dans le projet est écrit en Python. Voir ici pour le télécharger si nécessaire. L'agent a été testé avec les versions 3.7 à 3.10.

Pour démarrer l'agent, rendez-vous dans le dossier StarterPacks/python puis exécutez la commande suivante :

python run_bot.py {secret_key}

L'agent se connectera au serveur et enverra périodiquement des actions au serveur.

Il est possible de démarrer plusieurs agents simultanément avec des clés secrètes différentes pour simuler plusieurs équipes.

Développement

Pour apporter des modifications ou pour exécuter le serveur dans un environnement de développement, il faut d'abord installer Elixir (version 1.13.4) et PostgreSQL (n'importe quelle version récente).

Une fois ces dépendances installées, assurez-vous d'avoir une base de données PostgreSQL accessible avec les paramètres suivants :

  • nom d'utilisateur : postgres
  • mot de passe : postgres
  • nom de la base de données : diep_io_dev

Le reste des instructions de développement sont disponibles dans le fichier README du serveur.

Stress test

La tâche mix stress_test est disponible pour stress tester l'application. Elle démarre le serveur et 30 bots et doit être interrompue avec CTRL+C.