From 63361cf5d13671557ede052ef9a30c65a29077bd Mon Sep 17 00:00:00 2001 From: Isaiah Billingsley Date: Thu, 19 Feb 2026 08:47:37 +0000 Subject: [PATCH] Complete rewrite from scratch - Plain JS - BS+ only - Simple song info only - No configuration --- .editorconfig | 9 +++ LICENSE.txt | 12 +++ README.md | 7 ++ dprint.json | 18 +++++ fonts/montserrat.woff2 | Bin 0 -> 89696 bytes images/characteristic/360Degree.svg | 48 ++++++++++++ images/characteristic/90Degree.svg | 22 ++++++ images/characteristic/Lawless.svg | 27 +++++++ images/characteristic/Legacy.svg | 29 +++++++ images/characteristic/Lightshow.svg | 25 ++++++ images/characteristic/NoArrows.svg | 21 ++++++ images/characteristic/OneSaber.svg | 14 ++++ images/characteristic/Standard.svg | 14 ++++ images/unknown.svg | 9 +++ index.html | 31 ++++++++ jsconfig.json | 6 ++ main.js | 81 ++++++++++++++++++++ style.css | 113 ++++++++++++++++++++++++++++ types.d.ts | 20 +++++ 19 files changed, 506 insertions(+) create mode 100644 .editorconfig create mode 100644 LICENSE.txt create mode 100644 README.md create mode 100644 dprint.json create mode 100644 fonts/montserrat.woff2 create mode 100644 images/characteristic/360Degree.svg create mode 100644 images/characteristic/90Degree.svg create mode 100644 images/characteristic/Lawless.svg create mode 100644 images/characteristic/Legacy.svg create mode 100644 images/characteristic/Lightshow.svg create mode 100644 images/characteristic/NoArrows.svg create mode 100644 images/characteristic/OneSaber.svg create mode 100644 images/characteristic/Standard.svg create mode 100644 images/unknown.svg create mode 100644 index.html create mode 100644 jsconfig.json create mode 100644 main.js create mode 100644 style.css create mode 100644 types.d.ts diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..71f9966 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_style = tab +max_line_length = 120 +insert_final_newline = true +trim_trailing_whitespace = true diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..d0da584 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,12 @@ +Copyright (c) 2025 iza + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..0fa363e --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# Beat Saber Overlay + +Simple Beat Saber stream overlay for https://www.twitch.tv/iza_k + +Requires BeatSaberPlus + +image diff --git a/dprint.json b/dprint.json new file mode 100644 index 0000000..b98599f --- /dev/null +++ b/dprint.json @@ -0,0 +1,18 @@ +{ + "lineWidth": 120, + "newLineKind": "lf", + "useTabs": true, + "typescript": { "useBraces": "maintain" }, + "json": {}, + "markdown": {}, + "malva": {}, + "markup": {}, + "excludes": ["**/node_modules", "**/build", "**/dist", "**/*-lock.json", "**/*.svg"], + "plugins": [ + "https://plugins.dprint.dev/typescript-0.95.15.wasm", + "https://plugins.dprint.dev/json-0.21.1.wasm", + "https://plugins.dprint.dev/markdown-0.21.1.wasm", + "https://plugins.dprint.dev/g-plane/malva-v0.15.2.wasm", + "https://plugins.dprint.dev/g-plane/markup_fmt-v0.26.0.wasm" + ] +} diff --git a/fonts/montserrat.woff2 b/fonts/montserrat.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ab6fda20c389e2a7aec05d86d13be0ac17cd3689 GIT binary patch literal 89696 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

