diff --git a/client/src/app/pages/dashboard/import/BarbatosPage.tsx b/client/src/app/pages/dashboard/import/BarbatosPage.tsx new file mode 100644 index 000000000..e7e0ca1df --- /dev/null +++ b/client/src/app/pages/dashboard/import/BarbatosPage.tsx @@ -0,0 +1,46 @@ +import useSetSubheader from "components/layout/header/useSetSubheader"; +import Divider from "components/util/Divider"; +import ExternalLink from "components/util/ExternalLink"; +import Muted from "components/util/Muted"; +import { TachiConfig } from "lib/config"; +import React from "react"; + +export default function BarbatosPage() { + useSetSubheader(["Import Scores", "Barbatos"]); + + return ( +
+

What Is Barbatos?

+
+ Barbatos is a .dll file that hooks into SDVX and automatically sends + the scores to a server. {TachiConfig.name} is compatible with what Barbatos sends, + so you can use it to submit scores! +
+ +

Setup Instructions

+
    +
  1. + Download barbatos.dll from{" "} + here. +
  2. +
  3. + Download your config file here.
    + This file contains an API Key, which is meant to be kept secret! +
  4. +
  5. + Place all of these files inside your SDVX folder, next to your .bat{" "} + file. +
  6. +
      +
    • + BemaniTools: Add -K barbatos.dll to your .bat{" "} + file. +
    • +
    • + SpiceTools: Add -k barbatos.dll to your .bat file. +
    • +
    +
+
+ ); +} diff --git a/client/src/app/pages/dashboard/import/BeatorajaDBPage.tsx b/client/src/app/pages/dashboard/import/BeatorajaDBPage.tsx new file mode 100644 index 000000000..365497939 --- /dev/null +++ b/client/src/app/pages/dashboard/import/BeatorajaDBPage.tsx @@ -0,0 +1,28 @@ +import TISInfo from "components/imports/TISInfo"; +import useSetSubheader from "components/layout/header/useSetSubheader"; +import Divider from "components/util/Divider"; +import Muted from "components/util/Muted"; +import { TachiConfig } from "lib/config"; +import React from "react"; +import { Link } from "react-router-dom"; + +export default function BeatorajaDBPage() { + useSetSubheader(["Import Scores", "Beatoraja Database File"]); + return ( + <> + + + + This method is intended for syncing up with existing scores. For new scores, you + should set up the Beatoraja IR, for + automatic score uploading. + +
+ + Note: If you submit a score on a chart that {TachiConfig.name} doesn't recognise, + you'll need to wait until atleast 2 other players submit scores for that chart + before it'll show up. This is to combat accidental IR spam. + + + ); +} diff --git a/client/src/app/pages/dashboard/import/FervidexPage.tsx b/client/src/app/pages/dashboard/import/FervidexPage.tsx new file mode 100644 index 000000000..b2a901171 --- /dev/null +++ b/client/src/app/pages/dashboard/import/FervidexPage.tsx @@ -0,0 +1,57 @@ +import useSetSubheader from "components/layout/header/useSetSubheader"; +import Divider from "components/util/Divider"; +import ExternalLink from "components/util/ExternalLink"; +import Muted from "components/util/Muted"; +import { TachiConfig } from "lib/config"; +import React from "react"; + +export default function FervidexPage() { + useSetSubheader(["Import Scores", "Fervidex"]); + + return ( +
+

What Is Fervidex?

+
+ Fervidex is a .dll file that hooks into IIDX and automatically sends + the scores to a server. {TachiConfig.name} is compatible with what Fervidex sends, + so you can use it to submit scores! +
+ +

Setup Instructions

+
    +
  1. + Download fervidex.dll from{" "} + Here. +
  2. +
  3. + Download your fervidex.json config file here.
    + This config file contains an API Key, which should be kept secret!. +
  4. +
  5. + Drop both files into the same folder as your bm2dx.dll. +
  6. +

    For Infinitas Players

    +
      +
    • + You'll also need to download{" "} + + this + + , and extract it to the same folder. +
    • +
    +

    For Not-Infinitas Players

    +
      +
    • + BemaniTools: Add -K fervidex.dll to your .bat{" "} + file. +
    • +
    • + SpiceTools: Add -k fervidex.dll to your .bat file. +
    • +
    +
  7. That's it! Your scores should now automatically submit to the server.
  8. +
+
+ ); +} diff --git a/client/src/app/pages/dashboard/import/ImportPage.tsx b/client/src/app/pages/dashboard/import/ImportPage.tsx index 29a3ad440..b9de88f6a 100644 --- a/client/src/app/pages/dashboard/import/ImportPage.tsx +++ b/client/src/app/pages/dashboard/import/ImportPage.tsx @@ -9,7 +9,7 @@ import React, { useState } from "react"; import { Game, GetGameConfig } from "tachi-common"; export default function ImportPage() { - useSetSubheader(["Dashboard", "Import Scores"]); + useSetSubheader(["Import Scores"]); const [game, setGame] = useState(null); diff --git a/client/src/app/pages/dashboard/import/LR2DBPage.tsx b/client/src/app/pages/dashboard/import/LR2DBPage.tsx new file mode 100644 index 000000000..ca4edc535 --- /dev/null +++ b/client/src/app/pages/dashboard/import/LR2DBPage.tsx @@ -0,0 +1,28 @@ +import TISInfo from "components/imports/TISInfo"; +import useSetSubheader from "components/layout/header/useSetSubheader"; +import Divider from "components/util/Divider"; +import Muted from "components/util/Muted"; +import { TachiConfig } from "lib/config"; +import React from "react"; +import { Link } from "react-router-dom"; + +export default function LR2DBPage() { + useSetSubheader(["Import Scores", "LR2 Database File"]); + return ( + <> + + + + This is currently the only way to import scores from LR2, this sucks, because I'd + love for scores to automatically import! There is an open bounty on an LR2 automatic + score uploader. + +
+ + Note: If you submit a score on a chart that {TachiConfig.name} doesn't recognise, + you'll need to wait until atleast 2 other players submit scores for that chart + before it'll show up. This is to combat accidental IR spam. + + + ); +} diff --git a/client/src/app/pages/dashboard/import/USCDBPage.tsx b/client/src/app/pages/dashboard/import/USCDBPage.tsx new file mode 100644 index 000000000..c73f2e103 --- /dev/null +++ b/client/src/app/pages/dashboard/import/USCDBPage.tsx @@ -0,0 +1,28 @@ +import TISInfo from "components/imports/TISInfo"; +import useSetSubheader from "components/layout/header/useSetSubheader"; +import Divider from "components/util/Divider"; +import Muted from "components/util/Muted"; +import { TachiConfig } from "lib/config"; +import React from "react"; +import { Link } from "react-router-dom"; + +export default function USCDBPage() { + useSetSubheader(["Import Scores", "USC Database File"]); + return ( + <> + + + + This method is intended for syncing up with existing scores. For new scores, you + should set up the USC IR, for automatic + score uploading. + +
+ + Note: If you submit a score on a chart that {TachiConfig.name} doesn't recognise, + you'll need to wait until atleast 2 other players submit scores for that chart + before it'll show up. This is to combat accidental IR spam. + + + ); +} diff --git a/client/src/app/routes/ImportRoutes.tsx b/client/src/app/routes/ImportRoutes.tsx index 4f0e1beab..357e7d3e6 100644 --- a/client/src/app/routes/ImportRoutes.tsx +++ b/client/src/app/routes/ImportRoutes.tsx @@ -1,9 +1,14 @@ +import BarbatosPage from "app/pages/dashboard/import/BarbatosPage"; import BatchManualPage from "app/pages/dashboard/import/BatchManualPage"; +import BeatorajaDBPage from "app/pages/dashboard/import/BeatorajaDBPage"; import BeatorajaIRPage from "app/pages/dashboard/import/BeatorajaIRPage"; +import FervidexPage from "app/pages/dashboard/import/FervidexPage"; import IIDXEamCSVPage from "app/pages/dashboard/import/IIDXEamCSVPage"; import ImportPage from "app/pages/dashboard/import/ImportPage"; +import LR2DBPage from "app/pages/dashboard/import/LR2DBPage"; import MerJSONPage from "app/pages/dashboard/import/MerJSONPage"; import SSSXMLPage from "app/pages/dashboard/import/SSSXMLPage"; +import USCDBPage from "app/pages/dashboard/import/USCDBPage"; import USCIRPage from "app/pages/dashboard/import/USCIRPage"; import { ErrorPage } from "app/pages/ErrorPage"; import Divider from "components/util/Divider"; @@ -61,6 +66,26 @@ export default function ImportRoutes() { + + + + + + + + + + + + + + + + + + + + diff --git a/client/src/components/imports/TISInfo.tsx b/client/src/components/imports/TISInfo.tsx new file mode 100644 index 000000000..8c5914b79 --- /dev/null +++ b/client/src/components/imports/TISInfo.tsx @@ -0,0 +1,25 @@ +import ExternalLink from "components/util/ExternalLink"; +import { TachiConfig } from "lib/config"; +import React from "react"; + +export default function TISInfo({ name }: { name: string }) { + return ( +
+

Importing {name} files

+
    +
  1. + Download the latest version of the {TachiConfig.name} Import Scripts{" "} + + here + + . +
  2. +
  3. Follow the instructions in-client.
  4. +
  5. + Click import! The scripts will convert the file and submit it to{" "} + {TachiConfig.name}. +
  6. +
+
+ ); +}