Heist Day
Shooter 2v2 dans un musée d'histoire fictif à Paris.
Heist Day est un shooter 2v2 dynamique dans un musée d'histoire fictif à Paris, développé en 2,5 mois par une équipe de 6 (4 développeurs, 2 artistes). La mécanique centrale repose sur l'interactivité environnementale : les joueurs peuvent extraire, lancer, cacher ou utiliser des objets pour attaquer leurs adversaires.
Les matchs se déroulent en deux rounds chronométrés (3 à 5 minutes). À la fin du premier round, les équipes échangent les rôles :
- Sécurité du Musée : Empêcher le vol des artefacts et intercepter les voleurs. Accès aux caméras de surveillance et possibilité de déclencher l'alarme pour réduire le temps de braquage.
- Voleurs : Accumuler une somme prédéfinie en volant des objets spécifiques. Possibilité de détruire l'environnement pour créer le chaos.
La partie se conclut par un écran de statistiques (kills, morts, interceptions, objets volés, équipe gagnante) avant de retourner dans le lobby interactif 3D.
Mes Contributions
- Direction des équipes de développement et artistique, distribution des tâches et définition de la roadmap technique.
- Maintien d'une vision cohérente pour atteindre les objectifs finaux du projet.
- Backend Go custom : Outil externe de matchmaking et gestion des serveurs de jeu via HTTP + JSON.
- Automatisation : Lancement automatisé des serveurs dédiés pour chaque nouvelle partie.
- EOS Integration : Gestion des comptes, sessions et invitations via Epic Online Services dans un lobby 3D interactif.
- Game loop réseau complet (Game State, Player State, Game Mode), logique 2v2, échange de rôles entre rounds et assignation d'équipes via matchmaking.
- Création et gestion des sessions avec OSSv1.
- Builds Client et Serveur Dédié, déploiement des serveurs sur un hébergeur distant.
- Système de tir entièrement synchronisé, gestion des respawns et mécanique d'alarme interactive.
- Intégration et réplication réseau des objets fracturables (Unreal Fracture plugin) — performances optimisées.
- Synchronisation réseau de l'UI (animations, stats kills/morts, cinématiques d'ouverture par équipe, écrans victoire/défaite).
- Synchronisation audio (effets sonores, events) et décals de balles, polish global du game loop.
// Video Gallery
8 videosAll videos recorded with the client in France and the server in Frankfurt (Germany) — real-world latency conditions.
// Screenshots — In Game
8 screenshots
01
02
03
04
05
06
07
08// Screenshots — Editor
8 screenshots
01
02
03
04
05
06
07
08