Commit Graph
100 Commits
Author SHA1 Message Date
Jage9 7776676e2d docs(plan): expand refinement items 1-4 with implementation details 2026-02-24 15:36:22 -05:00
Jage9 3718449156 refactor: split item type packages into definition/validator/actions 2026-02-24 03:08:30 -05:00
Jage9 7903bab131 refactor: collapse item modules into plugins and remove no-op client item behaviors 2026-02-24 03:00:30 -05:00
Jage9 d4dbb807da server: make state-save debounce timing configurable 2026-02-24 02:50:47 -05:00
Jage9 f7e29ec968 client: require server item schema and drive property UI from metadata 2026-02-24 02:49:17 -05:00
Jage9 477b4d2cf4 server: debounce item state saves and add schema contract tests 2026-02-24 02:49:13 -05:00
Jage9 d209f30244 Add auto-discovered server item type plugins 2026-02-24 02:40:40 -05:00
Jage9 9f8a6bdcc8 Enforce strict item params validation and stripping on server 2026-02-24 02:39:51 -05:00
Jage9 949766c6f6 Add per-item behavior registry for client item runtime 2026-02-24 02:13:25 -05:00
Jage9 cc33e24cd4 Reorganize client items into per-item folders 2026-02-24 02:07:18 -05:00
Jage9 43cf9316c0 Modularize client item type definitions by item module 2026-02-24 01:58:53 -05:00
Jage9 d4a693ed99 Modularize client item logic into dedicated item modules 2026-02-24 01:46:37 -05:00
Jage9 4688094aa4 Adjust piano octave/instrument shortcut feedback 2026-02-23 02:10:51 -05:00
Jage9 1878c179e4 Updated json 2026-02-23 02:07:47 -05:00
Jage9 9430b9fb09 Fix brass instrument mapping for live piano notes 2026-02-23 02:05:32 -05:00
Jage9 3e77f4edce Align brass live voice with instrument preview 2026-02-23 02:01:52 -05:00
Jage9 ccbe41e618 Refine piano recording controls and stop behavior 2026-02-23 02:00:01 -05:00
Jage9 92aabd54ef Isolate piano demo voices from live mono/poly grouping 2026-02-23 01:53:10 -05:00
Jage9 5d88fce752 Remove legacy piano fallback and add state-indexed song events 2026-02-23 01:49:27 -05:00
Jage9 6595c15fa4 Migrate piano songs to songId registry with compact storage 2026-02-23 01:43:02 -05:00
Jage9 0f616a3fe8 Load piano Enter-demo from external recording JSON 2026-02-23 01:35:46 -05:00
Jage9 01ec672693 Lengthen struck piano instrument held-note fade tails 2026-02-23 01:25:50 -05:00
Jage9 c0a0ccd4a5 Use Yama no Ongakuka melody for piano demo 2026-02-23 01:24:13 -05:00
Jage9 4e1415aa1c Make struck piano instruments decay while held 2026-02-23 01:20:27 -05:00
Jage9 4aa7f0bf4d Add piano demo playback on Enter with stop on C 2026-02-23 01:18:17 -05:00
Jage9 95a1721b5b Refine piano help key wording to match help style 2026-02-23 01:13:40 -05:00
Jage9 5f29241085 Add February 23 changelog entry for piano item 2026-02-23 01:10:03 -05:00
Jage9 446202288f Add piano-mode help viewer bound to question mark 2026-02-23 01:08:50 -05:00
Jage9 4022a66163 Fix piano control status replay and remove duplicate beeps 2026-02-23 01:01:43 -05:00
Jage9 d8b470d389 Move piano recording keys to Z/X/C and keep control errors out of chat 2026-02-23 00:57:18 -05:00
Jage9 9477beb345 Fix piano playback controls and recorded settings 2026-02-23 00:45:17 -05:00
Jage9 93b9d19455 Add shared piano recording/playback and mono key fallback 2026-02-23 00:36:36 -05:00
Jage9 b4cf85ac44 Add piano octave hotkeys and escape-only exit 2026-02-23 00:26:38 -05:00
Jage9 29eb6a63e3 Add piano mono/poly, octave, and expanded drum voice set 2026-02-23 00:22:36 -05:00
Jage9 019e49802d Add piano release/brightness controls and instrument hotkeys 2026-02-23 00:05:01 -05:00
Jage9 d9e9e60524 Expand piano drum-kit voices and polish instrument synthesis 2026-02-22 23:58:07 -05:00
Jage9 89c6aa7e9b Improve piano instruments, previews, and key-stream safeguards 2026-02-22 23:51:13 -05:00
Jage9 1319c044dd Add piano item type with realtime play mode and remote notes 2026-02-22 23:42:17 -05:00
Jage9 81c6af6399 Normalize keyboard codes for Safari and iOS hardware keyboards 2026-02-22 22:53:09 -05:00
Jage9 12c7bd89ce Allow 0.1 step for emit speed and tempo 2026-02-22 22:21:27 -05:00
Jage9 0d506d8066 Format spoken player coordinates to 2 decimals 2026-02-22 22:19:42 -05:00
Jage9 9cfc995aa0 Smooth directional off-axis attenuation curve 2026-02-22 21:45:40 -05:00
Jage9 f3a7cc90a7 Track spatial one-shots against listener movement 2026-02-22 21:37:15 -05:00
Jage9 9b1b1505f0 Unify one-shot sample attack smoothing 2026-02-22 21:33:11 -05:00
Jage9 6c453d56ff Use target smoothing for continuous spatial audio 2026-02-22 21:27:27 -05:00
Jage9 3d741b358a Smooth spatial transitions with 0.2s ramps 2026-02-22 21:23:16 -05:00
Jage9 ad2cd532be Updated help 2026-02-22 21:16:07 -05:00
Jage9 d5f8b239e9 Fix live audio layer reads and harden proxy redirect validation 2026-02-22 21:07:01 -05:00
Jage9 f31ab296e5 Add Feb 22 changelog entries for teleport and property arrows 2026-02-22 20:52:35 -05:00
Jage9 ecef4832fc Suppress duplicate property row echo after quick adjust 2026-02-22 20:50:04 -05:00
Jage9 acca054fae Add left/right quick adjust in item properties list 2026-02-22 20:47:06 -05:00
Jage9 ce666b2bd6 Keep origin and destination audio subscriptions during teleport 2026-02-22 20:43:57 -05:00
Jage9 1b5acd9381 Apply perceptual curve to media and emit volume 2026-02-22 20:42:05 -05:00
Jage9 6f50169805 Reduce teleport start audio gain 2026-02-22 20:26:59 -05:00
Jage9 54cfffc5cf Add moving teleport start audio loop and end cut-off 2026-02-22 20:23:38 -05:00
Jage9 ed0fc07728 Preload teleport destination streams and mute teleport footsteps 2026-02-22 20:07:02 -05:00
Jage9 5ff805e847 Animate teleports with timed movement and periodic sync 2026-02-22 20:02:25 -05:00
Jage9 f7171487c2 Add persistent connection status live region 2026-02-22 19:54:55 -05:00
Jage9 05e92fcb64 Show reconnect prompt after client update reload 2026-02-22 19:49:14 -05:00
Jage9 d504e18771 Tie local footstep fade ramp to movement cooldown 2026-02-22 19:43:15 -05:00
Jage9 b02be51910 Remove auto-connect after version reload 2026-02-22 19:41:26 -05:00
Jage9 1e3ddba625 Harden auto-reconnect handshake and smooth local footsteps 2026-02-22 19:38:34 -05:00
Jage9 2362c14bc0 Unify user list on Shift+L and remove Shift+U mode 2026-02-22 19:35:28 -05:00
Jage9 391100a00e Add short fade-in ramp to local movement footsteps 2026-02-22 19:33:42 -05:00
Jage9 7ba67c3707 Optimize media stream subscriptions by distance and movement 2026-02-22 19:31:44 -05:00
Jage9 c4494f2f99 users: make shift-u list include self and handle self volume adjustment explicitly 2026-02-22 19:22:22 -05:00
Jage9 fe230bd53d users: add shift-u alphabetical list with per-user listen volume controls 2026-02-22 19:15:03 -05:00
Jage9 590e33d374 deploy: enforce no-cache for index.html and version.js via publish-dir htaccess 2026-02-22 19:08:20 -05:00
Jage9 c7e2a10652 reconnect: account for delayed autofill nickname before auto-connect after version reload 2026-02-22 19:04:54 -05:00
Jage9 0155446ec0 ux: remove 'List' prefix from shift list count announcements 2026-02-22 18:59:43 -05:00
Jage9 eb18155132 update: cache-busted version reload with one-time auto-connect; announce list counts; add apache no-cache html headers 2026-02-22 18:57:40 -05:00
Jage9 deb235fb9c net: improve disconnect/reconnect messaging and use 5s retry cadence 2026-02-22 18:52:06 -05:00
Jage9 7e3553dbde net: prioritize close-event reconnect with 2s delay and 3 retry cap 2026-02-22 18:47:09 -05:00
Jage9 d5dbb8289a net: auto-reload on server version mismatch and announce connected version on welcome 2026-02-22 18:40:26 -05:00
Jage9 ee0b98290e audio: align master-volume feedback tone and quiet chat history navigation 2026-02-22 18:38:11 -05:00
Jage9 f2734659d2 audio: add master volume on -/= and move effect value to shift -/=; route connect flow notices to chat buffer 2026-02-22 18:33:55 -05:00
Jage9 12d3c62916 ux: route reconnect/restart signaling notices into chat buffer 2026-02-22 18:29:44 -05:00
Jage9 0cfba9f1a7 net: sync serverInfo version with web version and reconnect on first missed heartbeat 2026-02-22 18:24:53 -05:00
Jage9 c7c30f234d net: add heartbeat reconnect and server restart/version announcements 2026-02-22 18:20:13 -05:00
Jage9 a918d46cd1 audio: live mic gain preview with temporary loopback during edit 2026-02-22 17:40:44 -05:00
Jage9 89c88deb87 refactor: extract session/settings flows and tighten shifted key commands 2026-02-22 17:33:31 -05:00
Jage9 48fd90023e docs: complete jsdoc pass and enforce newest-first changelog order 2026-02-22 17:23:33 -05:00
Jage9 8da737150e Remap use/speak keys and update help/changelog 2026-02-22 17:16:31 -05:00
Jage9 5f1f1022fc Add TS JSDoc coverage and improve numeric step controls 2026-02-22 17:12:28 -05:00
Jage9 3e321df56c Extract message, item editor, and UI binding modules 2026-02-22 17:05:36 -05:00
Jage9 ccc7d1e525 Unify list and edit-mode handler flows in input helpers 2026-02-22 16:58:57 -05:00
Jage9 ab26ceaafc Route main-mode key commands through main command router 2026-02-22 16:49:15 -05:00
Jage9 e198ef5f80 Update mic gain wording and add Feb 22 changelog entry 2026-02-22 16:45:45 -05:00
Jage9 2bcd165d3b Extract shared list and numeric input helpers 2026-02-22 16:41:19 -05:00
Jage9 481a7550cf Polish numeric step feedback and boundary handling 2026-02-22 16:37:42 -05:00
Jage9 d72e1867bc Add arrow-step controls for numeric edit fields 2026-02-22 16:31:36 -05:00
Jage9 4b4cb94522 Rebind mic calibration to Shift+V and add manual volume edit 2026-02-22 16:28:11 -05:00
Jage9 2f82e107ff Rescale mic calibration gain range and defaults 2026-02-22 16:24:27 -05:00
Jage9 cfb70ec04e Use explicit no-audio message for mic calibration 2026-02-22 16:17:53 -05:00
Jage9 9707a57169 Add Shift+C microphone input calibration 2026-02-22 16:16:16 -05:00
Jage9 e4b0955f50 Restrict Shift+O edits to item-specific editable fields 2026-02-22 04:03:30 -05:00
Jage9 2b7bb04c12 Cap sound and stream URL fields at 2048 chars 2026-02-22 03:52:46 -05:00
Jage9 c7ba23f371 Show max length in item tooltips 2026-02-22 03:50:52 -05:00
Jage9 82e78872d2 Add wall-hit repetition note to Feb 22 changelog 2026-02-22 03:35:06 -05:00
Jage9 5e83066119 Increase hearing radius to 20 and suppress repeated wall-hit sound 2026-02-22 03:30:26 -05:00