[{"data":1,"prerenderedAt":923},["ShallowReactive",2],{"guide:find-the-needle-talky":3},{"id":4,"slug":5,"status":6,"visibility":7,"required_feature":8,"category":9,"tags":16,"level":22,"icon":15,"cover_url":8,"default_locale":23,"locales":24,"title":26,"summary":29,"reading_minutes":32,"sort_order":33,"published_at":34,"updated_at":35,"blocks":36,"linked_guides":914},7,"find-the-needle-talky","published","public",null,{"id":10,"slug":11,"name":12,"icon":15},4,"game-integrations",{"en":13,"fr":14},"Game integrations","Intégrations de jeux","ph:game-controller",[17,18,19,20,21],"find-the-needle","twitch","youtube","webhook","mod","intermediate","fr",[23,25],"en",{"en":27,"fr":28},"Find The Needle × LibertyTalk: Talky Needle","Find The Needle × LibertyTalk : Talky Needle",{"en":30,"fr":31},"A follow drops a duck named after the viewer on your hay pile, a raid triggers an avalanche, a channel points reward sets off a fake detector alert. Part 1: install the unofficial mod and its bridge. Part 2: choose what happens in the game.","Un follow fait tomber un canard à son nom sur votre tas de foin, un raid déclenche une avalanche, une récompense de points lance une fausse alerte du détecteur. Partie 1 : installer le mod non officiel et son pont. Partie 2 : choisir ce qui se passe en jeu.",11,0,"2026-11-06T18:43:31Z","2026-11-06T19:16:18Z",[37,43,78,88,97,106,113,133,141,146,167,172,197,203,211,216,221,228,233,257,265,270,273,278,283,286,294,299,304,307,331,363,368,373,378,424,432,437,509,517,522,527,532,537,659,668,673,709,714,719,724,728,736,741,746,752,863,868,873,878,902,907],{"id":38,"text":39,"type":42},"intro-what",{"en":40,"fr":41},"Talky Needle connects your Twitch and YouTube events to your Find The Needle game. When Bob follows your channel, a rubber duck named \"Bob\" falls on your hay pile. A raid triggers a hay avalanche and throws you into the air. A channel points reward can make your detector beep up to \"NEEDLE FOUND!\" before revealing it was a fake.","Talky Needle relie vos événements Twitch et YouTube à votre partie de Find The Needle. Quand Bob suit votre chaîne, un canard en plastique portant le nom « Bob » tombe sur votre tas de foin. Un raid déclenche une avalanche de foin et vous envoie en l'air. Une récompense de points de chaîne peut faire biper votre détecteur jusqu'à « AIGUILLE TROUVÉE ! », avant de révéler que c'était faux.","paragraph",{"id":44,"type":45,"steps":46},"intro-flow","flow",[47,55,63,71],{"kind":48,"label":49,"detail":52},"trigger",{"en":50,"fr":51},"Twitch follow","Follow sur Twitch",{"en":53,"fr":54},"Bob follows your channel.","Bob suit votre chaîne.",{"kind":56,"label":57,"detail":60},"action",{"en":58,"fr":59},"LibertyTalk widget","Widget LibertyTalk",{"en":61,"fr":62},"Sends `{\"user_name\":\"Bob\"}` to the bridge, through the tunnel.","Envoie `{\"user_name\":\"Bob\"}` au pont, à travers le tunnel.",{"kind":64,"label":65,"detail":68},"external",{"en":66,"fr":67},"Bridge on your PC","Pont sur votre PC",{"en":69,"fr":70},"Runs the `new_follower` workflow.","Lance le workflow `new_follower`.",{"kind":64,"label":72,"detail":75},{"en":73,"fr":74},"Mod in the game","Mod dans le jeu",{"en":76,"fr":77},"Drops the \"Bob\" duck.","Fait tomber le canard « Bob ».",{"id":79,"kind":80,"text":81,"type":84,"title":85},"intro-unofficial","warning",{"en":82,"fr":83},"Talky Needle is an unofficial mod, not affiliated with the developer of Find The Needle, and you use it at your own risk. It requires the full game. The game detects mods at startup and takes the run off the online leaderboards. This exclusion may last after you uninstall. The mod neither reads nor changes the game's `.pck` file.","Talky Needle est un mod non officiel, sans lien avec le développeur de Find The Needle, et vous l'utilisez à vos risques. Il demande le jeu complet. Le jeu détecte les mods au lancement et sort la partie des classements en ligne. Cette exclusion peut durer après la désinstallation. Le mod ne lit ni ne modifie le fichier `.pck` du jeu.","callout",{"en":86,"fr":87},"Unofficial mod","Mod non officiel",{"id":89,"kind":90,"text":91,"type":84,"title":94},"intro-tested","info",{"en":92,"fr":93},"Talky Needle 0.2.1 was run on Find The Needle EA V12, in single player, on Windows 11. A game update can move what the mod relies on: the bridge then prints `warning: hooks missing` when a game loads.","Talky Needle 0.2.1 a été lancé sur Find The Needle EA V12, en solo et sur Windows 11. Une mise à jour du jeu peut déplacer ce que le mod utilise : le pont écrit alors `warning: hooks missing` au chargement d'une partie.",{"en":95,"fr":96},"Tested version","Version testée",{"id":98,"type":99,"title":100,"summary":103},"part-1-enable","part",{"en":101,"fr":102},"Turn on Talky Needle in the game","Activer Talky Needle dans le jeu",{"en":104,"fr":105},"Install the mod and the bridge, test from the F8 menu, open the tunnel, then connect LibertyTalk.","Installer le mod et le pont, tester depuis le menu F8, ouvrir le tunnel, puis relier LibertyTalk.",{"id":107,"text":108,"type":111,"level":112},"p1-need-section",{"en":109,"fr":110},"What you need","Ce qu'il vous faut","heading",2,{"id":114,"type":115,"items":116,"ordered":132},"p1-need-list","list",[117,120,123,126,129],{"en":118,"fr":119},"Windows 10 or 11.","Windows 10 ou 11.",{"en":121,"fr":122},"Find The Needle, the full game on Steam. The demo does not work: the mod turns itself off.","Find The Needle, le jeu complet sur Steam. La démo ne fonctionne pas : le mod se désactive.",{"en":124,"fr":125},"Node.js 18 or later, for the bridge.","Node.js 18 ou plus récent, pour le pont.",{"en":127,"fr":128},"cloudflared, to give the bridge a public address.","cloudflared, pour donner une adresse publique au pont.",{"en":130,"fr":131},"A LibertyTalk account with Twitch or YouTube connected.","Un compte LibertyTalk avec Twitch ou YouTube connecté.",false,{"id":134,"code":135,"type":136,"caption":137,"language":140},"p1-need-code","winget install OpenJS.NodeJS.LTS\nwinget install --id Cloudflare.cloudflared","code",{"en":138,"fr":139},"Close and reopen the terminal after installing, so that `node` and `cloudflared` are recognised.","Fermez puis rouvrez le terminal après ces installations pour que `node` et `cloudflared` soient reconnus.","powershell",{"id":142,"text":143,"type":111,"level":112},"p1-get-section",{"en":144,"fr":145},"Get Talky Needle","Récupérer Talky Needle",{"id":147,"type":148,"items":149},"p1-get-links","links",[150,159,163],{"url":151,"kind":152,"label":153,"description":156},"https://github.com/Tech-Liberty/talky-find-the-needle/releases/latest","github",{"en":154,"fr":155},"Download Talky Needle","Télécharger Talky Needle",{"en":157,"fr":158},"The `TalkyNeedle-0.2.1.zip` file, with the mod, the bridge and the scripts.","Le fichier `TalkyNeedle-0.2.1.zip`, avec le mod, le pont et les scripts.",{"url":160,"kind":64,"label":161},"https://nodejs.org",{"en":162,"fr":162},"Node.js",{"url":164,"kind":64,"label":165},"https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/downloads/",{"en":166,"fr":166},"cloudflared",{"id":168,"text":169,"type":111,"level":112},"p1-install",{"en":170,"fr":171},"Install","Installer",{"id":173,"type":174,"items":175},"p1-install-steps","steps",[176,183,190],{"text":177,"title":180},{"en":178,"fr":179},"For example `Documents\\TalkyNeedle`. The bridge and its settings stay in this folder, not in the game folder.","Par exemple `Documents\\TalkyNeedle`. Le pont et sa configuration restent dans ce dossier, pas dans celui du jeu.",{"en":181,"fr":182},"Extract the zip to a folder you keep","Extrayez le zip dans un dossier que vous gardez",{"text":184,"title":187},{"en":185,"fr":186},"Your saves are in `%APPDATA%\\Godot\\app_userdata\\FindTheNeedle\\saves`. Copy this folder elsewhere before you continue.","Vos parties se trouvent dans `%APPDATA%\\Godot\\app_userdata\\FindTheNeedle\\saves`. Copiez ce dossier ailleurs avant de continuer.",{"en":188,"fr":189},"Close the game and back up your saves","Fermez le jeu et sauvegardez vos parties",{"text":191,"title":194},{"en":192,"fr":193},"Open a PowerShell terminal in the `TalkyNeedle` folder and run the command below. The script copies `mods\\talky_needle` next to `FindTheNeedle.exe` and adds a `TalkyNeedle` line to `override.cfg`. It keeps a copy of this file as `override.cfg.talky-needle.bak`.","Ouvrez un terminal PowerShell dans le dossier `TalkyNeedle` et lancez la commande ci-dessous. Le script copie `mods\\talky_needle` à côté de `FindTheNeedle.exe` et ajoute une ligne `TalkyNeedle` dans `override.cfg`. Il garde une copie de ce fichier sous le nom `override.cfg.talky-needle.bak`.",{"en":195,"fr":196},"Run the install script","Lancez le script d'installation",{"id":198,"code":199,"type":136,"caption":200,"language":140},"p1-install-code","powershell -ExecutionPolicy Bypass -File tools\\install.ps1",{"en":201,"fr":202},"The script looks for the game in the default Steam folder, `steamapps\\common\\Needle in a Haystack`. If your library is elsewhere, add `-GameDir \"D:\\SteamLibrary\\steamapps\\common\\Needle in a Haystack\"`.","Le script cherche le jeu dans le dossier Steam par défaut, `steamapps\\common\\Needle in a Haystack`. Si votre bibliothèque est ailleurs, ajoutez `-GameDir \"D:\\SteamLibrary\\steamapps\\common\\Needle in a Haystack\"`.",{"id":204,"kind":80,"text":205,"type":84,"title":208},"p1-install-update",{"en":206,"fr":207},"An update can replace `override.cfg`. If the mod no longer loads, run the same command again.","Une mise à jour peut remplacer `override.cfg`. Si le mod ne se charge plus, relancez la même commande.",{"en":209,"fr":210},"After a game update","Après une mise à jour du jeu",{"id":212,"text":213,"type":111,"level":112},"p1-bridge",{"en":214,"fr":215},"Start the bridge","Lancer le pont",{"id":217,"text":218,"type":42},"p1-bridge-text",{"en":219,"fr":220},"Double-click `start-bridge.cmd` and leave the window open while you play. The bridge only receives calls on your PC, at `http://127.0.0.1:7421`. On first start, it creates `bridge\\config.json` with a random token and copies the token to the clipboard without ever showing it, so it stays off your stream.","Double-cliquez sur `start-bridge.cmd` et laissez la fenêtre ouverte pendant que vous jouez. Le pont ne reçoit des appels que sur votre PC, à l'adresse `http://127.0.0.1:7421`. Au premier lancement, il crée `bridge\\config.json` avec un jeton aléatoire et copie ce jeton dans le presse-papiers sans jamais l'afficher, pour qu'il reste hors du stream.",{"id":222,"code":223,"type":136,"caption":224,"language":227},"p1-bridge-code","created config.json with a random token, copied to your clipboard; never shown here\nTalky Needle bridge 0.2.1 (unofficial): webhooks on http://127.0.0.1:7421, game link on port 7422\n10 webhook(s), 24 workflow(s), waiting for the game...",{"en":225,"fr":226},"What the bridge prints on first start, after the time.","Ce que le pont affiche au premier lancement, précédé de l'heure.","text",{"id":229,"text":230,"type":111,"level":112},"p1-menu-section",{"en":231,"fr":232},"Open the F8 menu and test","Ouvrir le menu F8 et tester",{"id":234,"type":174,"items":235},"p1-menu-steps",[236,243,250],{"text":237,"title":240},{"en":238,"fr":239},"Hay added by the mod can stay in the save: keep your main game aside for this test. A \"Talky Needle: unofficial mod active\" banner appears, and the bridge prints `game connected`.","Le foin ajouté par le mod peut rester dans la sauvegarde : gardez votre partie principale de côté pour ce test. Un bandeau « Talky Needle : mod non officiel actif » s'affiche, et le pont écrit `game connected`.",{"en":241,"fr":242},"Load a separate game","Chargez une partie à part",{"text":244,"title":247},{"en":245,"fr":246},"The Talky Needle window opens, with `Bridge connected` at the top right. `F8` or `Esc` closes it.","La fenêtre Talky Needle s'ouvre, avec `Bridge connecté` en haut à droite. `F8` ou `Échap` la referme.",{"en":248,"fr":249},"Press F8","Appuyez sur F8",{"text":251,"title":254},{"en":252,"fr":253},"The \"Displayed name\" field contains `Viewer`: close the window, and a duck with this name falls on the pile.","Le champ « Pseudo affiché » contient `Viewer` : fermez la fenêtre, et un canard à ce nom tombe sur le tas.",{"en":255,"fr":256},"Click \"Duck\" on the Effects page","Cliquez sur « Canard » dans la page Effets",{"id":258,"kind":90,"text":259,"type":84,"title":262},"p1-menu-shot",{"en":260,"fr":261},"The F8 window on the Effects page, with the groups of buttons.","La fenêtre F8 sur la page Effets, avec les groupes de boutons.",{"en":263,"fr":264},"Screenshot to add","Capture à ajouter",{"id":266,"text":267,"type":42},"p1-menu-cli",{"en":268,"fr":269},"You can also run a workflow from a terminal opened in the `bridge` folder, for example to connect it to a Stream Deck:","Vous pouvez aussi lancer un workflow depuis un terminal ouvert dans le dossier `bridge`, par exemple pour le relier à un Stream Deck :",{"id":271,"code":272,"type":136,"language":140},"p1-menu-cli-code","node bridge.js fire new_follower user=Bob",{"id":274,"text":275,"type":111,"level":112},"p1-tunnel",{"en":276,"fr":277},"Open the tunnel","Ouvrir le tunnel",{"id":279,"text":280,"type":42},"p1-tunnel-text",{"en":281,"fr":282},"LibertyTalk refuses local addresses: the bridge needs a public address to receive your events. In a second window, run the command below, then note the `https://random-words.trycloudflare.com` address it prints.","LibertyTalk refuse les adresses locales : le pont a besoin d'une adresse publique pour recevoir vos événements. Dans une seconde fenêtre, lancez la commande ci-dessous, puis notez l'adresse `https://des-mots-au-hasard.trycloudflare.com` qu'elle affiche.",{"id":284,"code":285,"type":136,"language":140},"p1-tunnel-code","cloudflared tunnel --url http://127.0.0.1:7421",{"id":287,"kind":80,"text":288,"type":84,"title":291},"p1-tunnel-change",{"en":289,"fr":290},"A quick tunnel needs no account, but its address changes on every start and Cloudflare reserves it for testing. Update it in LibertyTalk before each stream, or create a named tunnel on your domain to keep it from one stream to the next. ngrok can replace cloudflared if you already use it.","Un tunnel rapide ne demande aucun compte, mais son adresse change à chaque lancement et Cloudflare le réserve aux tests. Mettez-la à jour dans LibertyTalk avant chaque live, ou créez un tunnel nommé sur votre domaine pour la garder d'un stream à l'autre. ngrok peut remplacer cloudflared si vous l'utilisez déjà.",{"en":292,"fr":293},"This address changes on every start","Cette adresse change à chaque lancement",{"id":295,"text":296,"type":111,"level":112},"p1-widget",{"en":297,"fr":298},"Connect LibertyTalk","Relier LibertyTalk",{"id":300,"text":301,"type":42},"p1-widget-text",{"en":302,"fr":303},"The official \"Find The Needle · Talky Needle\" widget sends your live events to the bridge, through the tunnel. It is free, and each event has its own checkbox in its settings.","Le widget officiel « Find The Needle · Talky Needle » envoie les événements de votre live au pont, à travers le tunnel. Il est gratuit, et chaque événement a sa case dans sa configuration.",{"id":305,"type":306,"listing_slug":5},"p1-widget-card","widget",{"id":308,"type":174,"items":309},"p1-widget-steps",[310,317,324],{"text":311,"title":314},{"en":312,"fr":313},"Select your community in the sidebar. On the widget's page in the [Marketplace](dashboard:/market), click **Install**, then open it in [Widgets](dashboard:/widgets) and keep the **Global** scope.","Sélectionnez votre communauté dans la barre latérale. Sur la fiche du widget dans la [Marketplace](dashboard:/market), cliquez sur **Installer**, puis ouvrez-le dans [Widgets](dashboard:/widgets) et gardez la portée **Global**.",{"en":315,"fr":316},"Install the widget","Installez le widget",{"text":318,"title":321},{"en":319,"fr":320},"Enter the three fields in the table below, then click **Save**.","Saisissez les trois champs du tableau ci-dessous, puis cliquez sur **Enregistrer**.",{"en":322,"fr":323},"Fill in its settings","Remplissez sa configuration",{"text":325,"title":328},{"en":326,"fr":327},"In the **Activation** block, click **Enable**.","Dans le bloc **Activation**, cliquez sur **Activer**.",{"en":329,"fr":330},"Enable it","Activez-le",{"id":332,"head":333,"rows":340,"type":362},"p1-widget-fields",[334,337],{"en":335,"fr":336},"Field","Champ",{"en":338,"fr":339},"Value","Valeur",[341,348,355],[342,345],{"en":343,"fr":344},"Bridge public URL","Adresse publique du pont",{"en":346,"fr":347},"The tunnel address, with no trailing `/`","L'adresse du tunnel, sans `/` à la fin",[349,352],{"en":350,"fr":351},"Bridge token","Jeton du pont",{"en":353,"fr":354},"The `token` value of `bridge\\config.json`, the one the bridge put in the clipboard","La valeur `token` de `bridge\\config.json`, celle que le pont a mise dans le presse-papiers",[356,359],{"en":357,"fr":358},"Chat command (without \"!\")","Commande de chat (sans « ! »)",{"en":360,"fr":361},"`foin` by default, `hay` for example: your viewers then type `!hay`","`foin` par défaut : vos viewers tapent `!foin`","table",{"id":364,"text":365,"type":111,"level":112},"p1-check",{"en":366,"fr":367},"Check end to end","Vérifier de bout en bout",{"id":369,"text":370,"type":42},"p1-check-text",{"en":371,"fr":372},"With a game loaded and the bridge and tunnel open, ask a friend to follow your channel, or use the LibertyTalk `channelFollow` trigger test. The **Activity** page of the F8 menu shows the event with the viewer's name.","Partie chargée, pont et tunnel ouverts, demandez à un ami de suivre votre chaîne, ou utilisez le test de déclencheur `channelFollow` de LibertyTalk. Le pont écrit le nom du workflow reçu, et la page **Activité** du menu F8 affiche l'événement avec le pseudo du viewer.",{"id":374,"text":375,"type":111,"level":112},"p1-trouble",{"en":376,"fr":377},"Troubleshooting","Dépannage",{"id":379,"type":380,"items":381},"p1-trouble-faq","faq",[382,389,396,403,410,417],{"a":383,"q":386},{"en":384,"fr":385},"Check that `override.cfg` is next to `FindTheNeedle.exe` and contains the `TalkyNeedle` line. Run `tools\\install.ps1` again if needed. The game log, `%APPDATA%\\Godot\\app_userdata\\FindTheNeedle\\logs\\godot.log`, must contain `[TalkyNeedle] v0.2.1 loaded`.","Vérifiez que `override.cfg` se trouve à côté de `FindTheNeedle.exe` et contient la ligne `TalkyNeedle`. Lancez à nouveau `tools\\install.ps1` si besoin. Le journal du jeu, `%APPDATA%\\Godot\\app_userdata\\FindTheNeedle\\logs\\godot.log`, doit contenir `[TalkyNeedle] v0.2.1 loaded`.",{"en":387,"fr":388},"Nothing happens when the game starts","Rien ne se passe au lancement du jeu",{"a":390,"q":393},{"en":391,"fr":392},"Run `start-bridge.cmd` and leave its window open. The mod reconnects by itself every two seconds.","Lancez `start-bridge.cmd` et laissez sa fenêtre ouverte. Le mod se reconnecte seul toutes les deux secondes.",{"en":394,"fr":395},"The menu shows \"Bridge not connected\"","Le menu affiche « Bridge non connecté »",{"a":397,"q":400},{"en":398,"fr":399},"A game update moved what the mod relies on. The affected effects do nothing until a new version of the mod comes out: the others keep working.","Une mise à jour du jeu a déplacé ce que le mod utilise. Les effets concernés ne font plus rien jusqu'à une nouvelle version du mod : les autres continuent de fonctionner.",{"en":401,"fr":402},"The bridge prints `warning: hooks missing`","Le pont écrit `warning: hooks missing`",{"a":404,"q":407},{"en":405,"fr":406},"The wind found no loose hay around you, so nothing moved. In your workflows, place a `hay_rain` with `\"on\": \"player\"` right before the `gust`.","Le vent n'a trouvé aucun foin libre autour de vous, donc rien n'a bougé. Dans vos workflows, placez un `hay_rain` avec `\"on\": \"player\"` juste avant le `gust`.",{"en":408,"fr":409},"The bridge prints `gust failed: nothing_nearby`","Le pont écrit `gust failed: nothing_nearby`",{"a":411,"q":414},{"en":412,"fr":413},"The bridge keeps events until a game is loaded, for 15 minutes at most. Also check that **Pause viewers** is off on the Settings page of the F8 menu.","Le pont garde les événements jusqu'à ce qu'une partie soit chargée, pendant 15 minutes au plus. Vérifiez aussi que **Mettre les viewers en pause** est désactivé dans la page Réglages du menu F8.",{"en":415,"fr":416},"LibertyTalk calls the bridge, but nothing happens in the game","LibertyTalk appelle le pont, mais il ne se passe rien en jeu",{"a":418,"q":421},{"en":419,"fr":420},"Close the game, then run `tools\\install.ps1 -Uninstall`. The script removes the line from `override.cfg` and the `mods\\talky_needle` folder.","Fermez le jeu, puis lancez `tools\\install.ps1 -Uninstall`. Le script retire la ligne de `override.cfg` et le dossier `mods\\talky_needle`.",{"en":422,"fr":423},"How do I uninstall?","Comment désinstaller ?",{"id":425,"type":99,"title":426,"summary":429},"part-2-workflows",{"en":427,"fr":428},"Choose what happens in the game","Choisir ce qui se passe en jeu",{"en":430,"fr":431},"The available effects, channel points rewards, on-screen messages and the bridge workflows.","Les effets disponibles, les récompenses de points, les messages à l'écran et les workflows du pont.",{"id":433,"text":434,"type":111,"level":112},"p2-events",{"en":435,"fr":436},"What your events do by default","Ce que font vos événements par défaut",{"id":438,"head":439,"rows":448,"type":362},"p2-events-table",[440,443,445],{"en":441,"fr":442},"Event","Événement",{"en":444,"fr":444},"Webhook",{"en":446,"fr":447},"In-game effect","Effet en jeu",[449,457,466,475,483,491,500],[450,452,454],{"en":451,"fr":451},"Follow",{"en":453,"fr":453},"`/hooks/follow`",{"en":455,"fr":456},"A small duck named after the viewer","Un petit canard au nom du viewer",[458,461,463],{"en":459,"fr":460},"Subscription","Abonnement",{"en":462,"fr":462},"`/hooks/sub`",{"en":464,"fr":465},"A giant duck, larger with the tier, that stays 15 minutes","Un canard géant, plus grand selon le tier, qui reste 15 minutes",[467,470,472],{"en":468,"fr":469},"Gifted subscriptions","Abonnements offerts",{"en":471,"fr":471},"`/hooks/gift`",{"en":473,"fr":474},"A rain of ducks, one per subscription, 30 at most","Une pluie de canards, un par abonnement, 30 au plus",[476,478,480],{"en":477,"fr":477},"Bits",{"en":479,"fr":479},"`/hooks/bits`",{"en":481,"fr":482},"Hay on the pile: at x10, 500 bits add 5000 straws. From 1000 bits, a giant duck as well","Du foin sur le tas : à ×10, 500 bits ajoutent 5000 brins. À partir de 1000 bits, un canard géant en plus",[484,486,488],{"en":485,"fr":485},"Raid",{"en":487,"fr":487},"`/hooks/raid`",{"en":489,"fr":490},"A hay avalanche, ducks, and you get thrown","Une avalanche de foin, des canards, et vous êtes éjecté",[492,495,497],{"en":493,"fr":494},"Donation or Super Chat","Don ou Super Chat",{"en":496,"fr":496},"`/hooks/donation`, `/hooks/superchat`",{"en":498,"fr":499},"A giant duck named after the donor","Un canard géant au nom du donateur",[501,504,506],{"en":502,"fr":503},"Chat command","Commande de chat",{"en":505,"fr":505},"`/hooks/command`",{"en":507,"fr":508},"A little hay, once every 30 seconds","Un peu de foin, une fois toutes les 30 secondes",{"id":510,"kind":90,"text":511,"type":84,"title":514},"p2-events-chat",{"en":512,"fr":513},"The widget only sends the name of the command: neither the viewer's name nor the text typed after it. The platform forbids redistributing chat messages from a marketplace widget.","Le widget n'envoie que le nom de la commande : ni le pseudo du viewer, ni le texte tapé après elle. La plateforme interdit de redistribuer les messages du chat depuis un widget de la marketplace.",{"en":515,"fr":516},"Name on chat commands","Pseudo des commandes de chat",{"id":518,"text":519,"type":111,"level":112},"p2-bits-section",{"en":520,"fr":521},"Set the bits multiplier","Régler le multiplicateur de bits",{"id":523,"text":524,"type":42},"p2-bits-text",{"en":525,"fr":526},"Each bit adds hay straws based on the multiplier: 10 by default, so 500 bits add 5000 straws. Change it on the **Settings** page of the F8 menu (x1, x2, x5, x10 or x20) for the session, or with `bitsMultiplier` in `settings` of `bridgeconfig.json` to keep it. At most 300 straws fall on screen: the rest goes directly to the pile and the counter, so your game does not freeze. The `bits` workflow caps each event at 5000 straws.","Chaque bit ajoute des brins de foin selon le multiplicateur : 10 par défaut, donc 500 bits ajoutent 5000 brins. Changez-le dans la page **Réglages** du menu F8 (x1, x2, x5, x10 ou x20) pour la session, ou avec `bitsMultiplier` dans `settings` de `bridgeconfig.json` pour le garder. 300 brins tombent à l'écran au plus : le reste s'ajoute directement au tas et au compteur, pour que votre partie ne gèle pas. Le workflow `bits` plafonne chaque événement à 5000 brins.",{"id":528,"text":529,"type":111,"level":112},"p2-points",{"en":530,"fr":531},"Create channel points rewards","Créer des récompenses de points",{"id":533,"text":534,"type":42},"p2-points-text",{"en":535,"fr":536},"The `points` webhook picks the workflow from the title of the reward, in French or English. Create a Twitch reward whose title contains one of the words below: \"Wind on the pile\" runs `points_gust`. Case does not matter, and the first word found in the list in `bridge\\config.json` wins.","Le webhook `points` choisit le workflow selon le titre de la récompense, en français ou en anglais. Créez une récompense Twitch dont le titre contient un des mots ci-dessous : « Coup de vent sur le tas » lance `points_gust`. La casse ne compte pas, et le premier mot trouvé dans la liste de `bridge\\config.json` l'emporte.",{"id":538,"head":539,"rows":549,"type":362},"p2-points-table",[540,543,546],{"en":541,"fr":542},"Word in the title","Mot dans le titre",{"en":544,"fr":545},"Effect","Effet",{"en":547,"fr":548},"Cooldown","Délai",[550,559,568,576,585,594,603,611,619,627,634,643,651],[551,554,557],{"en":552,"fr":553},"`hay`","`foin`",{"en":555,"fr":556},"Hay delivery on the pile","Livraison de foin sur le tas",{"en":558,"fr":558},"30 s",[560,563,566],{"en":561,"fr":562},"`duck`","`canard`",{"en":564,"fr":565},"A duck named after the viewer, in a random size","Un canard au nom du viewer, de taille aléatoire",{"en":567,"fr":567},"20 s",[569,572,575],{"en":570,"fr":571},"`fart`","`prout`",{"en":573,"fr":574},"A synthesised fart that blows the hay around you","Un prout synthétisé qui souffle le foin autour de vous",{"en":558,"fr":558},[577,580,583],{"en":578,"fr":579},"`needle`","`aiguille`",{"en":581,"fr":582},"False alarm: the detector beeps, \"NEEDLE FOUND!\", then \"... nope.\"","Fausse alerte : le détecteur bipe, « AIGUILLE TROUVÉE ! », puis « ... non. »",{"en":584,"fr":584},"180 s",[586,589,592],{"en":587,"fr":588},"`launch`","`éjecte`",{"en":590,"fr":591},"Throws you into the air","Vous envoie en l'air",{"en":593,"fr":593},"60 s",[595,598,601],{"en":596,"fr":597},"`magnet`","`aimant`",{"en":599,"fr":600},"Loose hay rushes at you","Le foin libre vous fonce dessus",{"en":602,"fr":602},"120 s",[604,607,610],{"en":605,"fr":606},"`levitat`","`lévitation`",{"en":608,"fr":609},"Loose hay gently floats up","Le foin libre s'envole doucement",{"en":602,"fr":602},[612,615,618],{"en":613,"fr":614},"`drunk`","`bourré`",{"en":616,"fr":617},"The camera sways","La caméra tangue",{"en":584,"fr":584},[620,623,626],{"en":621,"fr":622},"`upside`","`envers`",{"en":624,"fr":625},"The screen turns upside down","L'écran se retourne",{"en":584,"fr":584},[628,630,633],{"en":629,"fr":629},"`zoom`",{"en":631,"fr":632},"Extreme field of view","Champ de vision extrême",{"en":602,"fr":602},[635,638,641],{"en":636,"fr":637},"`spin`","`toupie`",{"en":639,"fr":640},"Your view spins around","Votre vue tourne sur elle-même",{"en":642,"fr":642},"90 s",[644,647,650],{"en":645,"fr":646},"`blackout`","`panne`",{"en":648,"fr":649},"Black screen, with the viewer's name","Écran noir, avec le nom du viewer",{"en":584,"fr":584},[652,655,658],{"en":653,"fr":654},"`wind`","`vent`",{"en":656,"fr":657},"A gust of wind on the hay","Coup de vent sur le foin",{"en":593,"fr":593},{"id":660,"kind":661,"text":662,"type":84,"title":665},"p2-points-needles","tip",{"en":663,"fr":664},"No effect moves a needle: losing one outside the map would end the game. Hay added by the mod can still cover it.","Aucun effet ne déplace une aiguille : perdre une aiguille hors de la carte mettrait fin à la partie. Le foin ajouté par le mod peut en revanche la recouvrir.",{"en":666,"fr":667},"Your needles never move","Vos aiguilles ne bougent jamais",{"id":669,"text":670,"type":111,"level":112},"p2-menu-section",{"en":671,"fr":672},"Control it from the F8 menu","Piloter depuis le menu F8",{"id":674,"head":675,"rows":681,"type":362},"p2-menu-table",[676,678],{"en":677,"fr":677},"Page",{"en":679,"fr":680},"What you do there","Ce que vous y faites",[682,689,695,702],[683,686],{"en":684,"fr":685},"**Effects**","**Effets**",{"en":687,"fr":688},"Trigger each effect with the mouse, with the name of your choice","Déclencher chaque effet à la souris, avec le pseudo de votre choix",[690,692],{"en":691,"fr":691},"**Message**",{"en":693,"fr":694},"Write an on-screen message and choose its colour and duration","Écrire un message à l'écran et choisir sa couleur et sa durée",[696,699],{"en":697,"fr":698},"**Activity**","**Activité**",{"en":700,"fr":701},"See the latest events and remove the ducks","Voir les derniers événements et supprimer les canards",[703,706],{"en":704,"fr":705},"**Settings**","**Réglages**",{"en":707,"fr":708},"Pause viewers, or turn on safe mode","Mettre les viewers en pause, ou activer le mode safe",{"id":710,"text":711,"type":42},"p2-menu-ducks",{"en":712,"fr":713},"`F9` removes all ducks at any time. Otherwise, a duck disappears after 3 minutes, or 15 minutes for those from subscriptions and donations. The settings on the **Settings** page last until the bridge restarts. To keep them, edit `settings` in `bridge\\config.json`.","`F9` supprime tous les canards à tout moment. Sinon, un canard disparaît après 3 minutes, ou 15 minutes pour ceux des abonnements et des dons. Les réglages de la page **Réglages** durent jusqu'au redémarrage du pont. Pour les garder, modifiez `settings` dans `bridge\\config.json`.",{"id":715,"text":716,"type":111,"level":112},"p2-message",{"en":717,"fr":718},"Show a message sent by LibertyTalk","Afficher un message envoyé par LibertyTalk",{"id":720,"text":721,"type":42},"p2-message-text",{"en":722,"fr":723},"The widget sends no message. To show one from LibertyTalk, create a workflow in [Workflows](dashboard:/workflows) with the **Webhook / API call** action to `\u003Ctunnel address>/hooks/message`, using the `POST` method, the `X-Bridge-Token` header and the body below. Messages show one after the other, 6 seconds each, and at most 20 wait for their turn.","Le widget n'envoie pas de message. Pour en afficher un depuis LibertyTalk, créez un workflow dans [Workflows](dashboard:/workflows) avec l'action **Appel webhook / API** vers `\u003Cadresse du tunnel>/hooks/message`, en méthode `POST`, avec l'en-tête `X-Bridge-Token` et le corps ci-dessous. Les messages passent l'un après l'autre, 6 secondes chacun, et 20 au plus attendent leur tour.",{"id":725,"code":726,"type":136,"language":727},"p2-message-code","{ \"user_name\": \"{user_name}\", \"text\": \"Merci pour le follow !\" }","json",{"id":729,"kind":80,"text":730,"type":84,"title":733},"p2-message-warning",{"en":731,"fr":732},"The bridge displays the text as is. Write it yourself in the workflow, or have it moderated before sending. Do not connect the free text of a channel points reward without a filter.","Le pont affiche le texte tel quel. Écrivez-le vous-même dans le workflow, ou faites-le modérer avant de l'envoyer. N'y branchez pas le texte libre d'une récompense de points sans filtre.",{"en":734,"fr":735},"This text goes on your stream","Ce texte passe sur votre stream",{"id":737,"text":738,"type":111,"level":112},"p2-workflows",{"en":739,"fr":740},"Edit the bridge workflows","Modifier les workflows du pont",{"id":742,"text":743,"type":42},"p2-workflows-text",{"en":744,"fr":745},"Workflows are in `bridge\\config.json`, with the same syntax as Talky for Project Zomboid. Restart the bridge after a change. The example below sends hay based on multiplied bits, with a maximum of 2000 straws, and 5 ducks from 1000 bits.","Les workflows se trouvent dans `bridge\\config.json`, avec la même syntaxe que Talky pour Project Zomboid. Relancez le pont après une modification. L'exemple ci-dessous envoie du foin selon les bits multipliés, avec un maximum de 2000 brins, et 5 canards à partir de 1000 bits.",{"id":747,"code":748,"type":136,"caption":749,"language":727},"p2-workflows-code","\"bits\": {\n  \"steps\": [\n    { \"action\": \"hay_rain\", \"count\": \"{{bitsMultiplied | clamp:10:2000}}\" },\n    { \"if\": { \"bits\": { \"gte\": 1000 } },\n      \"then\": [ { \"action\": \"duck\", \"name\": \"{{user}}\", \"count\": 5, \"size\": 2 } ] }\n  ]\n}",{"en":750,"fr":751},"A workflow's `menu` field adds a button on the Effects page: `\"menu\": { \"label\": \"My effect\", \"group\": \"hay\" }`.","Le champ `menu` d'un workflow ajoute un bouton dans la page Effets : `\"menu\": { \"label\": \"Mon effet\", \"group\": \"hay\" }`.",{"id":753,"head":754,"rows":761,"type":362},"p2-actions-table",[755,757,760],{"en":756,"fr":756},"Action",{"en":758,"fr":759},"Parameters","Paramètres",{"en":544,"fr":545},[762,770,778,786,794,802,810,817,825,833,840,848,855],[763,765,767],{"en":764,"fr":764},"`notify`",{"en":766,"fr":766},"`text`, `seconds`, `color`",{"en":768,"fr":769},"On-screen banner","Bandeau à l'écran",[771,773,775],{"en":772,"fr":772},"`message`",{"en":774,"fr":774},"`text`, `author`, `seconds`, `color`",{"en":776,"fr":777},"Message panel, queued","Panneau de message, en file d'attente",[779,781,783],{"en":780,"fr":780},"`wait`",{"en":782,"fr":782},"`seconds`",{"en":784,"fr":785},"Pause in the workflow","Pause dans le workflow",[787,789,791],{"en":788,"fr":788},"`hay_rain`",{"en":790,"fr":790},"`count` (100 000 max), `on` (`pile`, `player`), `radius`, `height`",{"en":792,"fr":793},"Hay on the pile or around the player","Du foin sur le tas ou autour du joueur",[795,797,799],{"en":796,"fr":796},"`gust`",{"en":798,"fr":798},"`strength`, `radius`",{"en":800,"fr":801},"Pushes nearby loose hay","Pousse le foin libre proche",[803,805,807],{"en":804,"fr":804},"`magnet`, `levitate`",{"en":806,"fr":806},"`seconds` (30 max), `radius`, `speed`",{"en":808,"fr":809},"Loose hay rushes at the player, or floats up","Le foin libre fonce sur le joueur, ou s'envole",[811,812,814],{"en":561,"fr":561},{"en":813,"fr":813},"`name`, `size` (8 max), `count` (30 max), `seconds`, `on`",{"en":815,"fr":816},"Rubber duck, 40 at the same time at most","Canard en plastique, 40 en même temps au plus",[818,820,822],{"en":819,"fr":819},"`clear_ducks`",{"en":821,"fr":821},"",{"en":823,"fr":824},"Removes all ducks","Supprime tous les canards",[826,828,830],{"en":827,"fr":827},"`yeet`",{"en":829,"fr":829},"`force` (30 max)",{"en":831,"fr":832},"Throws the player into the air","Envoie le joueur en l'air",[834,835,837],{"en":636,"fr":636},{"en":836,"fr":836},"`turns`, `seconds`",{"en":838,"fr":839},"Spins the view","Fait tourner la vue",[841,843,845],{"en":842,"fr":842},"`drunk`, `upside_down`, `quake_pro`",{"en":844,"fr":844},"`seconds` (30 max)",{"en":846,"fr":847},"Camera effects","Effets de caméra",[849,850,852],{"en":645,"fr":645},{"en":851,"fr":851},"`seconds` (10 max), `text`",{"en":853,"fr":854},"Black screen with a text","Écran noir avec un texte",[856,858,860],{"en":857,"fr":857},"`sound`",{"en":859,"fr":859},"`name` (`fart`, `quack`, `beep`), `pitch`, `volume`",{"en":861,"fr":862},"Sound synthesised by the mod","Son synthétisé par le mod",{"id":864,"text":865,"type":111,"level":112},"p2-limits",{"en":866,"fr":867},"Limit abuse","Limiter les abus",{"id":869,"text":870,"type":42},"p2-limits-text",{"en":871,"fr":872},"In `settings` of `bridge\\config.json`, `maxJobsPerMinute` caps viewer events (30 by default), `blockedActions` turns actions off and `safeMode` cuts `safeModeBlocks`, the effects on the player and the camera by default. Each workflow also accepts `cooldownSeconds` and `userCooldownSeconds`. The F8 menu and the `fire` command ignore these cooldowns and this cap so that you can test.","Dans `settings` de `bridge\\config.json`, `maxJobsPerMinute` plafonne les événements viewers (30 par défaut), `blockedActions` désactive des actions et `safeMode` coupe `safeModeBlocks`, les effets sur le joueur et la caméra par défaut. Chaque workflow accepte aussi `cooldownSeconds` et `userCooldownSeconds`. Le menu F8 et la commande `fire` ignorent ces délais et ce plafond pour que vous puissiez tester.",{"id":874,"text":875,"type":111,"level":112},"p2-back-section",{"en":876,"fr":877},"Tell LibertyTalk when a needle is found","Prévenir LibertyTalk quand une aiguille est trouvée",{"id":879,"type":174,"items":880},"p2-back-steps",[881,888,895],{"text":882,"title":885},{"en":883,"fr":884},"In LibertyTalk, create a workflow with the **Incoming webhook** trigger. It gives you a URL and a secret.","Dans LibertyTalk, créez un workflow avec le déclencheur **Webhook entrant**. Il fournit une URL et un secret.",{"en":886,"fr":887},"Create an incoming webhook","Créez un webhook entrant",{"text":889,"title":892},{"en":890,"fr":891},"In `bridge\\config.json`, replace the `PASTE_...` values of `httpTargets.lt_report`. The bridge refuses to call a target that still contains these values.","Dans `bridge\\config.json`, remplacez les valeurs `PASTE_...` de `httpTargets.lt_report`. Le pont refuse d'appeler une cible qui contient encore ces valeurs.",{"en":893,"fr":894},"Fill in the bridge target","Remplissez la cible du pont",{"text":896,"title":899},{"en":897,"fr":898},"Set `enabled` to `true` in `report_to_libertytalk`, then restart the bridge. For each needle found, LibertyTalk receives `event` and `needlesFound`, which your workflow can for example write in chat.","Passez `enabled` à `true` dans `report_to_libertytalk`, puis relancez le pont. À chaque aiguille trouvée, LibertyTalk reçoit `event` et `needlesFound`, que votre workflow peut par exemple écrire dans le chat.",{"en":900,"fr":901},"Enable the workflow","Activez le workflow",{"id":903,"text":904,"type":42},"p2-back-events",{"en":905,"fr":906},"The game also sends `needle_discovered` and `pile_replaced`. Link them to your workflows in `gameEvents`.","Le jeu envoie aussi `needle_discovered` et `pile_replaced`. Reliez-les à vos workflows dans `gameEvents`.",{"id":908,"slug":909,"text":910,"type":913},"p2-more-section","workflows-deep",{"en":911,"fr":912},"To build your workflows on the LibertyTalk side.","Pour construire vos workflows côté LibertyTalk.","guide_link",{"workflows-deep":915},{"slug":909,"title":916,"summary":919,"icon":922,"visibility":7},{"en":917,"fr":918},"Workflows in depth","Workflows en profondeur",{"en":920,"fr":921},"How the engine runs a workflow: triggers, variables, conditions, webhook calls, testing and widgets, with the traps that break a scenario without any error message.","Comment le moteur exécute un workflow : déclencheurs, variables, conditions, appels webhook, tests et widgets, avec les pièges qui font échouer un scénario sans message d'erreur.","ph:flow-arrow",1794311891499]