Skip to content

Stream Connect Guide

UTDZac (Zeke) edited this page Oct 14, 2024 · 4 revisions

Stream Connect Guide

What is Stream Connect?

Stream Connect is a feature of the Ironmon Tracker that allows the Tracker to communicate with external programs, such as Streamerbot. It does so using a custom built network framework. While connected, users in chat are able to interact with the Tracker, typically by typing a command into chat.

With Stream Connect, you and your stream viewers can use chat commands to get data from the Tracker, such as info about a Pokémon, Move, Ability, etc.

Install and Setup

To use the Stream Connect feature, you'll need to do the following. Read on through the sections below for more details on each.

  1. Download and install Streamerbot
  2. Login with your Twitch/Youtube account
  3. Import the Streamerbot code from the Tracker into Streamerbot
  4. Restart Streamerbot
  5. Set the Connection Folder on the Tracker config screen
  6. Click "Connect"

Install Streamerbot

  1. Download:
    1. If you haven't already, download the Streamerbot application on your computer. Download link
    2. When you do, avoid putting Streamerbot in a folder that syncs to the cloud, such as OneDrive or Dropbox.
    3. The Text mode makes frequent updates to text files on your computer; if you have them syncing to the cloud this can 1) prevent the network from working and 2) use a lot of data on your internet connection.
    4. If you can't avoid putting it on a cloud-sync folder, you can define an override for the Tracker to use instead.
  2. Extract:
    1. After you download and extract the zip file, you can open the Streamerbot application, Streamer.bot.exe, from the extracted folder.
    2. Take note of the other folders nearby, we'll come back to these later.
  3. Login:
    1. Connect your Twitch or Youtube account to Streamerbot by logging in through the application.
    2. Click the "Platforms" tab near the top, then "Twitch" or "Youtube", then "Accounts".
    3. If you have a Twitch bot account, connect that too. Learn more about setting up a secondary bot account here.

Streamerbot-Accounts

Setup Stream Connect on Streamerbot

  1. Open Stream Connect:
    1. On Bizhawk with your Tracker open, click the Tracker settings gear icon -> Extras-> Stream Connect -> Open Config.
  2. Import Code:
    1. Click "Streamerbot Code" and copy the entire code string that appears.
    2. Then on Streamerbot, near the top of the application, click the big "Import" button.
    3. Paste the code string into the top-most box. Then click Import / OK.
    4. Be sure to restart Streamerbot after importing. This is required each time you import code from the Tracker.
  3. Restart Streamerbot:
    1. Streamerbot must be restarted any time you import code; this is required for the code to run.
  4. Link-up Connection Folder:
    1. Back on the Tracker, next to the "Connection Folder" section, click the "Set" button.
    2. Then locate the "data" folder found inside your Streamerbot folder.
    3. Click on any .json file in that folder and hit OK.
    4. Example: \Documents\Streamer.bot-x64-0.1.19\data\

Streamer.bot Data Folder

Stream-Connect-Overlay

Connect the Tracker

Finally, on the Stream Connect config screen, click the "Connect" button.

If done correctly, the Tracker should establish a connection after a few seconds.

  • If clicking the Connect button still shows "Offline", then the Connection Folder still needs to be "Set".
  • If the status stays yellow "Online: Waiting for connection...", then either the Connection Folder is set to the wrong folder, or the Streamerbot application is not currently open and running (try restarting it).

Note: By default, the Tracker will automatically try and connect each time it starts up or you begin a new game. You can disable this by clearing the Connection Folder setting.

List of Commands

  • ✔️: Commands that usually require a parameter to use (e.g. a Pokémon name or route name) will use contextual information if available (e.g. the 1st Pokémon on the team or the route the player is on)
  • ❌: Commands that require a parameter to use, as they need information that cannot be assumed contextually
