Interactions sociales

Votre avatar est votre identité dans l'espace dans lequel vous entrez. Le module de développement SocialInteractions permet à chaque utilisateur de mieux s'exprimer et de se mouvoir avec plus de naturel, en ajoutant une touche de réalisme à l'expérience.

Ce module intègre les fonctionnalités suivantes :

Orientation du corpsOriente la tête de chaque avatar vers la caméra de l'utilisateur correspondant, en combinant la rotation du cou et de la taille. Cela donne un indice subtil sur la personne ou l'objet avec laquelle/lequel un autre interagit.
Animations de discussionAjoute un peu de vie au chat de l'expérience en animant ponctuellement les avatars, en fonction du contenu des messages qu'ils envoient. La liste des « mots déclencheurs » qui activent chaque animation est paramétrable.

Utilisation du module

Installation

Pour utiliser le module SocialInteractions dans une expérience :

  1. Dans l'onglet Voir, ouvrez la Boîte à outils et sélectionnez l'onglet Marketplace.

    Bouton activer/désactiver la Boîte à outils dans Studio
  2. Assurez-vous que le filtre Modèles est sélectionné, puis cliquez sur le bouton Voir tout pour afficher les catégories.

  3. Localisez et cliquez sur la vignette MODULES DEV.

  4. Localisez le module Interactions sociales et cliquez dessus, ou faites-le glisser dans la vue 3D.

  5. Dans la fenêtre Explorateur, déplacez l'intégralité du modèle SocialInteractions dans ServerScriptService. Lors de l'exécution de l'expérience, le module se distribuera lui-même vers divers services et commencera à s'exécuter.

Paramétrage

Le simple fait d'insérer le module SocialInteractions permettra à la fois d'activer les fonctionnalités d'orientation du corps et d'animation du chat dans votre emplacement. Pour régler le comportement par défaut :

  1. Dans StarterPlayerScripts, créez un nouveau LocalScript et renommez-le ConfigureSocialInteractions.

  2. Collez le code suivant dans le nouveau script, en utilisant la fonction configurer pour personnaliser le comportement du module.

    LocalScript

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
    -- Make waist rotation more pronounced and disable the chat animations feature
    SocialInteractions.configure({
    waistOrientationWeight = 0.75,
    useChatAnimations = false,
    })

Mots de déclenchement d'animation de chat

Il est possible de paramétrer la liste des « mots déclencheurs » qui activent chaque animation du chat. Les modèles de chaînes Lua sont utilisés pour augmenter les mots identifiables. Par exemple, l'une des combinaisons utilisées par l'animation Saluer est he+y+o*. Cela signifie que hey, heyyy, heyo, heyyyyo, heeeeyyyyo et les autres variations se qualifient pour déclencher l'animation.

Notez également que les mots déclencheurs sont insensibles à la casse, donc il revient au même de saisir hey que HEY, Hey et autres variations.

AnimationID de l'animationModèles de mots
Saluer3344650532

hell+o+ h+i+o* wa+[sz]+u+p+ y+o+ greetings* salutations* goo+d+%smorning+ he+y+o* howdy+ what's*%s*up+

Applaudir5911729486

ya+y+    h[ou]+r+a+y+    woo+t*    woo+h+oo+    bravo+    congratulations+    congrats+    gg    pog+    poggers+   

Être d'accord4841397952

ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+

Ne pas être d'accord4841401869

no+ no+pe+ yi+ke+s+

Rétrécissement3334392772

not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+

Rire3337966527

lo+l+ rof+l+ ha[ha]* he[he]+

Dormir4686925579

zzz+ yawn+

La liste des mots déclencheurs qui activent chaque animation est configurable, et des animations supplémentaires peuvent être ajoutées via la fonction setTriggerWordsForChatAnimation. Par exemple, le script local suivant LocalScript lie l'animation Tilt au motif de chaîne cra+zy pour prendre en charge des mots déclencheurs comme crazy et craaaaaazy. Il

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild ("SocialInteractions"))
-- Register string pattern for the "Tilt" animation
SocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})
-- Register additional string pattern for the "Applaud" animation
SocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})

Référence API

Fonctions

configurer

configurer(config:table):nil

Remplace les options de configuration par défaut par le biais des clés/valeurs suivantes dans le tableau config. Cette fonction peut uniquement être appelée à partir d'un LocalScript.

CléDescriptionPar défaut
useBodyOrientationActive/désactive la fonctionnalité Orientation du corps.vrai
waistOrientationWeightL'orientation du corps combine la rotation de la taille et celle du cou. Ce paramètre détermine lequel des deux est prédominant. La valeur 1 met l'accent sur la taille, tandis que 0 met l'accent sur le cou.0.5
useChatAnimationsActive/désactive la fonctionnalité Animations du chat.vrai
useDefaultTriggerWordsForChatEmotesLes animations de chat intègrent une liste de mots déclencheurs. Définissez ce paramètre sur false si vous souhaitez les désactiver et ajouter les vôtres.vrai
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
-- Make waist rotation more pronounced and disable the chat animations feature
SocialInteractions.configure({
waistOrientationWeight = 0.75,
useChatAnimations = false,
})

setTriggerWordsForChatAnimation

setTriggerWordsForChatAnimation(animationId:string, triggerWords:table):nil

Enregistre une nouvelle animation dans la fonctionnalité d'animation du chat. En saisissant un mot qui correspond à un modèle de chaîne inclus dans le tableau triggerWords, vous activerez l'animation qui correspond à l'identifiant transmis en tant que premier paramètre.

ya+y+    h[ou]+r+a+y+    woo+t*    woo+h+oo+    bravo+    congratulations+    congrats+    gg    pog+    poggers+

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
-- Register new string pattern for a custom animation
SocialInteractions.setTriggerWordsForChatAnimation(
"rbxassetid://3334538554",
{"cra+zy", "woah+"}
)

Événements

onChatAnimationPlayed

onChatAnimationPlayed(animationId:string, triggerWord:string): RBXScriptSignal

Se lance lorsqu'une animation de chat est déclenchée. La fonction liée reçoit l'ID de l'animation et le mot qui a déclenché l'animation comme arguments. Cet événement peut uniquement être lié dans un LocalScript.

Paramètres
animationId: string ID de l'animation qui a été déclenchée.
triggerWord:stringMot du chat qui a déclenché l'animation.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)