Skip to content

English

Rémi Marseault edited this page Apr 9, 2022 · 30 revisions
RocketStats logo

This plugin is made for the PC version of Rocket League, and needs BakkesMod to work. With it you can display your online MMR and stats on your previous matches (i.e. win, lose, current streak), whether in-game or in a streaming software (tested on OBS). Version 4 introduces themes and the ability to customize your own overlay, by using a JSON file.

Come join us on our Discord!

2 ways of downloading RocketStats
BakkesMod GitHub
Download with BakkesMod Download with GitHub



Check out the menu on the right (or at the bottom of the page on mobile) to navigate through the different parts of this wiki.

Installation

BakkesMod


Go to the BakkesMod page of the plugin by clicking on this link.

Click on the "Install with Bakkesmod" button. You may have a confirmation dialog that pops up, you can accept it.

A terminal should open to install the plugin. Follow the instructions on the terminal to complete installation.

GitHub

Download the plugin


On the main page of the project, click on the latest release in the side panel, or click on this link.

After that, click on the ZIP file to download it (the file should be named RocketStats v[...].zip and at the bottom of the page).

Open BakkesMod folder


Open the BakkesMod folder by clicking on "Open BakkesMod folder" in the injector. Default path is

%appdata%/bakkesmod/bakkesmod

Install plugin


Extract the ZIP file downloaded from GitHub in that folder (you may have a prompt with folder conflicts, just accept them).

Note: Make sure that your game is closed or that RocketStats isn't already loaded in the BakkesMod plugin manager (in Rocket League: F2 > Plugins > Plugin Manager).

Shortcuts

To add hotkeys, you need to:

  • Open the BakkesMod settings window by pressing "F2",
  • Go to "Bindings",
  • Click on "Add",
  • Click on "None",
  • Press the key on your keyboard that you want to bind,
  • Double click on the first line of the list,
  • Type the command that you want to bind to that key,
    • togglemenu rocketstats: hide IG overlay completely (with menu button),
    • toggle cl_rocketstats_settings 0 1: hide RS menu only.
  • Click on both "Save" buttons.

Menu

RocketStats Menu Icon

The menu is toggled using the RS logo visible on the left on the "Play" button. You can display it while in a match by entering the RL pause menu and pressing "Resume game".

1st part

1st part

  1. By ticking this box, you will enable output files. You can use these to integrate RS data into your stream by using a third-party software (i.g. OBS).
    Note: Check the Capture third-party overlays box on the OBS game capture to make the RS overlay visible to your viewers,
  2. Choose how do you want to display your stats,
    • Session: Data will be zeroed when you start RL and the plugin is loaded,
    • Gamemode: Same as "Session" but stats are separated between each mode,
    • Always: Stores stats to be kept even if you close your game,
    • Always Gamemode: Same as "Always" and "Gamemode" combined.
  3. Every themes are listed here, choose the one you want to display,
  4. Set the position, size, tilt and transparency of the theme.
    By clicking on the buttons, you will enable the precise mode which you can use to set the associated value pixel-perfect.

2nd part

2nd part

  1. Ticking this box will enable InGame overlay,
  2. Open RocketStats folder to manage installed themes and view OBS files,
  3. Reload current theme file from disk ("A" button reloads all themes to add or delete some),
  4. Reset all saved stats,
  5. Additional settings:
    • Show in menu: Display overlay in a menu (when not in a match),
    • Show in match: Display overlay in a match,
    • Enable floating point: Display floating-point value instead of integers for the MMR, MMRChange and MMRChangeCumul,
    • Preview rank: Display your current rank in ranked gamemodes,
    • Replace MMR with MMRChange: Replace MMR data by MMRChange on the overlay without changing the config file,
    • Remplace MMRChange with MMR: Replace MMRChange data by MMR on the overlay without changing the config file.
  6. Choose files to display while updating values (untick unused files to prevent overuse of your disk),
  7. Remplace values by "##" if you don't want to show it (useful for Twitch predictions).

Themes

Streaming Software

We use OBS in this wiki but other similar software also works.
To display the overlay on OBS with a Game capture source, you need to check that the Capture third-party overlays is ticked.

You can also use the given files to create your own overlay directly into OBS.

Methods

Here is 2 examples of OBS overlays to get you started :

Design

Preview overlay by Rimey_

