Files
zkldi_Tachi/server
John Pork 5df0f43400 lr2hook: add fast-slow support (#1367)
* build(client): add 'lintfix' target matching the server

* docs(lr2hook): suggest lr2_chainload instead of BokutachiLauncher.exe

BokutachiLauncher.exe is no longer a part of BokutachiHook.

* refactor(server/lr2hook): G-ATTACK, P-ATTACK and HAZARD are not HARD

* feat(server/lr2hook): parse extendedJudgements

* feat(server/lr2hook): use fast-slow and early/late judgements

* test(server/lr2hook): make clear that in this test notesPlayed != notesTotal

* feat(server/lr2hook): calculate BP by hand when exiting chart early

* feat(server/lr2hook): parse rseed

* feat(server/lr2hook): parse extendedHpGraphs

* feat(server/lr2hook): parse unixTimestamp

* feat(server/lr2hook): use unixTimestamp as score play time

Especially useful as BokutachiHook now retries sending scores after some
time on connections errors.

* feat(common/bms+server/lr2hook+docs): add gaugeHistory{Easy,Groove,Hard}

Could also save graphs for unimplemented gauges, not done here as I
don't know if they are ever going to be implemented while they take some
decent space.

* feat(client/bms): support several gauges

Ugly IIFE inside IIFE is work-around for eslint bug `Expected a 'break'
statement before 'case'`.
2025-10-06 21:52:28 +01:00
..
2025-03-18 18:42:39 +00:00
2025-03-18 20:01:56 +00:00
2024-08-17 15:01:40 +01:00
…
2023-02-08 03:36:09 +00:00
2022-07-18 02:03:54 +01:00

Tachi-Server

Tachi-Server is the backend for Tachi.

What's it do?

  • Hosts an express backend server.
  • Opens a public API on /api.
  • Supports various IR frameworks under /ir
  • Powers a ridiculously overengineered score import framework.

Setup

Make sure you've ran the bootstrap script in ../_scripts. You can then start the server with pnpm start (in this directory) or pnpm start-server at the top level.