Construire une étude multi-utilisateurs
Comment connecter réellement deux participants pour que les actions de l'un atteignent l'écran de l'autre ?
Ce guide couvre les mécanismes étape par étape : activer le mode multi-utilisateurs, attribuer des rôles, connecter des participants et les garder synchronisés. Pour savoir quand utiliser un design multi-utilisateur, les meilleures pratiques et les études d'exemple existantes, voir Conception d'expérimentations multi-utilisateurs.
Les quatre étapes ci-dessous sont les mêmes pour chaque étude multi-utilisateur, peu importe ce qu'elle teste réellement. Une fois que vous les avez en place, la section "Exemples supplémentaires" montre les mêmes quatre étapes réutilisées dans trois conceptions différentes.
Table des matières
Connaissances Préalables
Une connaissance fondamentale de Labvanced est conseillée, telle que le fonctionnement des événements et l'utilisation des variables, afin de suivre la terminologie utilisée ci-dessous.
Cadres
Le bloc de construction qui contient ce que les participants voient à chaque instant d'une épreuve.
Événements
Ce qu'est un déclencheur et une action, et comment ils se combinent pour construire la logique d'une étude.
Variables
Ce qu'est une variable et comment elle stocke et met à jour des valeurs pendant une étude.
Mise en Place de la Structure
Activation du mode multi-participants
Une étude Labvanced est par défaut conçue pour un seul participant. Aucun des outils multi-utilisateurs, Role_Id, Distribute Variable, la synchronisation, n'existe tant que l'étude n'est pas informée qu'elle fonctionnera avec plus d'une personne à la fois.
Ouvrez Paramètres dans la colonne de droite, puis sous Fonctionnalités Spéciales, cliquez sur Étude Multi-Utilisateurs et cliquez sur Transform. Cela révèle deux champs : Number of Participants (minimum 2) et Maximum Parallel Sessions. Voir Étude Multi-Utilisateurs pour la liste complète des paramètres que cela déverrouille.
Cette action ne peut pas être annulée (la boîte de dialogue de confirmation elle-même est étiquetée Transform Permanently). Décidez du nombre de participants d'abord et dupliquez l'étude au préalable si vous souhaitez également avoir une version à participant unique.

Attribution de rôles avec Role_Id
Avec le mode multi-participants activé, chaque participant exécute toujours une copie identique et non différenciée de l'expérience ; rien ne les distingue encore. Role_Id donne à chaque participant une identité sur laquelle vous pouvez agir, sans collecter d'informations personnelles, afin que leurs expériences puissent commencer à faire des choses différentes.
Ajoutez un événement avec un Trial and Frame Trigger → On Frame Start, puis une action Control Actions → Requirement Actions (If... Then... Else If) :
- Ajouter Exigence : côté gauche →
Variable→ sélectionnezRole_Id; comparaison →equal; côté droit →Constant Value→Number→1 - Puis : ajoutez quelles que soient les actions qui s'appliquent au rôle 1, par exemple
Set Object Propertypour afficher une image cible - Ajouter Else Case : ajoutez les actions qui s'appliquent à tous les autres rôles

Connexion des participants avec Distribute Variable
Un Role_Id différent peut mettre différents contenus devant chaque participant, mais il ne peut toujours pas transférer d'informations entre eux ; l'expérience de chaque participant fonctionne toujours en isolation. Distribute Variable est la seule action qui pousse une valeur de l'expérience d'un participant à celle d'un autre, ce qui fait réellement ressentir l'étude comme partagée plutôt que côte à côte.
Sur quel que soit le déclencheur qui correspond à votre design, par exemple un Button Click Trigger ou Enter on Input Trigger, ajoutez un Variable Actions → Distribute Variable Action :
- Distribuer la valeur à : tous les participants, ou une sélection
- Choisir la variable cible et la valeur : la variable sur l'écran du participant recevant, et ce qu'elle devrait être
- Bloquer : activez ceci si plus d'un participant peut écrire à la même variable cible autour du même moment

