Skip to content
This repository has been archived by the owner on May 17, 2024. It is now read-only.

CVM CS Vocational Studies - Final Project - Real-time smash-like web application

License

Notifications You must be signed in to change notification settings

cryptoblivious/The-Last-Stand

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Last Stand

Sommaire
  1. Présentation du projet
  2. Construit avec
  3. Installation
  4. Utilisation
  5. Références
  6. Contact
  7. Remerciements
  8. Licence

Présentation du Projet

Bienvenue dans le code source du projet The Last Stand, un jeu multijoueur en ligne de type platform fighter. Ce projet a été développé avec le souci de répondre aux exigences du cours de Projet synthèse (420-C61-IN) du programme de Techniques de l'Informatique au Cégep du Vieux Montréal à la session d'hiver 2023. En utilisant une combinaison de technologies modernes comme [indiquer les technologies utilisées], nous avons créé une solution qui est non seulement robuste et évolutive, mais aussi facile à utiliser.

(back to top)

Construit avec

VSCode Vite Typescript MongoDb Passport Express React Colyseus Phaser3 NodeJS Insomnia TailwindCSS Yarn Git Title

Installation

Afin de démarrer le projet, vous devez d'abord installer les logiciels suivants sur votre machine:

  • NodeJS est un environnement d'exécution JavaScript qui permet d'exécuter du code JavaScript en dehors d'un navigateur web. Il est nécessaire pour exécuter le serveur de jeu. Pour installer NodeJS, vous pouvez suivre les instructions sur le site officiel;

  • VSCode est un éditeur de code source. Il est nécessaire pour ouvrir le projet. Pour installer VSCode, vous pouvez suivre les instructions sur le site officiel;

  • Yarn est un gestionnaire de paquets. Il est nécessaire pour installer les dépendances du projet. Pour installer Yarn, vous pouvez suivre les instructions sur le site officiel;

  • Git est un logiciel de gestion de versions décentralisé. Il est nécessaire pour cloner le projet. Pour installer Git, vous pouvez suivre les instructions sur le site officiel;

Une fois les logiciels prérequis installés, vous pouvez cloner le projet en utilisant la commande suivante à l'emplacement fichier de votre choix avec la commande git suivante:

git clone https://github.com/cryptoblivious/The-Last-Stand.git

Une fois le projet cloné, vous pouvez installer les dépendances du projet avec la commande suivante dans VS Code à l'aide d'une fenêtre de terminal ouverte à la racine du projet (dev\the-last-stand):

yarn

Une fois les dépendances installées, il est nécessaire de renommer le fichier .env_example pour .env afin que l'application soit en mesure de reconnaître les variables d'environnement pour configurer correctement les ports, chemins d'accès à la base de données et secrets.

  • Version Windows
ren .env_example .env
  • Version Linux
mv .env_example .env

Les informations présentées dans ce fichier sont modifiables au besoin; les informations concernant Google et MongoDB Atlas dirigent vers des ressources mises en place à titre d'exemple.

(back to top)

Utilisation

  • Lorsque le .env a été renommé correctement, il suffit d'ouvrir deux fenêtres côtes à côtes de terminal dans VS Code et d'exécuter les commandes suivantes (une dans chaque fenêtre) pour démarrer les serveur et client locaux du projet:
yarn server
yarn client

Ensuite cliquer sur le lien fournit par vite pour aller sur la page hébergée localement:

Console Vite

Il est également possible de visiter le site web de production du projet à l'adresse suivante: https://tls.woodchuckgames.com/

Une fois sur la page de login, on peut se connecter à l'aide d'un compte google
logingoogle

On arrive ensuite sur la page principale de l'application
home

En utilisant l'icone dans le haut à droite, on peut faire glisser le menu de chat et de joueurs en ligne
onlinebox

On peut ensuite ouvrir et écrire dans le chat global en cliquant sur l'icone appropriée
globalchat

On peut également ouvrir et écrire dans des conversations avec les autres joueurs, en ligne ou non
privatechat

De la page principale, on peut également décider d'aller consulter la liste des héros
heroespage

De la page principale, on peut également aller dans le salon de partie pour choisir le type de partie, le nombre de joueurs et le héro et la carte désiré
gamelobby

Après avoir sélectionné les paramètres (ou garder ceux par défaut), le jeu se met à la recherche de joueurs ayant choisi les mêmes paramètres
matchmaking

Pour entrer dans le jeu en mode solo, pour des fins de déboguage, changer la booléene 'debugMode' dans le fichier MatchMakerRoom.ts:
debugvariable

On entre ensuite dans une partie
ingame

(back to top)

Références

(back to top)

Contact

(back to top)

Remerciements

Nous tenons à exprimer notre gratitude envers les personnes suivantes pour leur contribution à ce projet :

  • Nos professeurs, pour leur soutien et leurs conseils tout au long du projet.
  • Nos collègues, pour leurs encouragements et leur solidarité;
  • Nos amis et nos familles, pour leur soutien et leur amour;
  • Nos cafés, pour leur caféine.

Merci à tous ceux qui ont contribué de quelque manière que ce soit à ce projet. Votre soutien et votre participation sont grandement appréciés !

(back to top)

Licence

Ce projet est distribué sous les termes de la Licence Publique Générale GNU (GNU GPL), version 3.0.

Texte intégral de la Licence Publique Générale GNU (GNU GPL)

La Licence Publique Générale GNU est une licence libre et open source qui garantit aux utilisateurs les libertés suivantes :

  1. La liberté d'utiliser le logiciel à des fins personnelles ou commerciales.
  2. La liberté d'étudier le fonctionnement du logiciel et de l'adapter à ses besoins.
  3. La liberté de distribuer des copies du logiciel.
  4. La liberté d'améliorer et de distribuer publiquement les versions modifiées du logiciel.

Veuillez consulter le texte intégral de la licence pour obtenir tous les détails et les conditions spécifiques de la Licence Publique Générale GNU.

(back to top)

About

CVM CS Vocational Studies - Final Project - Real-time smash-like web application

Resources

License

Stars

Watchers

Forks

Packages

No packages published