OBS state snapshot: scene additions, dock geometry, landing tweaks

Captures the current OBS scene/window state after wiring Music Daemon,
Project Loading, and Game scenes through the UI. Untitled.json now
includes the new scenes and their browser sources.

Landing index.html: reverted to the simpler pre-doomguard version
(static signal bars, plain footer rig, no telemetry rotation, no
watermark animation), keeping the SIGNAL grid centering and the small
#rig opacity transition.

OBS rewrites these files on shutdown — expect future commits to show
similar dock-geometry diff noise.
This commit is contained in:
Jakub Zych
2026-04-26 02:40:24 +02:00
parent 3792d61fdb
commit 7a5b1df7b6
3 changed files with 564 additions and 98 deletions

View File

@@ -12,7 +12,7 @@
"mixers": 255, "mixers": 255,
"sync": 0, "sync": 0,
"flags": 0, "flags": 0,
"volume": 0.29015332460403442, "volume": 0.0,
"balance": 0.5, "balance": 0.5,
"enabled": true, "enabled": true,
"muted": false, "muted": false,
@@ -43,7 +43,7 @@
"mixers": 255, "mixers": 255,
"sync": 0, "sync": 0,
"flags": 0, "flags": 0,
"volume": 0.39100584387779236, "volume": 0.0,
"balance": 0.5, "balance": 0.5,
"enabled": true, "enabled": true,
"muted": false, "muted": false,
@@ -469,7 +469,7 @@
"mixers": 255, "mixers": 255,
"sync": 0, "sync": 0,
"flags": 0, "flags": 0,
"volume": 0.55000001192092896, "volume": 0.0,
"balance": 0.5, "balance": 0.5,
"enabled": true, "enabled": true,
"muted": false, "muted": false,
@@ -492,6 +492,148 @@
"monitoring_type": 0, "monitoring_type": 0,
"private_settings": {} "private_settings": {}
}, },
{
"prev_ver": 536936450,
"name": "Loading Project",
"uuid": "6642f830-fbae-4020-8292-a9cb7991e6fc",
"id": "browser_source",
"versioned_id": "browser_source",
"settings": {
"is_local_file": true,
"local_file": "/home/jin/.config/obs-studio/loading/index.html",
"url": "file:///home/jin/.config/obs-studio/loading/index.html",
"width": 2560,
"height": 1336,
"restart_when_active": true,
"reroute_audio": true
},
"mixers": 255,
"sync": 0,
"flags": 0,
"volume": 0.1156293973326683,
"balance": 0.5,
"enabled": true,
"muted": false,
"push-to-mute": false,
"push-to-mute-delay": 0,
"push-to-talk": false,
"push-to-talk-delay": 0,
"hotkeys": {
"libobs.mute": [],
"libobs.unmute": [],
"libobs.push-to-mute": [],
"libobs.push-to-talk": [],
"ObsBrowser.Refresh": []
},
"deinterlace_mode": 0,
"deinterlace_field_order": 0,
"monitoring_type": 2,
"private_settings": {}
},
{
"prev_ver": 536936450,
"name": "Audio",
"uuid": "fc5dfd34-bc55-4c92-8b5e-ef305afd1d8e",
"id": "pulse_input_capture",
"versioned_id": "pulse_input_capture",
"settings": {
"device_id": "alsa_input.usb-Creative_Technology_Ltd_Creative_Live__Cam_Sync_V3_SN0001-02.analog-stereo"
},
"mixers": 255,
"sync": 0,
"flags": 0,
"volume": 0.0,
"balance": 0.5,
"enabled": true,
"muted": false,
"push-to-mute": false,
"push-to-mute-delay": 0,
"push-to-talk": false,
"push-to-talk-delay": 0,
"hotkeys": {
"libobs.mute": [],
"libobs.unmute": [],
"libobs.push-to-mute": [],
"libobs.push-to-talk": []
},
"deinterlace_mode": 0,
"deinterlace_field_order": 0,
"monitoring_type": 0,
"private_settings": {}
},
{
"prev_ver": 536936450,
"name": "Audio Player",
"uuid": "b7b89406-53f4-45ba-aa1a-c20d17b1c905",
"id": "browser_source",
"versioned_id": "browser_source",
"settings": {
"is_local_file": true,
"local_file": "/home/jin/.config/obs-studio/music/index.html",
"width": 400,
"height": 100,
"reroute_audio": true
},
"mixers": 255,
"sync": 0,
"flags": 0,
"volume": 0.063062243163585663,
"balance": 0.5,
"enabled": true,
"muted": false,
"push-to-mute": false,
"push-to-mute-delay": 0,
"push-to-talk": false,
"push-to-talk-delay": 0,
"hotkeys": {
"libobs.mute": [],
"libobs.unmute": [],
"libobs.push-to-mute": [],
"libobs.push-to-talk": [],
"ObsBrowser.Refresh": []
},
"deinterlace_mode": 0,
"deinterlace_field_order": 0,
"monitoring_type": 2,
"private_settings": {}
},
{
"prev_ver": 536936450,
"name": "HUD",
"uuid": "f409a999-358f-488d-98db-c5c6a01d01b9",
"id": "browser_source",
"versioned_id": "browser_source",
"settings": {
"is_local_file": true,
"local_file": "/home/jin/.config/obs-studio/game/index.html",
"width": 2560,
"height": 1336,
"fps_custom": true,
"restart_when_active": true
},
"mixers": 255,
"sync": 0,
"flags": 0,
"volume": 1.0,
"balance": 0.5,
"enabled": true,
"muted": false,
"push-to-mute": false,
"push-to-mute-delay": 0,
"push-to-talk": false,
"push-to-talk-delay": 0,
"hotkeys": {
"libobs.mute": [],
"libobs.unmute": [],
"libobs.push-to-mute": [],
"libobs.push-to-talk": [],
"ObsBrowser.Refresh": []
},
"deinterlace_mode": 0,
"deinterlace_field_order": 0,
"monitoring_type": 0,
"private_settings": {}
},
{ {
"prev_ver": 536936450, "prev_ver": 536936450,
"name": "Desktop", "name": "Desktop",
@@ -879,7 +1021,7 @@
"versioned_id": "scene", "versioned_id": "scene",
"settings": { "settings": {
"custom_size": false, "custom_size": false,
"id_counter": 21, "id_counter": 23,
"items": [ "items": [
{ {
"name": "Screen Capture (PipeWire) 2", "name": "Screen Capture (PipeWire) 2",
@@ -1162,10 +1304,120 @@
"collapsed": true "collapsed": true
} }
}, },
{
"name": "Audio Player",
"source_uuid": "b7b89406-53f4-45ba-aa1a-c20d17b1c905",
"visible": true,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 22,
"group_item_backup": false,
"pos": {
"x": -315.0,
"y": 87.0
},
"pos_rel": {
"x": -2.3877246379852295,
"y": -0.86976051330566406
},
"scale": {
"x": 0.5975000262260437,
"y": 0.60000002384185791
},
"scale_rel": {
"x": 0.5975000262260437,
"y": 0.60000002384185791
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
},
{
"name": "HUD",
"source_uuid": "f409a999-358f-488d-98db-c5c6a01d01b9",
"visible": true,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 23,
"group_item_backup": false,
"pos": {
"x": 0.0,
"y": 0.0
},
"pos_rel": {
"x": -1.9161676168441772,
"y": -1.0
},
"scale": {
"x": 1.0,
"y": 1.0
},
"scale_rel": {
"x": 1.0,
"y": 1.0
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
},
{ {
"name": "Camera", "name": "Camera",
"source_uuid": "a8b362a1-91a6-491b-8751-26e2dad55ccd", "source_uuid": "a8b362a1-91a6-491b-8751-26e2dad55ccd",
"visible": false, "visible": true,
"locked": false, "locked": false,
"rot": 0.0, "rot": 0.0,
"scale_ref": { "scale_ref": {
@@ -1183,20 +1435,20 @@
"id": 16, "id": 16,
"group_item_backup": false, "group_item_backup": false,
"pos": { "pos": {
"x": 2206.0, "x": 2016.0,
"y": 1083.0 "y": 106.0
}, },
"pos_rel": { "pos_rel": {
"x": 1.3862274885177612, "x": 1.1017963886260986,
"y": 0.62125754356384277 "y": -0.84131735563278198
}, },
"scale": { "scale": {
"x": 0.17343750596046448, "x": 0.24062499403953552,
"y": 0.1736111044883728 "y": 0.24074074625968933
}, },
"scale_rel": { "scale_rel": {
"x": 0.14020396769046783, "x": 0.19451721012592316,
"y": 0.14034430682659149 "y": 0.19461077451705933
}, },
"bounds": { "bounds": {
"x": 0.0, "x": 0.0,
@@ -1242,7 +1494,11 @@
"libobs.show_scene_item.12": [], "libobs.show_scene_item.12": [],
"libobs.hide_scene_item.12": [], "libobs.hide_scene_item.12": [],
"libobs.show_scene_item.16": [], "libobs.show_scene_item.16": [],
"libobs.hide_scene_item.16": [] "libobs.hide_scene_item.16": [],
"libobs.show_scene_item.22": [],
"libobs.hide_scene_item.22": [],
"libobs.show_scene_item.23": [],
"libobs.hide_scene_item.23": []
}, },
"deinterlace_mode": 0, "deinterlace_mode": 0,
"deinterlace_field_order": 0, "deinterlace_field_order": 0,
@@ -1259,7 +1515,7 @@
"id": "scene", "id": "scene",
"versioned_id": "scene", "versioned_id": "scene",
"settings": { "settings": {
"id_counter": 3, "id_counter": 4,
"custom_size": false, "custom_size": false,
"items": [ "items": [
{ {
@@ -1283,11 +1539,11 @@
"id": 1, "id": 1,
"group_item_backup": false, "group_item_backup": false,
"pos": { "pos": {
"x": 0.0, "x": 4.0,
"y": 0.0 "y": 0.0
}, },
"pos_rel": { "pos_rel": {
"x": -1.9161676168441772, "x": -1.910179615020752,
"y": -1.0 "y": -1.0
}, },
"scale": { "scale": {
@@ -1313,6 +1569,12 @@
"duration": 300 "duration": 300
}, },
"hide_transition": { "hide_transition": {
"id": "wipe_transition",
"versioned_id": "wipe_transition",
"name": "Landing — Stand By (Browser) Hide Transition",
"transition": {
"luma_image": "cloud.png"
},
"duration": 300 "duration": 300
}, },
"private_settings": {} "private_settings": {}
@@ -1371,6 +1633,61 @@
"duration": 300 "duration": 300
}, },
"private_settings": {} "private_settings": {}
},
{
"name": "Doomguard Logo",
"source_uuid": "ee77caf1-a490-45fa-80d9-4072f7e63d9a",
"visible": false,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 4,
"group_item_backup": false,
"pos": {
"x": 1213.0,
"y": 119.0
},
"pos_rel": {
"x": -0.1002994030714035,
"y": -0.82185626029968262
},
"scale": {
"x": 0.42642644047737122,
"y": 0.42642644047737122
},
"scale_rel": {
"x": 0.42642644047737122,
"y": 0.42642644047737122
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
} }
] ]
}, },
@@ -1390,7 +1707,9 @@
"libobs.show_scene_item.1": [], "libobs.show_scene_item.1": [],
"libobs.hide_scene_item.1": [], "libobs.hide_scene_item.1": [],
"libobs.show_scene_item.2": [], "libobs.show_scene_item.2": [],
"libobs.hide_scene_item.2": [] "libobs.hide_scene_item.2": [],
"libobs.show_scene_item.4": [],
"libobs.hide_scene_item.4": []
}, },
"deinterlace_mode": 0, "deinterlace_mode": 0,
"deinterlace_field_order": 0, "deinterlace_field_order": 0,
@@ -1399,6 +1718,209 @@
"private_settings": { "private_settings": {
"transition": "" "transition": ""
} }
},
{
"prev_ver": 536936450,
"name": "Project Loading",
"uuid": "6b8e29a8-a66b-44f2-856e-bd41fb18720d",
"id": "scene",
"versioned_id": "scene",
"settings": {
"id_counter": 3,
"custom_size": false,
"items": [
{
"name": "Loading Project",
"source_uuid": "6642f830-fbae-4020-8292-a9cb7991e6fc",
"visible": true,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 1,
"group_item_backup": false,
"pos": {
"x": 0.0,
"y": 0.0
},
"pos_rel": {
"x": -1.9161676168441772,
"y": -1.0
},
"scale": {
"x": 1.0,
"y": 1.0
},
"scale_rel": {
"x": 1.0,
"y": 1.0
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
},
{
"name": "Audio",
"source_uuid": "fc5dfd34-bc55-4c92-8b5e-ef305afd1d8e",
"visible": true,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 2,
"group_item_backup": false,
"pos": {
"x": 0.0,
"y": 0.0
},
"pos_rel": {
"x": -1.9161676168441772,
"y": -1.0
},
"scale": {
"x": 1.0,
"y": 1.0
},
"scale_rel": {
"x": 1.0,
"y": 1.0
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
},
{
"name": "Audio Player",
"source_uuid": "b7b89406-53f4-45ba-aa1a-c20d17b1c905",
"visible": true,
"locked": false,
"rot": 0.0,
"scale_ref": {
"x": 2560.0,
"y": 1336.0
},
"align": 5,
"bounds_type": 0,
"bounds_align": 0,
"bounds_crop": false,
"crop_left": 0,
"crop_top": 0,
"crop_right": 0,
"crop_bottom": 0,
"id": 3,
"group_item_backup": false,
"pos": {
"x": 51.0,
"y": 99.0
},
"pos_rel": {
"x": -1.839820384979248,
"y": -0.85179638862609863
},
"scale": {
"x": 0.05000000074505806,
"y": -0.05000000074505806
},
"scale_rel": {
"x": 0.05000000074505806,
"y": -0.05000000074505806
},
"bounds": {
"x": 0.0,
"y": 0.0
},
"bounds_rel": {
"x": 0.0,
"y": 0.0
},
"scale_filter": "disable",
"blend_method": "default",
"blend_type": "normal",
"show_transition": {
"duration": 300
},
"hide_transition": {
"duration": 300
},
"private_settings": {}
}
]
},
"mixers": 0,
"sync": 0,
"flags": 0,
"volume": 1.0,
"balance": 0.5,
"enabled": true,
"muted": false,
"push-to-mute": false,
"push-to-mute-delay": 0,
"push-to-talk": false,
"push-to-talk-delay": 0,
"hotkeys": {
"OBSBasic.SelectScene": [],
"libobs.show_scene_item.1": [],
"libobs.hide_scene_item.1": [],
"libobs.show_scene_item.2": [],
"libobs.hide_scene_item.2": [],
"libobs.show_scene_item.3": [],
"libobs.hide_scene_item.3": []
},
"deinterlace_mode": 0,
"deinterlace_field_order": 0,
"monitoring_type": 0,
"canvas_uuid": "6c69626f-6273-4c00-9d88-c5136d61696e",
"private_settings": {}
} }
], ],
"groups": [ "groups": [
@@ -1494,8 +2016,8 @@
"y": 1209.5849609375 "y": 1209.5849609375
}, },
"pos_rel": { "pos_rel": {
"x": -1.8106008768081665, "x": -1.8106009960174561,
"y": 0.81075584888458252 "y": 0.81075596809387207
}, },
"scale": { "scale": {
"x": 1.2370370626449585, "x": 1.2370370626449585,
@@ -1615,6 +2137,9 @@
{ {
"name": "Landing" "name": "Landing"
}, },
{
"name": "Project Loading"
},
{ {
"name": "Game" "name": "Game"
}, },
@@ -1622,12 +2147,20 @@
"name": "Desktop" "name": "Desktop"
} }
], ],
"current_scene": "Desktop", "current_scene": "Landing",
"current_program_scene": "Desktop", "current_program_scene": "Landing",
"canvases": [], "canvases": [],
"current_transition": "Fade", "current_transition": "Luma Wipe",
"transition_duration": 1000, "transition_duration": 1000,
"transitions": [], "transitions": [
{
"name": "Luma Wipe",
"id": "wipe_transition",
"settings": {
"luma_image": "checkerboard-small.png"
}
}
],
"quick_transitions": [ "quick_transitions": [
{ {
"name": "Cut", "name": "Cut",
@@ -1647,7 +2180,7 @@
"saved_projectors": [], "saved_projectors": [],
"preview_locked": false, "preview_locked": false,
"scaling_enabled": false, "scaling_enabled": false,
"scaling_level": -6, "scaling_level": -13,
"scaling_off_x": 0.0, "scaling_off_x": 0.0,
"scaling_off_y": 0.0, "scaling_off_y": 0.0,
"modules": { "modules": {

View File

@@ -75,12 +75,10 @@ body {
} }
.mark { .mark {
width: 360px; height: 360px; width: 360px; height: 360px;
/* Static glow only — animated drop-shadow is CPU-expensive in CEF.
The static breathing feel comes from the rec-blink LED + cd-pulse
elsewhere; the mark just has a steady halo. */
filter: drop-shadow(0 0 22px rgba(58, 209, 255, 0.35)); filter: drop-shadow(0 0 22px rgba(58, 209, 255, 0.35));
animation: mark-breathe 6s ease-in-out infinite;
}
@keyframes mark-breathe {
0%, 100% { filter: drop-shadow(0 0 18px rgba(58, 209, 255, 0.30)); }
50% { filter: drop-shadow(0 0 30px rgba(58, 209, 255, 0.50)); }
} }
.bars { .bars {
display: flex; display: flex;
@@ -134,67 +132,6 @@ body {
.foot .warn { color: var(--warn); } .foot .warn { color: var(--warn); }
#rig { transition: opacity 0.4s ease; } #rig { transition: opacity 0.4s ease; }
/* ───────── Doomguard watermark ─────────
Sits at z-index: -1 — below all flow content (HUD, standby, etc.)
and below the static canvas, so the white noise paints on top of it.
Mostly buried under noise (~4% opacity, blurred); periodic "tune-in"
spikes raise opacity + sharpen blur briefly, like a CRT catching signal. */
.watermark {
position: absolute;
top: 50%;
left: 50%;
width: 38vw;
height: auto;
transform: translate(-50%, -50%);
pointer-events: none;
user-select: none;
z-index: -1;
opacity: 0;
filter: blur(2px) brightness(0.9);
animation: logo-tune-in 27s linear infinite;
}
/* Logo is invisible by default. Three irregular "almost-catches-signal"
events per loop, each preceded by stutter (rapid opacity flips) and
tiny vertical jitter — like a CRT trying to sync. Max opacity ~13%,
always blurred — never crisp, always reads as buried in the noise. */
@keyframes logo-tune-in {
/* — Long quiet — */
0%, 22% { opacity: 0; filter: blur(2px) brightness(0.9); transform: translate(-50%, -50%); }
/* Event 1: stutter in, brief soft hold (~9% peak), stutter out */
22.3% { opacity: 0.06; filter: blur(1.4px) brightness(1.0); transform: translate(-50%, -50.3%); }
22.6% { opacity: 0; filter: blur(2px) brightness(0.9); transform: translate(-50%, -49.8%); }
23% { opacity: 0.09; filter: blur(0.8px) brightness(1.1); transform: translate(-50%, -50%); }
24.6% { opacity: 0.09; filter: blur(0.8px) brightness(1.1); transform: translate(-50%, -50%); }
25% { opacity: 0; filter: blur(2px) brightness(0.9); }
25.3% { opacity: 0.04; }
25.6% { opacity: 0; }
/* — Long quiet — */
44% { opacity: 0; transform: translate(-50%, -50%); }
/* Event 2: split-second flutter, signal almost catches but loses it (~5% peak) */
44.2% { opacity: 0.05; filter: blur(1.4px) brightness(1.0); transform: translate(-50.3%, -50%); }
44.5% { opacity: 0; transform: translate(-50%, -50%); }
/* — Quiet — */
68% { opacity: 0; transform: translate(-50%, -50%); filter: blur(2px) brightness(0.9); }
/* Event 3: stuttered emergence to longer hold (~13% peak), stuttered exit */
68.3% { opacity: 0.05; filter: blur(2px) brightness(0.95); transform: translate(-49.7%, -50%); }
68.6% { opacity: 0; }
69% { opacity: 0.08; filter: blur(1px) brightness(1.05); transform: translate(-50%, -50.2%); }
70.5% { opacity: 0.13; filter: blur(0.4px) brightness(1.15); transform: translate(-50%, -50%); }
72% { opacity: 0.10; filter: blur(0.6px) brightness(1.1); }
73% { opacity: 0; filter: blur(2px) brightness(0.9); }
73.3% { opacity: 0.05; }
73.6% { opacity: 0; }
/* — Quiet to end — */
100% { opacity: 0; transform: translate(-50%, -50%); }
}
/* ───────── Overlays ───────── */ /* ───────── Overlays ───────── */
#static { #static {
position: absolute; inset: 0; position: absolute; inset: 0;
@@ -248,11 +185,6 @@ body {
</head> </head>
<body> <body>
<img class="watermark"
src="file:///home/jin/cloud.jakubzych.com/_img/logos/dgw.png"
alt=""
aria-hidden="true">
<header class="hud"> <header class="hud">
<div class="group"> <div class="group">
<span><span class="led"></span>TRANSMISSION</span> <span><span class="led"></span>TRANSMISSION</span>
@@ -343,7 +275,8 @@ body {
ctx.putImageData(img, 0, 0); ctx.putImageData(img, 0, 0);
}; };
drawNoise(); drawNoise();
setInterval(drawNoise, 1000 / 12); // 8 fps — visually almost identical to 12 fps but ~33% less paint work.
setInterval(drawNoise, 1000 / 8);
// ───────── Telemetry: rotating real-data subtitle ───────── // ───────── Telemetry: rotating real-data subtitle ─────────
// All lines derive from telemetry.js (window.__TEL), generated by telemetry.sh. // All lines derive from telemetry.js (window.__TEL), generated by telemetry.sh.

View File

@@ -26,7 +26,7 @@ cy=580
[BasicWindow] [BasicWindow]
geometry=AdnQywADAAAAAAAAAAAAAAAACf8AAAVDAAACgQAAABkAAAn+AAAEHAAAAAECAAAACgAAAAAAAAAAAAAACf8AAAVD geometry=AdnQywADAAAAAAAAAAAAAAAACf8AAAVDAAACgQAAABkAAAn+AAAEHAAAAAECAAAACgAAAAAAAAAAAAAACf8AAAVD
DockState=AAAA/wAAAAD9AAAAAQAAAAMAAAoAAAABLPwBAAAABvsAAAAUAHMAYwBlAG4AZQBzAEQAbwBjAGsBAAAAAAAAAe8AAACYAP////sAAAAWAHMAbwB1AHIAYwBlAHMARABvAGMAawEAAAHzAAAB6QAAAJgA////+wAAABIAbQBpAHgAZQByAEQAbwBjAGsBAAAD4AAAAn4AAAECAP////sAAAAeAHQAcgBhAG4AcwBpAHQAaQBvAG4AcwBEAG8AYwBrAQAABmIAAAHRAAAArQD////7AAAAGABjAG8AbgB0AHIAbwBsAHMARABvAGMAawEAAAg3AAAByQAAAKIA////+wAAABIAcwB0AGEAdABzAEQAbwBjAGsCAAAExAAAAXAAAAK8AAAAyAAACgAAAAPYAAAABAAAAAQAAAAIAAAACPwAAAAA DockState=AAAA/wAAAAD9AAAAAQAAAAMAAAoAAAABLPwBAAAABvsAAAAUAHMAYwBlAG4AZQBzAEQAbwBjAGsBAAAAAAAAAfMAAACYAP////sAAAAWAHMAbwB1AHIAYwBlAHMARABvAGMAawEAAAH3AAAB6AAAAJgA////+wAAABIAbQBpAHgAZQByAEQAbwBjAGsBAAAD4wAAAn0AAAECAP////sAAAAeAHQAcgBhAG4AcwBpAHQAaQBvAG4AcwBEAG8AYwBrAQAABmQAAAHQAAAArQD////7AAAAGABjAG8AbgB0AHIAbwBsAHMARABvAGMAawEAAAg4AAAByAAAAKIA////+wAAABIAcwB0AGEAdABzAEQAbwBjAGsCAAAExAAAAXAAAAK8AAAAyAAACgAAAAPYAAAABAAAAAQAAAAIAAAACPwAAAAA
PreviewEnabled=true PreviewEnabled=true
AlwaysOnTop=false AlwaysOnTop=false
SceneDuplicationMode=true SceneDuplicationMode=true