priceArray, avec Bloc activé et une limite de taux de type debounce. Maintenir les participants synchronisés
Les participants ne progressent pas à la même vitesse dans l'étude par eux-mêmes. Sans un point de synchronisation, un participant peut atteindre un cadre ultérieur avant que la valeur qu'il attend n'ait même été distribuée, voyant un état vierge ou inachevé au lieu de la réponse de l'autre participant.
Sur le cadre où les participants doivent rester synchronisés, par exemple aucun d'eux ne doit avancer avant que l'autre n'ait répondu, activez Sync Frame Start sous les Paramètres du Cadre. Tout le monde attend à ce cadre jusqu'à ce que tous les participants soient arrivés.

Exemples Supplémentaires
Les quatre étapes ci-dessus ne changent pas. Ce qui change, c'est ce qui est distribué et où se trouve le point de synchronisation. Trois variations travaillées, en commençant par la plus simple :
- Compteur Partagé : la version minimale, une valeur maintenue synchronisée entre deux participants
- Tâche de Description Directeur-Appariement : un participant décrit, l'autre identifie
- Offre et Réponse à Tours de Rôle : un participant propose, l'autre accepte ou rejette
Compteur Partagé
La version la plus simple possible de la structure : les deux participants voient le même total en cours, et soit l'un peut y ajouter.
- Role_Id : non nécessaire ici puisque les deux participants agissent de la même manière.
- Distribuer : sur un
Button Click Trigger, distribuez la valeur à tous les participants, variable cibleSharedCount, valeur =SharedCount + 1. - Synchroniser : aucune nécessaire, puisqu'il n'y a pas de frontière d'essai pour maintenir les participants.
Cela confirme que le mode multi-participants et Distribute Variable fonctionnent avant d'ajouter une logique basée sur les rôles.
Tâche de Description Directeur-Appareilleur
Une tâche de communication référentielle : un participant (le Directeur) décrit un élément cible, l'autre (le Matcher) l'identifie parmi un ensemble de candidats.
- Role_Id :
Role_Id1 voit l'image cible et une entrée de texte.Role_Id2 voit les images candidates et pas de cible. - Distribuer : sur le déclencheur de la touche Entrée du Directeur, distribuez la valeur de texte à une variable
Descriptionsur l'écran du Matcher, avecBlockactivé car seule une description devrait être en cours à la fois. - Synchroniser : activez
Sync Frame Startsur le cadre de l'essai suivant, de sorte que le Directeur ne puisse pas avancer avant que le Matcher ait sélectionné un candidat.
C'est la même structure derrière la Démo de Description d'Image.
Offre et Réponse à Tours de Rôle
Un échange économique : un participant propose un partage d'un montant commun, l'autre accepte ou rejette.
- Role_Id :
Role_Id1 voit une entrée pour le partage proposé.Role_Id2 ne voit rien jusqu'à ce qu'une proposition arrive. - Distribuer : sur le déclencheur de soumission du proposant, distribuez la valeur proposée à une variable
Offersur l'écran du répondant. - Synchroniser : activez
Sync Frame Startsur le cadre des résultats, de sorte que ni le participant ne voit le résultat avant que le répondant n'ait répondu.
C'est la même structure derrière le Jeu de l'Ultimatum.
Un exemple réel de ce motif, utilisant un montant tiré au hasard au lieu d'un montant saisi manuellement : Role_Id égal à 1 déclenche une action Draw Random Number (un tirage uniforme discret entre 50 et 150, enregistré sous amountToSplit), suivi immédiatement par Distribute Variable envoyant amountToSplit à tous les participants, avec Block activé.

amountToSplit, puis Distribute Variable l'envoie à tous les participants avec Block activé. Lectures Supplémentaires
Conception d'Expériences Multi-Utilisateurs
Quand utiliser un design multi-utilisateurs, meilleures pratiques, et une galerie d'exemples existants construits dans Labvanced.
Études Multi-Participants
La référence complète pour activer le mode multi-utilisateurs, les groupes de participants prédéfinis et la synchronisation des cadres/tâches.
Système d'Événements : Distribute Variable
Référence complète des paramètres pour Distribute Variable, y compris l'option de la Stratégie de Limite de Taux non couverte ici.