UTIvky&rfi+PD00W6DSKEIf_Ic!zG6|cW-fVn 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 literal 0 HcmV?d00001 diff --git a/images/characteristic/360Degree.svg b/images/characteristic/360Degree.svg new file mode 100644 index 0000000..6bd7697 --- /dev/null +++ b/images/characteristic/360Degree.svg @@ -0,0 +1,48 @@ + + + + + + + + + +Lorem ipsum + diff --git a/images/characteristic/90Degree.svg b/images/characteristic/90Degree.svg new file mode 100644 index 0000000..a2a7e8e --- /dev/null +++ b/images/characteristic/90Degree.svg @@ -0,0 +1,22 @@ + + + + + + + diff --git a/images/characteristic/Lawless.svg b/images/characteristic/Lawless.svg new file mode 100644 index 0000000..350c2b9 --- /dev/null +++ b/images/characteristic/Lawless.svg @@ -0,0 +1,27 @@ + + + + + diff --git a/images/characteristic/Legacy.svg b/images/characteristic/Legacy.svg new file mode 100644 index 0000000..7c91767 --- /dev/null +++ b/images/characteristic/Legacy.svg @@ -0,0 +1,29 @@ + + + + + + diff --git a/images/characteristic/Lightshow.svg b/images/characteristic/Lightshow.svg new file mode 100644 index 0000000..d643caf --- /dev/null +++ b/images/characteristic/Lightshow.svg @@ -0,0 +1,25 @@ + + + + + diff --git a/images/characteristic/NoArrows.svg b/images/characteristic/NoArrows.svg new file mode 100644 index 0000000..c0ffed5 --- /dev/null +++ b/images/characteristic/NoArrows.svg @@ -0,0 +1,21 @@ + + + + + diff --git a/images/characteristic/OneSaber.svg b/images/characteristic/OneSaber.svg new file mode 100644 index 0000000..be4bdbc --- /dev/null +++ b/images/characteristic/OneSaber.svg @@ -0,0 +1,14 @@ + + + + diff --git a/images/characteristic/Standard.svg b/images/characteristic/Standard.svg new file mode 100644 index 0000000..4389dab --- /dev/null +++ b/images/characteristic/Standard.svg @@ -0,0 +1,14 @@ + + + + diff --git a/images/unknown.svg b/images/unknown.svg new file mode 100644 index 0000000..39d3596 --- /dev/null +++ b/images/unknown.svg @@ -0,0 +1,9 @@ + + + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..423c5c3 --- /dev/null +++ b/index.html @@ -0,0 +1,31 @@ + + + + + BS Overlay + + + +

