Files
Documentation/content/world/entities/npc/_index.fr.md
2026-01-20 20:33:59 +01:00

2.9 KiB

title, type, weight
title type weight
Système NPC docs 10

Le système NPC (Non-Player Character) fournit un framework complet pour créer des personnages de jeu intelligents avec un comportement autonome, une prise de décision et des capacités de navigation.

Package: com.hypixel.hytale.server.npc

{{< cards >}} {{< card link="npc-basics" title="Bases NPC" subtitle="Création et configuration des NPCs" >}} {{< card link="npc-components" title="Composants NPC" subtitle="Composants de base et données" >}} {{< card link="npc-ai" title="IA NPC" subtitle="Blackboard, décisions et capteurs" >}} {{< card link="npc-movement" title="Mouvement NPC" subtitle="Navigation et pathfinding" >}} {{< card link="npc-commands" title="Commandes NPC" subtitle="Commandes admin et debug" >}} {{< /cards >}}

Vue d'Ensemble de l'Architecture

Le système NPC est construit sur plusieurs sous-systèmes interconnectés :

NPCEntity
├── Blackboard (état/mémoire partagé)
├── Role (template comportemental)
│   ├── Instructions (objectifs haut niveau)
│   ├── Sensors (perception)
│   └── Actions (comportements)
├── DecisionMaker (logique IA)
│   ├── Evaluators (vérification conditions)
│   └── Options (sélection actions)
└── Movement
    ├── MotionController (exécution mouvement)
    ├── PathFollower (suivi de chemin)
    └── NavigationGraph (pathfinding A*)

Exemple Rapide

// Enregistrer un événement lié aux NPCs
getEventRegistry().register(NPCSpawnEvent.class, event -> {
    NPCEntity npc = event.getNPC();

    // Accéder au blackboard pour l'état
    Blackboard blackboard = npc.getBlackboard();

    // Obtenir le rôle actuel
    Role role = npc.getRole();

    // Vérifier si le NPC a une cible
    if (blackboard.hasTarget()) {
        Entity target = blackboard.getTarget();
    }
});

Classes Principales

Classe Description
NPCEntity Classe de base pour tous les NPCs
NPCPlugin Point d'entrée plugin pour le système NPC
Blackboard Conteneur d'état partagé pour les données NPC
Role Définit le template de comportement NPC
DecisionMaker Logique de décision IA
MotionController Exécution des mouvements
PathFollower Suivi et parcours de chemin

Sous-packages

Package Fichiers Description
corecomponents/ 327 Composants ECS de base pour NPCs
asset/ 152 Configuration des assets NPC
util/ 50 Classes utilitaires
blackboard/ 30 Gestion d'état
movement/ 27 Comportements de mouvement
systems/ 25 Systèmes ECS
commands/ 23 Commandes admin
decisionmaker/ 22 Logique de décision IA
sensorinfo/ 20 Système de perception
role/ 17 Définitions de rôles
instructions/ 14 Comportements haut niveau
navigation/ 12 Pathfinding