To add Rimey's video, you will have to download the video (linked above), add a "Media" source (select the downloaded video on your computer) and check the "Local file" box. If this isn't the case, tick the box to loop the video.

Informations

RocketStats files

Now you need to add a "Text" source and tick the first box "Read from file" to select a RocketStats generated file. You can simply Drag and Drop the files from your explorer to your OBS scene to add them.

You can use the "Open folder" button in the RS menu to directly open the folder with all the available text files. Path should be "%appdata%\bakkesmod\bakkesmod\data\RocketStats" on Windows.

To change the pont of the text sources, search for "font" in the Windows search bar and open "Font settings". From there, you can drag and drop the font you want to use to install it. Restart OBS and select the newly installed font in your text sources.

Images

Images

2 HTML files are available to use with a Browser source in OBS to display your rank and boost status (you can also drag & drop them just like Text sources). See above for location.

These HTML files will magically reload their content to match text files generated by the plugin.

In-game

Let's focus on themes, the newest feature of this plugin.

Themes are entirely customizable. To create one you have to use the JSON format (a structured text file).

Elements

We allowed 3 different types of elements that you can move freely on the screen:

  • Texts (with variables),
  • Shapes (i.g. rectangle, triangle, ...),
  • Images (animation support coming soon).

Additional themes

You can add multiple themes to RocketStats right now:

  • Go to this address: https://github.com/Arubinu/RocketStats_themes,
  • Click on the green button "Code" then on "Download ZIP",
  • From the RocketStats menu in Rocket League, click the "Open folder" button,
  • Open the "RocketStats_themes" folder,
  • Parallel open the previously downloaded ZIP,
  • Take all the folders contained in the ZIP (such as Marker),
  • Drag them into the "RocketStats_themes" folder.

To make themes appear in the menu list of RocketStats (if it is already launched), click on the "A" button and see the list of themes.

Create a theme

To create a theme, start by creating a folder in "RocketStats_themes". The name of that folder will be the name of the theme.

In that folder, create a file called "config.json" which will contain everything to render the overlay correctly.
Note: Make sure you can see the file extensions to prevent calling the file "config.json.txt" instead of "config.json".

Example tree of a theme:

(theme_name)/
├─── fonts/ (required if using custom fonts)
│    └─── Arial.ttf
├─── images/  (required if using images)
│    └─── background.png
├─── config.json (required)
└─── screenshot.png

Here is an example of a JSON theme file (config.json):

{
	"author": "Arubinu42",
	"version": "v1.0.0",
	"date": "07/29/2019",
	"x": 0.0,
	"y": 0.0,
	"width": 576,
	"height": 40,
	"font": ["myfont.ttf", 42],
	"scale": 1.0,
	"opacity": 1.0,
	"elements": []
}

Every numerical field can be modified in the RocketStats menu.

  • x: base position on the X axis (adjustable from the interface, in percentage from 0.0 to 1.0 or in calculation),
  • y: base position on the Y axis (adjustable from the interface, in percentage from 0.0 to 1.0 or in calculation),
  • width: overlay width (mandatory to use percentages),
  • height: overlay height (mandatory to use percentages),
  • font: if you want to use a specific font, format: [{name}, {size}], name is the font name in the "fonts" folder and size is the base font size (can be changed with the scale factor),
  • scale [0 - 10 +/- 0.001]: base scale,
  • rotate [-180 - 180 +/- 0.01]: base rotation,
  • opacity [0 - 1 +/- 0.01]: alpha value (transparency, adjustable from the interface),
  • elements: is a list that will contain every element in your theme (add a new line after this to separate the opening and closing brackets to add the elements to it and must be separated by a comma).

Edit a theme

Parameters

Each element is made up of several parameters:

  • visible [true|false]: element will be displayed,
  • name: may be used in future versions (so specify it as a precaution),
  • value: text parameter, can include variables,
  • align [left|center|right]: horizontal alignment,
  • valign [top|middle|bottom]: horizontal alignment,
  • color [red, green, blue[, alpha]]: alpha channel is a percentage between 0.0 and 1.0,
  • fill: fill color of a shape (same format as "color"),
  • stroke: outline color of a shape (same format as "color", it is centered so protrudes outside as well as inside depending on the thickness),
  • rotate [-180 - 180 +/- 0.01]: rotation of the element (in degrees),
  • opacity [0 - 1 +/- 0.01]: global opacity of the element, but also of each color,
  • transform [upper|lower|capitalize]: text transformation.
    • upper: convert to uppercase,
    • lower: convert to lowercase,
    • capitalize: 1st letter uppercase for every word, rest is lowercase.

