> ## Documentation Index
> Fetch the complete documentation index at: https://docs.humalike.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Voix et ciblage direct

> Comprenez la voix de proximité, l'audio des véhicules, le PTT et la sélection des PNJ.

La voix des PNJ Humalike utilise le client WebRTC inclus dans la ressource et se
configure automatiquement à partir de la licence serveur. Mumble n'est pas
utilisé pour transporter l'audio des PNJ, et les propriétaires de serveur ne
configurent ni endpoint vocal ni secrets vocaux.

La voix des joueurs reste gérée par la ressource vocale habituelle du serveur.
Lorsque `pma-voice`, `saltychat` ou `yaca-voice` est en cours d'exécution,
Humalike observe son état radio et téléphone afin de ne pas transmettre aux PNJ
pendant ces conversations. L'adaptateur `pma-voice` est vérifié en jeu ; les
adaptateurs SaltyChat et yaca suivent les événements et exports publiés de ces
ressources et n'ont pas encore été exécutés avec elles. Toute autre ressource
vocale ou téléphonique le signale elle-même depuis le client :

```lua theme={null}
exports.humalike:SetVoiceBusy('phone_call', true)  -- while the call lasts
exports.humalike:SetVoiceBusy('phone_call', false)
```

Les raisons sont préfixées par la ressource appelante et supprimées lorsqu'elle
s'arrête.

## Appuyer pour parler

Les joueurs parlent aux PNJ IA avec la touche appuyer pour parler de Humalike.
Ils peuvent modifier l'association dans les paramètres de touches de FiveM. Le
HUD indique si Humalike est en train de transmettre.

Un HUD personnalisé peut s'abonner côté client :

```lua theme={null}
AddEventHandler('humalike:voice:transmittingChanged', function(active)
    -- Update the server's voice indicator.
end)
```

## Quel PNJ entend le joueur

La ressource maintient en continu un petit ensemble de cibles de conversation
directe afin que le HUD reflète le routage courant avant que le joueur n'appuie
sur le PTT. Elle privilégie :

1. Un PNJ qui suit ce joueur.
2. Les PNJ partageant le véhicule du joueur.
3. Un PNJ proche vers lequel le ped du joueur et la caméra de jeu sont dirigés.

Pour une conversation ordinaire en face à face, la cible doit être proche. Si
plusieurs PNJ sont éligibles par proximité et direction du regard, le plus
proche est sélectionné. Les cibles directes remplacent l'audience ordinaire non
muette pour cet énoncé, ce qui empêche un PNJ ambiant proche et un PNJ statique
plus éloigné de répondre tous les deux.

Les relations de suivi et de véhicule partagé restent éligibles au-delà de la
portée normale du face à face. Cela garde un compagnon audible et réactif lors
de la traversée d'une zone bondée.

## Indicateurs de proximité et de sourdine

Humalike limite le nombre de conversations PNJ actives autour de chaque joueur.
Le libellé indique lorsqu'un PNJ ne fait pas partie de l'ensemble d'écoute de ce
joueur. La sélection de la cible directe met à jour cet état afin que le PNJ
auquel le joueur s'adresse ne soit pas présenté comme indisponible pendant que
d'autres PNJ proches sont temporairement en sourdine.

La sourdine est par joueur. Deux joueurs dans la même zone peuvent avoir des PNJ
actifs différents sans que le PNJ change globalement.

## Véhicules

Les joueurs et les PNJ dans le même habitacle restent connectés par la voix. Un
PNJ qui suit un joueur est prioritaire pour ce joueur, y compris après être
monté dans un véhicule. Les autres joueurs conservent leur propre routage et
leurs propres priorités.

## Diagnostiquer la voix

Exécutez `/voice` dans le client FiveM pour inspecter la connexion locale.
Vérifiez aussi :

* l'autorisation du microphone du navigateur/NUI ;
* la touche PTT Humalike configurée ;
* que la licence serveur est valide ;
* que le callback enregistré pointe toujours vers ce FXServer ;
* qu'OneSync est activé.

Activez `humalike_debug` uniquement pendant le diagnostic d'un problème. Ne
publiez pas de journaux contenant des URL de connexion ou des identifiants.

## Suite

* [Configurer Humalike](/fr/ai-npc/configuration).
* [Passer en revue le suivi et le comportement en véhicule](/fr/ai-npc/gameplay#suivi-et-véhicules).
* [Dépanner un PNJ qui ne répond pas](/fr/ai-npc/operations#le-pnj-ne-répond-pas).