+
+
+ Title + Subtitle +
+ +
+ Artist + Mapper +
+ +
+ Easy + + Diff Label + 25f + WIP +
+
+ + + diff --git a/jsconfig.json b/jsconfig.json new file mode 100644 index 0000000..0a7a1a2 --- /dev/null +++ b/jsconfig.json @@ -0,0 +1,6 @@ +{ + "compilerOptions": { + "checkJs": true, + "target": "es2021" + } +} diff --git a/main.js b/main.js new file mode 100644 index 0000000..5f03de3 --- /dev/null +++ b/main.js @@ -0,0 +1,81 @@ +"use strict"; +// https://github.com/hardcpp/BeatSaberPlus/wiki/%5BEN%5D-Song-Overlay + +const bspUrl = "ws://localhost:2947/socket"; +const retryMs = 5000; +let retries = 0; + +function connect() { + console.log(`Connecting to ${bspUrl} (attempt ${retries++})`); + const ws = new WebSocket(bspUrl); + ws.onopen = () => console.log("Connection open."); + ws.onmessage = (e) => { + const data = JSON.parse(e.data); + switch (data._type) { + case "event": + switch (data._event) { + case "gameState": + document.body.className = data.gameStateChanged; + break; + + case "mapInfo": + updateMapInfo(data.mapInfoChanged); + break; + } + break; + + default: + console.log("message", e.data); + break; + } + }; + ws.onclose = (e) => { + console.log(`Connection closed. code: ${e.code}, reason: ${e.reason}, clean: ${e.wasClean}`); + setTimeout(connect, retryMs); + }; +} + +const cover = document.getElementById("cover"); +const title = document.getElementById("title"); +const subTitle = document.getElementById("subTitle"); +const artist = document.getElementById("artist"); +const mapper = document.getElementById("mapper"); +const difficulty = document.getElementById("difficulty"); +const characteristicIcon = document.getElementById("characteristicIcon"); +const difficultyLabel = document.getElementById("difficultyLabel"); +const bsrKey = document.getElementById("bsrKey"); +const type = document.getElementById("type"); + +/** @param {MapInfoChanged} data */ +function updateMapInfo(data) { + const custom = data.level_id.startsWith("custom_level_"); + cover.style.backgroundImage = data.coverRaw ? `url("data:image/jpeg;base64,${data.coverRaw}")` : ""; + title.textContent = data.name || ""; + subTitle.textContent = data.sub_name || ""; + artist.textContent = data.artist || ""; + mapper.textContent = data.mapper || ""; + difficulty.textContent = data.difficulty.replace("Plus", " +") || ""; + characteristicIcon.setAttribute("src", `images/characteristic/${data.characteristic}.svg`); + difficultyLabel.textContent = ""; + bsrKey.textContent = data.BSRKey || ""; + type.textContent = !custom ? "OST" : data.level_id.endsWith(" WIP") ? "WIP" : ""; + + if (custom) { + fetch(`https://api.beatsaver.com/maps/hash/${data.level_id.substring(13, 53)}`) + .then(response => response.json()) + .then(map => { + if (!map.id) return; + bsrKey.textContent = map.id; + mapper.textContent = map.metadata.levelAuthorName; // Replace mapper name with full authors list + // Find difficulty label + const diff = map.versions[0].diffs.find(d => + d.characteristic === data.characteristic && d.difficulty === data.difficulty + ); + if (diff.label) difficultyLabel.textContent = diff.label; + }); + } +} + +connect(); + +document.documentElement.onclick = () => document.body.classList.toggle("Playing"); diff --git a/style.css b/style.css new file mode 100644 index 0000000..34a40a1 --- /dev/null +++ b/style.css @@ -0,0 +1,113 @@ +@font-face { + font-family: "Montserrat"; + font-display: swap; + font-weight: 600 700; + src: url("fonts/montserrat.woff2") format("woff2"); +} + +:root { + font-size: 10px; +} + +body { + display: flex; + margin: 0; + padding: 1.4rem 1.6rem; + font-family: "Montserrat", sans-serif; + white-space: nowrap; + background: #0000; + color: white; + filter: drop-shadow(0 0 0.1rem black) drop-shadow(0 0 0.1rem black); + transition: opacity 300ms ease-out; + transition-delay: 200ms; +} + +body:not(.Playing) { + opacity: 0; +} + +#cover { + width: 6.8rem; + height: 6.8rem; + border-radius: 0.6rem; + background-image: url("images/unknown.svg"); + background-repeat: no-repeat; + background-size: contain; + flex-shrink: 0; +} + +#songData { + display: flex; + flex-direction: column; + flex-grow: 1; + justify-content: space-between; + margin: -0.4rem 1.6rem -0.2rem; + overflow: hidden; + line-height: 1.2; + font-size: 1.5rem; + font-weight: 600; +} + +#songData * { + overflow: hidden; + text-overflow: ellipsis; +} + +#songData .row { + display: flex; + align-items: baseline; + column-gap: 0.6em; +} + +#songData span:empty { + display: none; +} + +#title { + font-size: 2.4rem; + font-weight: 700; +} + +#subTitle, +#artist, +#mapper { + font-size: 1.6rem; +} + +#mapper:before, +#difficultyLabel:before { + content: "‹"; +} + +#mapper:after, +#difficultyLabel:after { + content: "›"; +} + +#difficultyLabel, +#subTitle { + flex-shrink: 99999; +} + +#characteristicIcon { + width: 1.1em; + height: 1.1em; + flex-shrink: 0; + align-self: center; +} + +#type, +#bsrKey { + font-size: 1.6rem; + font-weight: 700; + flex-shrink: 0; +} + +#bsrKey { + letter-spacing: 0.2rem; +} + +#bsrKey:before { + content: "!bsr "; + letter-spacing: normal; +} diff --git a/types.d.ts b/types.d.ts new file mode 100644 index 0000000..95da8af --- /dev/null +++ b/types.d.ts @@ -0,0 +1,20 @@ +interface Document { + getElementById(elementId: string): HTMLElement; +} + +interface MapInfoChanged { + "level_id": string; + "name": string; + "sub_name": string; + "artist": string; + "mapper": string; + "characteristic": string; + "difficulty": string; + "duration": number; + "BPM": number; + "PP": number; + "BSRKey": string; + "coverRaw": string; + "time": number; + "timeMultiplier": number; +}