Skip to content

HitScoreVisualizer v2.4.4

Latest
Compare
Choose a tag to compare
@artemiswkearney artemiswkearney released this 26 Mar 04:28

Changelog

2.0.2: Bug fixes and performance improvements. If you've been noticing lag, try disabling the fade option on all judgments in the config.
2.1.0: Added display mode "format" (see below).
2.1.1: Compatibility with game version 0.12.1
2.1.2: Actually bump version number this time; minor fixes to default config
2.1.3: Minor bug fix
2.1.4: Numeric mode works again (if anyone still uses that)
2.1.5: Compatibility with game version 0.13.0; default config improvements
2.2.0: Compatibility with game version 1.0.0; bug fixes
2.3.0: Added new config options for displaying judgment text at a fixed position
2.4.0: Performance improvements; new config option: "doIntermediateUpdates"
2.4.1: Updated for game version 1.3.0 (thanks to @Kylemc1413!)
2.4.2: Updated for game version 1.6.0
2.4.3: Updated for game version 1.8.0
2.4.4: Now uses Harmony 2, and is thus actually compatible with BSIPA 4 and game version 1.8.0.


Dependencies

This plugin requires BSIPA to function!
ModAssistant installs BSIPA, plugins, and dependencies of plugins for you, so it's the recommended way of installing HitScoreVisualizer and other plugins.


Colors the score popups that appear when hitting notes. Also adds judgment text above (or below) the score.

After installing the plugin, run the game once to generate the config file at UserData/HitScoreVisualizerConfig.json in your Beat Saber install folder. A graphical editor for this file is not actually in the works, although previous release notes have claimed such; until someone volunteers to make one, editing the config is considered an advanced feature, as JSON is not particularly human-friendly. If you want to edit it anyway, here's the documentation:

  • Remove the isDefaultConfig line. If this option is set to true, your config will get overwritten by the updated default config with every plugin update.
  • The config option "useFixedPos", if set to true will cause all judgment popups to appear at a fixed location, specified with "fixedPosX", "fixedPosY", and "fixedPosZ". Only the judgment for the most recently cut block will be displayed.
  • The config option "doIntermediateUpdates", if set to true, will cause judgment popups to update every frame while the score from the after-cut angle is being determined, at the cost of some performance. If set to false (the default), the popups will update once when the initial cut is made, and once when the final score for the note is determined.
  • Valid options for displayMode are "numeric" (displays only the score), "textOnly" (displays only the judgment text), "scoreOnTop" (displays the score above the judgment text), "format" (see "Formatting" below), or any other string (displays the judgment text above the score).
  • Put your judgments in descending order; the first one encountered with threshold <= the score earned for a note will be applied.
  • Include exactly 4 numbers in each judgment's color array. These represent red, green, blue, and a 4th channel which, knowing Beat Saber's shaders, could be glow, transparency, or even both at once. Modify the 4th number if you like, but I can't say what effect it will have.
  • If you include more or fewer than 4 numbers in a judgment's color array, your entire config will be ignored (but not overwritten).
  • If you include the line "fade": true in a judgment, the color for scores earning that judgment will be interpolated between that judgment's color and the color of the previous judgment in the list, based on how close to the threshold for that judgment the score was. Use this to create a smooth gradient of color if you want one.
  • If you enable fade for the first judgment in the list, the plugin and Beat Saber itself will quite possibly die in a fire if that judgment is ever earned. Don't enable fade for the first judgment in the list. You have been warned.
  • Judgment text supports TextMeshPro formatting!
  • Formatting
    In displayMode "format", a number of HitScoreVisualizer format specifiers are available (as well as TextMeshPro's formatting tools). Your formatted string will replace the score text (so include %s if you want to see your score).
    • %b: The score contributed by the part of the swing before cutting the block.
    • %c: The score contributed by the accuracy of the cut.
    • %a: The score contributed by the part of the swing after cutting the block.
    • %B, %C, %A: As above, except using the appropriate judgment from that part of the swing (as configured for "beforeCutAngleJudgments", "accuracyJudgments", or "afterCutAngleJudgments").
    • %s: The total score for the cut.
    • %p: The percent score for the cut, out of 115 (displayed without a percent symbol)
    • %%: A literal percent symbol.
    • %n: A newline.
  • Note that before-swing/accuracy/after-swing judgments don't support color or fading, although you can put TextMeshPro color tags in them if you want to.
    If you make your own config, feel free to share it in #other-files!

Plugin originally requested by @AntRazor on the (BSMG discord)[https://discord.gg/beatsabermods]. Thanks go to @AntRazor and @wulkanat for input on the default config released in v2.0.0, as well as everyone in #mod-development and the entire server for the love and support. :')

We're on BeatMods, and available in the ModAssistant mod installer!
Donate to the developer and other modders to support the people who make the mods you love.