Prototype technique réalisé à Rubika Valenciennes focalisé sur la création d'un contrôleur de personnage haute performance pour un environnement HD2D. L'architecture est pensée pour être entièrement modulaire et facilement équilibrable par un Game Designer.
1. Finite State Machine (FSM) avec Context
Le projet utilise une machine à états finis où chaque comportement (Locomotion, Dash, Carry, Parry, Attack) est encapsulé.
- Découplage et Évolutivité : Isoler la logique dans des classes d'états permet d'ajouter de nouvelles fonctionnalités (ex: Grimper, Nager) sans risquer de briser les systèmes existants.
- Gestion des Cycles de Vie : Chaque état possède ses propres méthodes EnterState (initialisation), UpdateState / FixedUpdateState (logique continue) et ExitState (nettoyage), garantissant des transitions fluides.
- Héritage intelligent : Utilisation de classes de base comme PlayerInAirBase pour mutualiser la logique physique (saut, chute, recul).
2. Rôle du PlayerManager (The Orchestrator)
Le PlayerManager agit comme le chef d'orchestre du système :
- Gère les transitions entre les états.
- Appelle dynamiquement l'Update et le FixedUpdate de l'état actuel.
- Maintient un composant principal "clean" et hautement maintenable.
3. Design Orienté Données (ScriptableObjects)
Le système est Data-Driven. Grâce à PlayerData.cs, toutes les variables de gameplay sont centralisées :
- Bénéfice technique : Modification du comportement en temps réel pendant le playtest. Les données sont sécurisées via des Wrappers (PlayerDataInstance) pour éviter toute corruption accidentelle des assets source.
LOGIQUE DE COMBAT ET SENSATIONS (GAME FEEL)
- Système de Parade Frame-Perfect : Implémentation d'une double fenêtre de détection (Parry classique vs Perfect Parry).
- Conservation de Momentum : Le PlayerDashState utilise un système de velocityStock pour conserver l'inertie du joueur en sortie d'action.
- Système d'Animation Robuste : Utilisation de BaseAnimationManager avec des hashs StringToHash pour optimiser les performances.
Combat System (V1 Pre-Alpha)
Aperçu des mécaniques de combos, du buffering d'attaque et du système de parade.

Regarder la vidéo sur YouTube
VAT Animations (Vertex Animation Texture)
Optimisation des animations complexes via le GPU.

Regarder la vidéo sur YouTube
DIAGRAMME DE STRUCTURE (UML)
Voici comment les données et la logique s'articulent :
DEVELOPED BY VICTOR BAZ - RUBIKA VALENCIENNES