No description
  • Wolfram Language 68.5%
  • C# 29.6%
  • HTML 1%
  • TypeScript 0.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Feror 46b76bb717
All checks were successful
Deploy documentation / deploy (push) Successful in 20s
Project Scaffolding
2026-10-12 15:03:02 +02:00
.forgejo/workflows Updated docs and setup actions to autodeploy 2026-10-08 17:13:35 +02:00
Documentation Project Scaffolding 2026-10-12 15:03:02 +02:00
src Project Scaffolding 2026-10-12 15:03:02 +02:00
.gitattributes Project Scaffolding 2026-10-12 15:03:02 +02:00
README.md Removed "Rendu par Maxime" from the readme 2026-10-07 08:34:46 +02:00

SAÉ-FPS

Contexte

L’objectif du projet est de concevoir un shooter mobile développé sous Unity, permettant à plusieurs joueurs de s’affronter en temps réel. Le jeu est connecté à une infrastructure backend chargée de gérer les échanges de données entre les joueurs, les comptes utilisateurs et les statistiques de jeu.

Le projet consiste à développer un jeu de tir multijoueur mobile réalisé avec Unity, associé à un client web permettant de suivre une partie en tant que spectateur.

Le jeu doit permettre à plusieurs joueurs de s’affronter en temps réel sur une même carte. Les échanges de données entre les joueurs seront assurés par une infrastructure backend utilisant des WebSockets.

Le backend aura également pour rôle de gérer les comptes utilisateurs, les parties, ainsi que les statistiques des joueurs. Une base de données sera utilisée afin de stocker et consulter ces informations.

Le client web aura principalement un rôle de spectateur. Il permettra de visualiser une partie en cours et de suivre les déplacements des joueurs sur une carte.


Problématique

Comment créer un jeu multijoueur permettant à des spectateurs d’assister à une partie sans posséder le jeu ?


Fonctionnalités attendues

  • Carte sur le client Web avec suivi des joueurs (sous forme de points)
  • Possibilité de lancer une partie (concept de lobby)
  • Système d’apparition
  • Collision
  • Système de mouvement
  • Système de tir
  • Système de mort/perte de vie pour logique de partie
  • Logique de partie avec des rounds
  • Synchronisation des joueurs
  • Transmission des informations nécessaires au client web
  • Enregistrement des informations liées aux comptes et aux statistiques des joueurs

Parties prenantes

Joueur

Le Joueur a premièrement besoin de se connecter à l'application mobile.

Le Joueur est un participant à la partie qui contrôle un personnage, et est activement impliqué dans son déroulement. Il possède des points de vie et peut causer des dégâts à ses adversaires.

Le Joueur a pour but de gagner sa partie.

Spectateur

Le Spectateur ne nécessite aucune connexion spécifique pour accéder à ses fonctionnalités.

Le Spectateur est passif, il peut regarder une partie en cours et n’est pas activement impliqué dans son déroulement.

Le Spectateur n’a pas de but particulier.

Créateur

Un Créateur est une sous-catégorie de Joueur.

Un Créateur est un Joueur qui crée une partie.

N’importe quel Joueur peut être un Créateur.


Quintilien

Quoi ?

Développer un shooter multijoueur mobile sous Unity, connecté à un backend et à une base de données, ainsi qu’un client web permettant de visualiser et suivre les parties en direct.

Pourquoi ?

L’objectif est de mettre en place une architecture permettant de gérer un jeu multijoueur en tout en explorant différentes problématiques techniques.

Quand ?

Le projet est réalisé au cours du semestre 5, dans le cadre de la SAÉ. Les différentes fonctionnalités seront développées progressivement au cours de la période de projet.

Où ?

Le jeu sera destiné aux appareils mobiles, tandis que le client spectateur sera accessible depuis un navigateur web. Le backend et la base de données seront hébergés sur une infrastructure permettant la communication entre les différents clients.

Qui ?

Le jeu est destiné aux utilisateurs de tout âge.

Notre équipe comporte :

  • Matteo LAGRAVE
  • Jokin SUARES
  • Sayri CHOTEL
  • Maxime LABAT

Définition des rôles

Jokin — Développement Backend

Responsable principal de la partie backend, incluant le développement et la mise en pratique du serveur ainsi que la gestion de la base de données.

Matteo — Développement mobile

Responsable du développement de l’application mobile et de l’implémentation des fonctionnalités côté client mobile.

Maxime — Développement web

Responsable du développement de l’interface web et de l’ensemble des fonctionnalités côté client web.

Sayri — Assurance qualité logicielle / tests unitaires

Responsable du support, de l’accompagnement des développeurs et du suivi des demandes et incidents.