Text

To use variables in text elements, you need to enclose the variable name with double curly brackets (i.g. for mmr variable: "MMR: {{MMR}}" will display MMR: 1000 if you have 1000 MMR)

Available variables:

  • GameMode: current gamemode (Duel, Chaos, ...),
  • Rank: current rank (Gold III, Champion II, etc),
  • Div: current rank division (Div. 4, Div. 1),
  • MMR: MMR in current gamemode,
  • MMRChange: last change in your MMR (delta for 1 match),
  • MMRCumulChange: total change in your MMR (delta for whole session),
  • Win: number of matches won,
  • Loss: number of matches lost,
  • Streak: curent streak,
  • Demolition: demos count,
  • DemolitionsCumul: demos count in current session,
  • DemolitionsMatch: demos count in current match (regardless of player),
  • Death: death count,
  • DeathCumul: death count in current session,
  • DeathMatch: death count in current match (regardless of player).

Text element example:

{
	"name": "mmr",
	"type": "text",
	"value": "My MMR: {{MMR}}",
	"x": 170,
	"y": 20,
	"align": "right",
	"valign": "middle",
	"color": [255, 255, 255],
	"scale": 1.2
}

Image

Images are loaded from the "images" folder in the theme folder:

{
	"name":			"background",
	"type":			"image",
	"file":			"background.png",
	"x":			0,
	"y":			0,
	"rotate":		45.0,
	"scale":		1.5
}

You can also specify the "{{Rank}}" value for the "file" parameter which will be replaced by the rank icon

{
	"name":			"rank",
	"type":			"image",
	"file":			"{{Rank}}",
	"x":			27,
	"y":			20,
	"align":		"center",
	"valign":		"middle",
	"scale":		0.85
}

Note that you can change the image color with the "color" parameter.

Line

To create a line, you need to specify the start point and the end point.

The "x1" and "y1" coordinates specify the start point and the "x2" and "y2" coordinates specify the end point.

{
	"name":			"separator1",
	"type":			"line",
	"x1":			"170px + 13px",
	"y1":			8,
	"x2":			"170px + 13px",
	"y2":			"100% - 8px",
	"color":		[ 255, 0, 0, 0.1 ],
	"scale":		2.5
}

Triangle

Just like lines, triangles need points to be drawn, but 3 instead of only 2.

{
	"name":			"right_triangle",
	"type":			"triangle",
	"x1":			"100%",
	"y1":			0,
	"x2":			"100% + 40px",
	"y2":			0,
	"x3":			"100%",
	"y3":			"100%",
	"fill":			[ 0, 0, 0, 0.82 ],
	"stroke":		false
}

Rectangle

In this example, the recatngle will fit the whole screen specified for that theme. The "rounding" parameter rounds the corners of the rectangle.

{
	"name":			"box",
	"type":			"rectangle",
	"x":			0,
	"y":			0,
	"width":		"100%",
	"height":		"100%",
	"rounding":		5,
	"fill":			false,
	"stroke":		[ 127, 127, 127, 0.5 ]
}

Circle

Circles are a bit particular because they have segments, which can allow you to make an octogone for example. The "position" paramteter refers to the center of the circle.

{
	"name":			"box",
	"type":			"rectangle",
	"x":			0,
	"y":			0,
	"radius":		20,
	"segments":		12,
	"fill":			[ 127, 127, 127, 0.5 ],
	"stroke":		[ 255, 0, 0, 1.0 ]
}

Pie Chart

Pie charts allows you to create an unfinished circle at a specified angle in degrees (angle-min et angle-max). The other parameters are the same as for the circle.

{
	"name":			"quart",
	"type":			"pie_chart",
	"x":			0,
	"y":			"50%",
	"angle-min":	45,
	"angle-max":	180,
	"radius":		50,
	"segments":		32,
	"fill":			[ 255, 0, 0, 0.5 ],
	"stroke":		[ 0, 255, 0, 1.0 ]
}

What else

There are some other parameters which can be used in some cases:

  • sign: takes as a value the name of a variable (without the curly brackets) and allows you to add the positive sign on the specified variable.
  • chameleon: same as "sign", this one will go from green to red if the variable is positive or negative.
Clone this wiki locally