Command Contextual Parameters Description
pokemon ✔️ name Pokémon Info: Displays useful game info for a Pokémon.
bst ✔️ name Pokémon BST: Displays the base stat total (BST) for a Pokémon.
weak ✔️ name Pokémon Weaknesses: Displays the weaknesses and resistances for a Pokémon.
move ✔️ name Move Info: Displays game info for a move.
ability ✔️ name Ability Info: Displays game info for a Pokémon's ability.
route ✔️ name Route Info: Displays trainer and wild encounter info for a route or area.
pivots Pivots Seen: Displays known early game wild encounters for an area.
revo ✔️ name target-evo Pokémon Random Evolutions: Displays randomized evolution possibilities for a Pokémon. Params: "target-evo" if more than one natural evo available (e.g. Eevee > Espeon).
coverage ✔️ type-list fully evolved Move Coverage Effectiveness: For a list of move types, checks all Pokémon matchups for effectiveness. Params: "fully evolved" will only check against Pokémon that cannot evolve.
heals hp pp status berries Heals in Bag: Displays all healing items in the bag, or only those for a specified "category". Params: "hp" for HP healing items, "pp" for PP, "status" for status, "berries" for berry items.
search name Search Tracked Info: Search tracked info for a Pokémon, move, or ability "name".
searchnotes word(s) Search Notes on Pokémon: Displays a list of Pokémon with any matching "word(s)".
favorites Favorite Starters: Displays the list of favorites used for picking a starter.
theme ✔️ name Theme Export: Displays the name and code string for a Tracker theme. Params: the "name" of a theme available in the Theme Library.
progress Game Progress: Displays fun progress percentages for the current game.
log Log Randomizer Settings: If the log has been opened, displays shareable randomizer settings from the log for current game.
about About the Tracker: Displays info about the Ironmon Tracker and game being played.
help ✔️ command Command Help: Displays a list of all commands, or help info for a specified "command".

Command Options

  • Role Permissions: Use this to individually select which user are allowed to use the Tracker Commands based on their role(s). By default, all users ("Everyone") can use the commands. These settings apply to all commands; it's not currently possible to adjust role permissions on a per-command basis.

Connection Folder Override

Note: This override is completely optional. You don't need to use it unless you want to change which folder the Tracker & Streamerbot use to communicate with each other.

By default, the Streamerbot application folder contains a "data" folder which is used to share data between Streamerbot and the Tracker. If you want to use a different folder located elsewhere on your computer, you can create an Action in Streamerbot to override this. The below import code will create a new Action for you with a trigger and a sub-action.

Note: You may have this override action already, if so, you can skip the steps 1-2 below.

Setup

  1. On Streamerbot, click the "Import" button near the top
  2. Copy/paste the below import code, then click "Import"
  3. Click the newly created "Connection Data Folder" action
  4. Double-click the "Set global" sub-action to change the override value
  5. Replace the text "NONE" with the full folder path to the folder you wish to use
  6. Finally, restart Streamerbot for the change to take effect

Subactions

Import the below code into Streamerbot:

U0JBRR+LCAAAAAAABACNU8uO0zAU3SPxD1bWk8p5dNKyQwwDbDoSGkACzcKxb1oLxw6OPZ1q1H/HdpI26QOxSeR77vOce1/fvkEoegbdciWjdyi7CQZeN0qb7wdz2plrLnlt66M9wrN0lkQ9CoY426t/uKckNXiXR03ob9DoXgnmfg+umOYMuiDnR6zZKO09vz3e/ST0ABy7ipIZnuEDwKClmjemB39sQCKQpBTAbtCWC4FUXwSZDSAGFbHCIKqkBOqjUNX1YlRwUBJQ2wDlFQeGuAzG1pYxCd6RL7vvZmRkMmPn0DrLr86CBijAnPn+YJGxFMgiBsKSOE/KKl6SAsdlkpCCFMsCqnSYLYT9sWA9ddIKMbb3MzrEaAsT5IUKy+Beq/ozb43SuwtOgyAfjjzcuXF6YSYdrLWyzVi8L9LAWpNAx9iRiC3ZtV+tvFBPE8lU/Z72OlVEtBPc6UGt1iDNJdRovl67DRhze8LviOO8KJYl5EmcLXIS5+4blxgXcQbzChdVXuLydtx4V2LXeEIKfHuKXGX64tBjeH98PE2IOt+US9O41TZckp4yfFr5mWjuO1v1Uh5X2it5LmQIavwdtebqOK2ymvp0yXk5ERYxWj2sPp7l7Zhncww0kJ7k1H2KPF5UiaOfUMjmdDHHy+wsdAt8vfGyu7O+okqSpqfIsJUndxGwfyvGJYMXX+7/pfrkiwW9nqZLKwRpWmAjfID7hIN/d8eTFC68rt1ZTI2G1/2ih1Quzf4vbS0tFJgFAAA=