OBS: Project MB (v5)
Comprehensive setup guide and technical reference for Project MB: Valorant Scoreboard 2026.
About Project MB
Project MB is an open-source data tool designed to bridge the gap between grassroots community esports and high-tier professional broadcasts. By connecting live OBS graphic overlays to an external Google Sheets control panel, a broadcast producer can seamlessly update scoreboards, rosters, and stats in real-time.
Riot Games Legal Disclaimer: Project MB was created under Riot Games' "Legal Jibber Jabber" policy using assets owned by Riot Games. Riot Games does not endorse or sponsor this project. All custom files not owned by Riot Games are open source and free to adapt for other purposes.
How do Project MB scoreboards work?
Capturing the Scoreboard
Project MB captures the in-game Valorant scoreboard with gameplay elements dynamically removed. This requires a secondary computer on the lobby referred to as the "Void PC".
When loading into the match on the Void PC, the observer enters free cam mode (pressing
V) and flies straight downward outside the map skybox. This results in a clean, solid
black screen where no map geometry, abilities, or player highlights interfere with the scoreboard
screen capture.
Technical Background
The screen capture of the Valorant scoreboard, timer, team scores, and agent info is piped to OBS. Using the OBS Source Clone plugin, we create clones of this single capture source. By applying precise cropping parameters and custom filters to each clone, the system isolates individual assets (like individual agent portraits, team numbers, and round indicators) and integrates them into custom designed overlay graphics.
Installation & Prerequisites
Ensure your production environment meets the following requirements before executing the tool:
Environment Requirements
- OBS Studio (v32.1.0): The core broadcasting software.
- OBS Source Clone (v0.2.1): Clones sources for isolating crops.
- OBS Move (v3.2.1): Interpolates overlay source motions.
- OBS Transition Table (v0.3.1): Directs scene transition rules.
- OBS Image Async (v1.0): Prevent video lag spikes.
- Advanced Scene Switcher (v1.32.9): Automates macro switching behaviors.
- Google Sheet Importer (v1.5.1): Communicates sheet data to OBS inputs.
- Node.js: Server-side runtime required to run the Sheet Importer.
Font Installation
Crucial Step: Locate Tungsten-Bold.ttf in the
PMB Graphics assets folder and install it on your PC before
launching OBS Studio so text layers map correctly.
Google Sheets API Configuration
To control the overlay elements from Google Sheets, you must generate access credentials:
Step 1: Google Sheet Preparation
Access the default Project MB Production Sheet. Navigate to File > Make a copy (ensuring
you select scripts to preserve reset button macros). Under the Share options, set
the document link to "Anyone with the link can view".
Step 2: Google API Key Creation
- Go to the Google Cloud Developer Console.
- Create a new project (e.g.,
Project MB Production) and configure the OAuth consent screen. You can skip the deployment registration as it remains local. - Select Credentials in the left sidebar, click
+ Create Credentials, and select API Key. Copy the key.
Step 3: Importer Tool Configuration
Open the extracted Google Sheets Importer directory, run install.bat, and open the
config-dist.json file in a text editor to update these values:
{
"spreadsheetId": "YOUR_SPREADSHEET_ID_FROM_URL",
"tableName": "Interface",
"range": "C2:D",
"apiKey": "YOUR_GOOGLE_CLOUD_API_KEY",
"obsAddress": "ws://localhost:4455",
"obsPassword": "YOUR_OBS_WEBSOCKET_PASSWORD"
}
Save this configuration file as config.json.
OBS WebSocket Setup
Inside OBS Studio, select Tools > WebSocket Server Settings. Check Enable
WebSocket Server, verify the port matches your config.json (default
4455), and save settings.
Launch the integration by double-clicking start.bat in the importer directory. The
command prompt should launch and confirm: "Connected to OBS".
Default Scene Collection
The standard scene package includes presets optimized for match workflows:
- Tutorial Scene: Used to verify text binding and script triggers.
- Intermissions: Stream start, countdown breaks, stream end, and technical timeout screens.
- Desk & Guests: Split-layouts with custom borders for talent panels.
- Map Bans: Dynamic selectors that toggle status indicators for maps.
- Agent Select: Highlighting agent picks utilizing Magnum video loops.
- Valorant Overlay: Clean top overlays (Top Complex, Top Simple, or Top Hybrid formats) featuring the live crop-filtered scoreboard.
OBS: CCS Production
Production documentation and setup instructions for the Classic Championship Series (CCS) League of Legends broadcast package.
Introduction
This stream package was created to run the tournament broadcasts of the Classic Championship Series. It automates much of the overlay controls using Google Sheets integration, ensuring that graphics update instantly on-air when modified inside the production spreadsheet.
Package Credits: Assembled and wired by MisterBantastic (Matthew Boyle), with original visual designs and graphics created by Goldyn.
Download Options
Producers and observers have two methods for deploying this package. Option 1 installs the assets, scene collections, and tools on an existing OBS environment. Option 2 uses a pre-bundled portable OBS instance containing all plugins preset.
Option 1: Download & Install Manually
For custom OBS instances, download the required plugins, fonts, and scripts to initialize the layout:
Required OBS Plugins
- xObsAsyncImageSource (v1.0): Enables asynchronous loading of broadcast images, eliminating lag spikes during asset swaps.
- Advanced Scene Switcher (v1.33.1): Runs automatic triggers and transition logic. Important: Make sure to update to the latest version to prevent JSON parsing errors.
- Move Transition (v3.2.1): Creates layout translations and slides on-screen.
- Transition Table (v0.3.1): Manages specialized transitions between scene pathways.
- Source Switcher / Slide Show: Facilitates carousel graphics and looping media assets.
Required Fonts
Download and install these system fonts before opening OBS Studio. If installed while OBS is open, restart the application to link them:
GoBold- Primary typography.Edo- Secondary accent typography.
Option 2: Portable OBS (WIP)
This option downloads a self-contained, standalone OBS directory configured with pre-installed plugins, scene profile assets, and structural scripts. Perfect for quick deployment on new production PCs.
Portable Package Includes: Portable OBS binaries, Sheet Importer client folders (CCS1 & CCS2 configurations), the Apollo overlay JSON template, system fonts (Edo, GoBold), and broadcast background music.
Google Sheets Importer Tool
To establish a data connection between your Google Sheets dashboard and the OBS overlay elements, we use a custom Node.js bridge. Both the Observer and Producer PCs must run this tool simultaneously to trigger updates.
Installation Requirements
- Download and install Node.js on your machine.
- Extract the Google Sheets Importer folder.
- Open your terminal, navigate to the folder, and run
npm install(or launch the providedinstall.batscript) to install configuration dependencies.
Troubleshooting: If the connection fails, verify that your Google Sheet has
share permissions set to "Anyone with the link can view" and that the websocket
credentials in your config.json match your OBS WebSocket settings.
Producer Checklist
Ensure these final steps are completed before heading live:
- Double check that the Sheets Importer tool displays a green
"Connected to OBS"confirmation in the terminal console. - Verify the Apollo JSON overlays align properly in your OBS workspace.
- Confirm broadcast background music paths match the relative file paths in your OBS media sources.
- Integrate the custom Interview Mask overlay to frame live talent cams cleanly.