Skip to content

Frosty's Dumbass Notes Scouting Sheet

Overview

This sheet was designed by me to fully scout entire tiers and get an idea of tracker data alongside who is available. This functions with multiple scripts and there's a weird workflow to it.

URL

Tabs

Dashboard

  • Ignore it

[TierName]

  • Tier rostered players get put on top (manual process)
  • Tier Availables get dynamically filled any time the sheet is modified via the script called copyFilteredDataForAllTiers.
  • The data is dynamically pulled from the [TierName] Import tab and the script filters the players via Contracts sheet to only show Draft Eligibles and Free Agents.

VERY IMPORTANT NOTE: Due to the nature of how this workflow works, the rows are dynamically moved into the section BUT NOT MODIFIED. Therefore, any changes you want to make (such as editing tracker data or changing a Status) must be made on the [TierName] Import tab.

[TierName] Import

  • The player data (Name, RSC ID, Tier, MMR, Status) are pulled from the Contract Import tab by the script called populateTierDataImportSheets. This is a one-time run to popular the data into all the [TierName] Import tabs.
  • Tracker numbers, Mechanics, Game Sense, and Notes are all statically set by you and are not pulled from anywhere.

Tryout Rotations

  • Ignore it

Contract Import

  • Self explanatory, it pulls the Contract sheet from the URL in Constants.

Tier Maker Import

  • The goal was to originally make this much more automatic to work with the Tier Maker and Contracts. However, this was abandoned because it became untenable as people moved tiers so often. Thus, I came up with the "run this script at one time once numbers settle", which is pretty good but not perfect as people do move post-lock.

Active Contract Status

  • Honestly I do not remember what this sheet is used for. Check back later.

Constants

  • Self-explanatory. All the stuff that'll get pulled from wherever it's needed. The list is a lot bigger than I'm actually using since I just reused the Franchise Manager sheet one.

Workflow Diagram

Sheet Workflow

Scripts

populateTierDataImportSheets

  • What it does: Syncs player data from Contract Import out to all nine [TierName] Data Import sheets, filtered by tier. Run this once when numbers settle to seed the Data Import tabs before scouting.
  • How to run: Extensions > Apps Script > run populateTierDataImportSheets
  • Inputs: Contract Import sheet (Name, RSC ID, Tier, Current MMR, Contract Status)
  • Outputs: Populates rows 2+ of each [TierName] Data Import sheet with that tier's players
  • Notes: Run this first — the other two scripts depend on these sheets being populated. See full script docs.

copyFilteredDataForAllTiers

  • What it does: Reads each [TierName] Data Import sheet, filters to only Free Agents and Draft Eligibles (via Contract Import), and writes the results into the corresponding tier sheet starting at row 9.
  • How to run: Extensions > Apps Script > run copyFilteredDataForAllTiers. Re-run any time you want to refresh the available player pool. It is also set to run on edit and could easily be configured to run on a schedule if you wanted it to.
  • Inputs: All nine [TierName] Data Import sheets + Contract Import sheet
  • Outputs: Rows 9+ of each tier sheet, containing only available players
  • Notes: Run this after populateTierDataImportSheets. Rows 1–8 of tier sheets are never touched. See full script docs.

updateCombinesMMRDelta

  • What it does: Pulls MMR Delta values from an external Combines Data spreadsheet and writes them into column G of each [TierName] Data Import sheet, matched by RSC ID.
  • How to run: Make sure the Combines Data URL is in Constants B15, then Extensions > Apps Script > run updateCombinesMMRDelta
  • Inputs: Combines Data spreadsheet URL (Constants B15), RSC IDs in Data Import sheets
  • Outputs: Column G of each [TierName] Data Import sheet populated with MMR Delta
  • Notes: The account running the script needs at least view access to the Combines spreadsheet. A delta of 0 is valid and will be written - it is not treated as blank. See full script docs.