diff --git a/README.md b/README.md index fdc61451e..6341142c2 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ # charasort -A web based character sorter. Allows users to run through a manual merge sort of their favorite -characters from a set. +A web based character sorter. Allows users to run through a manual merge sort of their favorite characters from a set. **Features** * Entirely client side, no backend server required. @@ -19,21 +18,23 @@ This is a list of things you need to change for your sorter, for each file. * `index.html` * Sorter name: Change under `starting start button` and the `` tags. - * Starting banner images: 120px x 180px, under `left sort image` and `right sort image`. + * Starting banner images: Same aspect ratio as character images, under `left sort image` and `right sort image`. * OpenGraph tags: `og:site_name`, `og:description` and `og:image` will show up on embeds when linked to social media such as Facebook, Twitter and Discord. * Sorter info: Insert whatever you like under the `info` tag. * Website icon: Remember to get your own `favicon.ico`! * `src/js/data.js` - Change `imageRoot` if you are not uploading your images to imgur. + Change `imageRoot` to whatever the root URL of your images is. * `src/js/data/YYYY-MM-DD.js` Creating your own set of data is relatively simple. First, change the `dataSetVersion` date to the date when you are creating the dataset. Example: `dataSetVersion = 2018-02-20`. The actual filename does not matter, it is just for your own easy reference. - Further down, each file comprises of two sets of data: `characterData` and `options`. + Further down, each file comprises of three sets of data: `changelog`, `characterData` and `options`. + `changelog` is an array of strings explaining what has changed since the last dataset. + `characterData` is an array of objects filled with character data. Its layout is as follows. ``` diff --git a/index.html b/index.html index b46780799..d7f8f47f2 100644 --- a/index.html +++ b/index.html @@ -1,3 +1,4 @@ +<!DOCTYPE html> <html> <head> @@ -22,6 +23,9 @@ <script src="src/js/data/2019-11-26.js"></script> <script src="src/js/data/2021-03-29.js"></script> <script src="src/js/data/2021-05-09.js"></script> + <script src="src/js/data/2021-11-06.js"></script> + <script src="src/js/data/2023-09-22.js"></script> + <script src="src/js/data/2023-09-24.js"></script> <script src="src/js/html2canvas.min.js"></script> <script src="src/js/lz-string.min.js"></script> @@ -31,8 +35,18 @@ <body> <div class="container"> + <div class="colorchange"> + <button class="toggle"> + <svg class="dark"> + <use href="src/assets/dark-mode.svg#img"></use> + </svg> + <svg class="light"> + <use href="src/assets/light-mode.svg#img"></use> + </svg> + </button> + </div> - <div class="progress"> + <div class="progress hidden"> <span class="progressbattle"></span> <div class="progressbar"> <div class="progressfill"><span class="progresstext"></span></div> @@ -40,30 +54,30 @@ </div> <div class="sorter"> - <img src="src/assets/defaultL.jpg" class="left sort image"> + <img src="src/assets/defaultL.png" class="left sort image"> - <div class="starting start button">Touhou Project Character Sorter<br><br>Click to Start!</div> - <div class="starting load button">Load <span></span></div> + <div class="starting start button"><div>Touhou Project Character Sorter<br><br>Click to Start!</div></div> + <div class="starting load button hidden">Load </div> - <div class="loading button"><div></div><span>Loading...</span></div> + <div class="loading button hidden"><div></div><span>Loading...</span></div> - <div class="sorting tie button">Tie</div> - <div class="sorting undo button">Undo</div> - <div class="sorting save button">Save Progress</div> + <div class="sorting tie button hidden">Tie</div> + <div class="sorting undo button hidden">Undo</div> + <div class="sorting save button hidden">Save Progress</div> - <div class="finished save button">Generate Result URL</div> - <div class="finished getimg button">Generate Image</div> - <div class="finished list button">Generate Text List</div> + <div class="finished save button hidden">Generate Result URL</div> + <div class="finished getimg button hidden">Generate Image</div> + <div class="finished list button hidden">Generate Text List</div> - <img src="src/assets/defaultR.jpg" class="right sort image"> + <img src="src/assets/defaultR.png" class="right sort image"> - <div class="left sort text"><p></p></div> - <div class="right sort text"><p></p></div> + <div class="left sort text hidden"><p></p></div> + <div class="right sort text hidden"><p></p></div> </div> <div class="options"></div> - <div class="image selector">Display Images on Result: </div> - <div class="time taken"></div> + <div class="image selector hidden">Display Images on Result: </div> + <div class="time taken hidden"></div> <div class="results"></div> <div class="info"> @@ -88,10 +102,15 @@ <br><br> - <p>May 9th, 2021 - Added Unconnected Marketeers (full).</p> - <p>March 29th, 2021 - Added Unconnected Marketeers (trial).</p> - <p>October 5th, 2019 - Added filter for nameless characters.</p> - <p>October 4th, 2019 - Added Wily Beast and Weakest Creature (full).</p> + <table class="changelog"> + <thead> + <tr> + <th colspan="2">Changelog</th> + </tr> + </thead> + <tbody> + </tbody> + </table> </div> </div> </body> diff --git a/src/assets/chars/02Xb4pU.png b/src/assets/chars/02Xb4pU.png deleted file mode 100644 index fbf913c0f..000000000 Binary files a/src/assets/chars/02Xb4pU.png and /dev/null differ diff --git a/src/assets/chars/090hLPL.png b/src/assets/chars/090hLPL.png deleted file mode 100644 index b65bb8f8b..000000000 Binary files a/src/assets/chars/090hLPL.png and /dev/null differ diff --git a/src/assets/chars/0YT7QlS.png b/src/assets/chars/0YT7QlS.png deleted file mode 100644 index aac854d48..000000000 Binary files a/src/assets/chars/0YT7QlS.png and /dev/null differ diff --git a/src/assets/chars/0ra00WG.png b/src/assets/chars/0ra00WG.png deleted file mode 100644 index 6f7b47b4d..000000000 Binary files a/src/assets/chars/0ra00WG.png and /dev/null differ diff --git a/src/assets/chars/0rvq1ph.png b/src/assets/chars/0rvq1ph.png deleted file mode 100644 index 13857ea16..000000000 Binary files a/src/assets/chars/0rvq1ph.png and /dev/null differ diff --git a/src/assets/chars/16RUacj.png b/src/assets/chars/16RUacj.png deleted file mode 100644 index 854a1d1be..000000000 Binary files a/src/assets/chars/16RUacj.png and /dev/null differ diff --git a/src/assets/chars/26441341_p0.png b/src/assets/chars/26441341_p0.png new file mode 100644 index 000000000..898281f34 Binary files /dev/null and b/src/assets/chars/26441341_p0.png differ diff --git a/src/assets/chars/2Pr8b2N.png b/src/assets/chars/2Pr8b2N.png deleted file mode 100644 index bc0a5cc9d..000000000 Binary files a/src/assets/chars/2Pr8b2N.png and /dev/null differ diff --git a/src/assets/chars/2QUbCrU.png b/src/assets/chars/2QUbCrU.png deleted file mode 100644 index d4db8b923..000000000 Binary files a/src/assets/chars/2QUbCrU.png and /dev/null differ diff --git a/src/assets/chars/2ppPxny.png b/src/assets/chars/2ppPxny.png deleted file mode 100644 index cf581e29e..000000000 Binary files a/src/assets/chars/2ppPxny.png and /dev/null differ diff --git a/src/assets/chars/33672888_p0.png b/src/assets/chars/33672888_p0.png new file mode 100644 index 000000000..820ffe0ca Binary files /dev/null and b/src/assets/chars/33672888_p0.png differ diff --git a/src/assets/chars/33708432_p0.png b/src/assets/chars/33708432_p0.png new file mode 100644 index 000000000..fb0f2bb7c Binary files /dev/null and b/src/assets/chars/33708432_p0.png differ diff --git a/src/assets/chars/33718126_p0.png b/src/assets/chars/33718126_p0.png new file mode 100644 index 000000000..6767bafd6 Binary files /dev/null and b/src/assets/chars/33718126_p0.png differ diff --git a/src/assets/chars/33967037_p0.png b/src/assets/chars/33967037_p0.png new file mode 100644 index 000000000..9738dad30 Binary files /dev/null and b/src/assets/chars/33967037_p0.png differ diff --git a/src/assets/chars/34199683_p0.png b/src/assets/chars/34199683_p0.png new file mode 100644 index 000000000..14b2304ca Binary files /dev/null and b/src/assets/chars/34199683_p0.png differ diff --git a/src/assets/chars/35897624_p2.png b/src/assets/chars/35897624_p2.png new file mode 100644 index 000000000..e9879d1dc Binary files /dev/null and b/src/assets/chars/35897624_p2.png differ diff --git a/src/assets/chars/35917852_p27.png b/src/assets/chars/35917852_p27.png new file mode 100644 index 000000000..22aadf210 Binary files /dev/null and b/src/assets/chars/35917852_p27.png differ diff --git a/src/assets/chars/36022130_p8.png b/src/assets/chars/36022130_p8.png new file mode 100644 index 000000000..3356bf8cf Binary files /dev/null and b/src/assets/chars/36022130_p8.png differ diff --git a/src/assets/chars/36032949_p28.png b/src/assets/chars/36032949_p28.png new file mode 100644 index 000000000..db5c0a4b0 Binary files /dev/null and b/src/assets/chars/36032949_p28.png differ diff --git a/src/assets/chars/36080352_p0.png b/src/assets/chars/36080352_p0.png new file mode 100644 index 000000000..2b9022a15 Binary files /dev/null and b/src/assets/chars/36080352_p0.png differ diff --git a/src/assets/chars/36180040_p0.png b/src/assets/chars/36180040_p0.png new file mode 100644 index 000000000..9ea9d6bbd Binary files /dev/null and b/src/assets/chars/36180040_p0.png differ diff --git a/src/assets/chars/36207805_p27.png b/src/assets/chars/36207805_p27.png new file mode 100644 index 000000000..7c2b55810 Binary files /dev/null and b/src/assets/chars/36207805_p27.png differ diff --git a/src/assets/chars/36228277_p1.png b/src/assets/chars/36228277_p1.png new file mode 100644 index 000000000..8bb6e50ed Binary files /dev/null and b/src/assets/chars/36228277_p1.png differ diff --git a/src/assets/chars/36335545_p0.png b/src/assets/chars/36335545_p0.png new file mode 100644 index 000000000..98c3cc929 Binary files /dev/null and b/src/assets/chars/36335545_p0.png differ diff --git a/src/assets/chars/36378515_p27.png b/src/assets/chars/36378515_p27.png new file mode 100644 index 000000000..a1456ea88 Binary files /dev/null and b/src/assets/chars/36378515_p27.png differ diff --git a/src/assets/chars/36453291_p4.png b/src/assets/chars/36453291_p4.png new file mode 100644 index 000000000..65ca83568 Binary files /dev/null and b/src/assets/chars/36453291_p4.png differ diff --git a/src/assets/chars/36515196_p9.png b/src/assets/chars/36515196_p9.png new file mode 100644 index 000000000..107146553 Binary files /dev/null and b/src/assets/chars/36515196_p9.png differ diff --git a/src/assets/chars/36587157_p22.png b/src/assets/chars/36587157_p22.png new file mode 100644 index 000000000..0feb4e234 Binary files /dev/null and b/src/assets/chars/36587157_p22.png differ diff --git a/src/assets/chars/36732834_p0.png b/src/assets/chars/36732834_p0.png new file mode 100644 index 000000000..06a30b834 Binary files /dev/null and b/src/assets/chars/36732834_p0.png differ diff --git a/src/assets/chars/36827880_p4.png b/src/assets/chars/36827880_p4.png new file mode 100644 index 000000000..df14cd435 Binary files /dev/null and b/src/assets/chars/36827880_p4.png differ diff --git a/src/assets/chars/36921045_p34.png b/src/assets/chars/36921045_p34.png new file mode 100644 index 000000000..f7eb559c0 Binary files /dev/null and b/src/assets/chars/36921045_p34.png differ diff --git a/src/assets/chars/37030661_p0.png b/src/assets/chars/37030661_p0.png new file mode 100644 index 000000000..729a843d1 Binary files /dev/null and b/src/assets/chars/37030661_p0.png differ diff --git a/src/assets/chars/37060947_p0.png b/src/assets/chars/37060947_p0.png new file mode 100644 index 000000000..d5d6e9738 Binary files /dev/null and b/src/assets/chars/37060947_p0.png differ diff --git a/src/assets/chars/37179537_p0.png b/src/assets/chars/37179537_p0.png new file mode 100644 index 000000000..dd1562243 Binary files /dev/null and b/src/assets/chars/37179537_p0.png differ diff --git a/src/assets/chars/37413503_p0.png b/src/assets/chars/37413503_p0.png new file mode 100644 index 000000000..079d98f98 Binary files /dev/null and b/src/assets/chars/37413503_p0.png differ diff --git a/src/assets/chars/37471044_p3.png b/src/assets/chars/37471044_p3.png new file mode 100644 index 000000000..787c89d44 Binary files /dev/null and b/src/assets/chars/37471044_p3.png differ diff --git a/src/assets/chars/37497509_p0.png b/src/assets/chars/37497509_p0.png new file mode 100644 index 000000000..27870b1ed Binary files /dev/null and b/src/assets/chars/37497509_p0.png differ diff --git a/src/assets/chars/37524972_p0.png b/src/assets/chars/37524972_p0.png new file mode 100644 index 000000000..4fcb280ab Binary files /dev/null and b/src/assets/chars/37524972_p0.png differ diff --git a/src/assets/chars/37852706_p0.png b/src/assets/chars/37852706_p0.png new file mode 100644 index 000000000..1a20b5b0c Binary files /dev/null and b/src/assets/chars/37852706_p0.png differ diff --git a/src/assets/chars/37974959_p5.png b/src/assets/chars/37974959_p5.png new file mode 100644 index 000000000..1e86ba202 Binary files /dev/null and b/src/assets/chars/37974959_p5.png differ diff --git a/src/assets/chars/38255785_p0.png b/src/assets/chars/38255785_p0.png new file mode 100644 index 000000000..63adf8d94 Binary files /dev/null and b/src/assets/chars/38255785_p0.png differ diff --git a/src/assets/chars/38340713_p2.png b/src/assets/chars/38340713_p2.png new file mode 100644 index 000000000..3cc1fedad Binary files /dev/null and b/src/assets/chars/38340713_p2.png differ diff --git a/src/assets/chars/38539941_p0.png b/src/assets/chars/38539941_p0.png new file mode 100644 index 000000000..c1fe1a507 Binary files /dev/null and b/src/assets/chars/38539941_p0.png differ diff --git a/src/assets/chars/38575619_p0.png b/src/assets/chars/38575619_p0.png new file mode 100644 index 000000000..1ea88abe6 Binary files /dev/null and b/src/assets/chars/38575619_p0.png differ diff --git a/src/assets/chars/38667372_p4.png b/src/assets/chars/38667372_p4.png new file mode 100644 index 000000000..4a854d71e Binary files /dev/null and b/src/assets/chars/38667372_p4.png differ diff --git a/src/assets/chars/38847228_p31.png b/src/assets/chars/38847228_p31.png new file mode 100644 index 000000000..c7efa4e3a Binary files /dev/null and b/src/assets/chars/38847228_p31.png differ diff --git a/src/assets/chars/39033185_p0.png b/src/assets/chars/39033185_p0.png new file mode 100644 index 000000000..89d09981c Binary files /dev/null and b/src/assets/chars/39033185_p0.png differ diff --git a/src/assets/chars/39261304_p0.png b/src/assets/chars/39261304_p0.png new file mode 100644 index 000000000..f9b3a9892 Binary files /dev/null and b/src/assets/chars/39261304_p0.png differ diff --git a/src/assets/chars/39486261_p0.png b/src/assets/chars/39486261_p0.png new file mode 100644 index 000000000..f99c93bb2 Binary files /dev/null and b/src/assets/chars/39486261_p0.png differ diff --git a/src/assets/chars/39547480_p1.png b/src/assets/chars/39547480_p1.png new file mode 100644 index 000000000..80fd38a04 Binary files /dev/null and b/src/assets/chars/39547480_p1.png differ diff --git a/src/assets/chars/39785627_p0.png b/src/assets/chars/39785627_p0.png new file mode 100644 index 000000000..491254dcf Binary files /dev/null and b/src/assets/chars/39785627_p0.png differ diff --git a/src/assets/chars/39877070_p0.png b/src/assets/chars/39877070_p0.png new file mode 100644 index 000000000..d8cbecc91 Binary files /dev/null and b/src/assets/chars/39877070_p0.png differ diff --git a/src/assets/chars/39KYpvW.png b/src/assets/chars/39KYpvW.png deleted file mode 100644 index e349e9982..000000000 Binary files a/src/assets/chars/39KYpvW.png and /dev/null differ diff --git a/src/assets/chars/3Xiqd22.png b/src/assets/chars/3Xiqd22.png deleted file mode 100644 index 1298c9546..000000000 Binary files a/src/assets/chars/3Xiqd22.png and /dev/null differ diff --git a/src/assets/chars/3iNNL0c.png b/src/assets/chars/3iNNL0c.png deleted file mode 100644 index cc28fc3e5..000000000 Binary files a/src/assets/chars/3iNNL0c.png and /dev/null differ diff --git a/src/assets/chars/3pDRgvR.png b/src/assets/chars/3pDRgvR.png deleted file mode 100644 index e1b518f95..000000000 Binary files a/src/assets/chars/3pDRgvR.png and /dev/null differ diff --git a/src/assets/chars/3zo4VKV.png b/src/assets/chars/3zo4VKV.png deleted file mode 100644 index ece0e6804..000000000 Binary files a/src/assets/chars/3zo4VKV.png and /dev/null differ diff --git a/src/assets/chars/40190956_p0.png b/src/assets/chars/40190956_p0.png new file mode 100644 index 000000000..34b66c5b2 Binary files /dev/null and b/src/assets/chars/40190956_p0.png differ diff --git a/src/assets/chars/40346048_p0.png b/src/assets/chars/40346048_p0.png new file mode 100644 index 000000000..f887cb4ed Binary files /dev/null and b/src/assets/chars/40346048_p0.png differ diff --git a/src/assets/chars/40401344_p0.png b/src/assets/chars/40401344_p0.png new file mode 100644 index 000000000..d8fa1ecb2 Binary files /dev/null and b/src/assets/chars/40401344_p0.png differ diff --git a/src/assets/chars/41296540_p0.png b/src/assets/chars/41296540_p0.png new file mode 100644 index 000000000..5ea322ebc Binary files /dev/null and b/src/assets/chars/41296540_p0.png differ diff --git a/src/assets/chars/41646587_p1.png b/src/assets/chars/41646587_p1.png new file mode 100644 index 000000000..49caefa7e Binary files /dev/null and b/src/assets/chars/41646587_p1.png differ diff --git a/src/assets/chars/42093495_p49.png b/src/assets/chars/42093495_p49.png new file mode 100644 index 000000000..e63258f48 Binary files /dev/null and b/src/assets/chars/42093495_p49.png differ diff --git a/src/assets/chars/42509836_p3.png b/src/assets/chars/42509836_p3.png new file mode 100644 index 000000000..29d18723a Binary files /dev/null and b/src/assets/chars/42509836_p3.png differ diff --git a/src/assets/chars/43259877_p52.png b/src/assets/chars/43259877_p52.png new file mode 100644 index 000000000..40f24a8b0 Binary files /dev/null and b/src/assets/chars/43259877_p52.png differ diff --git a/src/assets/chars/44864931_p31.png b/src/assets/chars/44864931_p31.png new file mode 100644 index 000000000..46dd792ba Binary files /dev/null and b/src/assets/chars/44864931_p31.png differ diff --git a/src/assets/chars/45415913_p32.png b/src/assets/chars/45415913_p32.png new file mode 100644 index 000000000..cb327291b Binary files /dev/null and b/src/assets/chars/45415913_p32.png differ diff --git a/src/assets/chars/46178351_p0.png b/src/assets/chars/46178351_p0.png new file mode 100644 index 000000000..2a6ed495e Binary files /dev/null and b/src/assets/chars/46178351_p0.png differ diff --git a/src/assets/chars/46194333_p0.png b/src/assets/chars/46194333_p0.png new file mode 100644 index 000000000..49b5099ef Binary files /dev/null and b/src/assets/chars/46194333_p0.png differ diff --git a/src/assets/chars/4Ufced2.png b/src/assets/chars/4Ufced2.png deleted file mode 100644 index a4f591b59..000000000 Binary files a/src/assets/chars/4Ufced2.png and /dev/null differ diff --git a/src/assets/chars/50600052_p0.png b/src/assets/chars/50600052_p0.png new file mode 100644 index 000000000..5f01f2002 Binary files /dev/null and b/src/assets/chars/50600052_p0.png differ diff --git a/src/assets/chars/50686999_p0.png b/src/assets/chars/50686999_p0.png new file mode 100644 index 000000000..9aae406b4 Binary files /dev/null and b/src/assets/chars/50686999_p0.png differ diff --git a/src/assets/chars/50751869_p0.png b/src/assets/chars/50751869_p0.png new file mode 100644 index 000000000..b591e00a7 Binary files /dev/null and b/src/assets/chars/50751869_p0.png differ diff --git a/src/assets/chars/51621241_p3.png b/src/assets/chars/51621241_p3.png new file mode 100644 index 000000000..a58bfdd69 Binary files /dev/null and b/src/assets/chars/51621241_p3.png differ diff --git a/src/assets/chars/51638694_p1.png b/src/assets/chars/51638694_p1.png new file mode 100644 index 000000000..f40655667 Binary files /dev/null and b/src/assets/chars/51638694_p1.png differ diff --git a/src/assets/chars/51654664_p0.png b/src/assets/chars/51654664_p0.png new file mode 100644 index 000000000..ba4c53518 Binary files /dev/null and b/src/assets/chars/51654664_p0.png differ diff --git a/src/assets/chars/51687174_p2.png b/src/assets/chars/51687174_p2.png new file mode 100644 index 000000000..cef1e0475 Binary files /dev/null and b/src/assets/chars/51687174_p2.png differ diff --git a/src/assets/chars/51762958_p1.png b/src/assets/chars/51762958_p1.png new file mode 100644 index 000000000..40704fe44 Binary files /dev/null and b/src/assets/chars/51762958_p1.png differ diff --git a/src/assets/chars/51780429_p1.png b/src/assets/chars/51780429_p1.png new file mode 100644 index 000000000..50ec0aa39 Binary files /dev/null and b/src/assets/chars/51780429_p1.png differ diff --git a/src/assets/chars/51797648_p5.png b/src/assets/chars/51797648_p5.png new file mode 100644 index 000000000..2346fd47b Binary files /dev/null and b/src/assets/chars/51797648_p5.png differ diff --git a/src/assets/chars/52376610_p1.png b/src/assets/chars/52376610_p1.png new file mode 100644 index 000000000..f1889ea70 Binary files /dev/null and b/src/assets/chars/52376610_p1.png differ diff --git a/src/assets/chars/52395985_p1.png b/src/assets/chars/52395985_p1.png new file mode 100644 index 000000000..89fe4160b Binary files /dev/null and b/src/assets/chars/52395985_p1.png differ diff --git a/src/assets/chars/52473979_p13.png b/src/assets/chars/52473979_p13.png new file mode 100644 index 000000000..2e271447e Binary files /dev/null and b/src/assets/chars/52473979_p13.png differ diff --git a/src/assets/chars/54182820_p0.png b/src/assets/chars/54182820_p0.png new file mode 100644 index 000000000..d1bd5b341 Binary files /dev/null and b/src/assets/chars/54182820_p0.png differ diff --git a/src/assets/chars/54274126_p9.png b/src/assets/chars/54274126_p9.png new file mode 100644 index 000000000..bc0e00661 Binary files /dev/null and b/src/assets/chars/54274126_p9.png differ diff --git a/src/assets/chars/54295880_p0.png b/src/assets/chars/54295880_p0.png new file mode 100644 index 000000000..16dbb68f1 Binary files /dev/null and b/src/assets/chars/54295880_p0.png differ diff --git a/src/assets/chars/54314843_p0.png b/src/assets/chars/54314843_p0.png new file mode 100644 index 000000000..58407db28 Binary files /dev/null and b/src/assets/chars/54314843_p0.png differ diff --git a/src/assets/chars/54332552_p0.png b/src/assets/chars/54332552_p0.png new file mode 100644 index 000000000..ab349d332 Binary files /dev/null and b/src/assets/chars/54332552_p0.png differ diff --git a/src/assets/chars/54353610_p0.png b/src/assets/chars/54353610_p0.png new file mode 100644 index 000000000..ccb146442 Binary files /dev/null and b/src/assets/chars/54353610_p0.png differ diff --git a/src/assets/chars/54488446_p0.png b/src/assets/chars/54488446_p0.png new file mode 100644 index 000000000..ceb7cbb42 Binary files /dev/null and b/src/assets/chars/54488446_p0.png differ diff --git a/src/assets/chars/54510211_p0.png b/src/assets/chars/54510211_p0.png new file mode 100644 index 000000000..f4c113a1b Binary files /dev/null and b/src/assets/chars/54510211_p0.png differ diff --git a/src/assets/chars/54531064_p10.png b/src/assets/chars/54531064_p10.png new file mode 100644 index 000000000..ee9588697 Binary files /dev/null and b/src/assets/chars/54531064_p10.png differ diff --git a/src/assets/chars/54550636_p0.png b/src/assets/chars/54550636_p0.png new file mode 100644 index 000000000..5cd111d7e Binary files /dev/null and b/src/assets/chars/54550636_p0.png differ diff --git a/src/assets/chars/54570394_p0.png b/src/assets/chars/54570394_p0.png new file mode 100644 index 000000000..f8bccb59f Binary files /dev/null and b/src/assets/chars/54570394_p0.png differ diff --git a/src/assets/chars/54623124_p3.png b/src/assets/chars/54623124_p3.png new file mode 100644 index 000000000..9453944c1 Binary files /dev/null and b/src/assets/chars/54623124_p3.png differ diff --git a/src/assets/chars/54623630_p0.png b/src/assets/chars/54623630_p0.png new file mode 100644 index 000000000..489e752d4 Binary files /dev/null and b/src/assets/chars/54623630_p0.png differ diff --git a/src/assets/chars/54664361_p3.png b/src/assets/chars/54664361_p3.png new file mode 100644 index 000000000..8aecfbd6f Binary files /dev/null and b/src/assets/chars/54664361_p3.png differ diff --git a/src/assets/chars/54696691_p1.png b/src/assets/chars/54696691_p1.png new file mode 100644 index 000000000..6080fad51 Binary files /dev/null and b/src/assets/chars/54696691_p1.png differ diff --git a/src/assets/chars/54726174_p0.png b/src/assets/chars/54726174_p0.png new file mode 100644 index 000000000..e297c29bc Binary files /dev/null and b/src/assets/chars/54726174_p0.png differ diff --git a/src/assets/chars/54763493_p0.png b/src/assets/chars/54763493_p0.png new file mode 100644 index 000000000..364a9e807 Binary files /dev/null and b/src/assets/chars/54763493_p0.png differ diff --git a/src/assets/chars/54828646_p3.png b/src/assets/chars/54828646_p3.png new file mode 100644 index 000000000..3218927a7 Binary files /dev/null and b/src/assets/chars/54828646_p3.png differ diff --git a/src/assets/chars/54844833_p0.png b/src/assets/chars/54844833_p0.png new file mode 100644 index 000000000..d1aa30980 Binary files /dev/null and b/src/assets/chars/54844833_p0.png differ diff --git a/src/assets/chars/54904051_p3.png b/src/assets/chars/54904051_p3.png new file mode 100644 index 000000000..fe8c4b3f5 Binary files /dev/null and b/src/assets/chars/54904051_p3.png differ diff --git a/src/assets/chars/54920006_p0.png b/src/assets/chars/54920006_p0.png new file mode 100644 index 000000000..67a72ef10 Binary files /dev/null and b/src/assets/chars/54920006_p0.png differ diff --git a/src/assets/chars/54935904_p25.png b/src/assets/chars/54935904_p25.png new file mode 100644 index 000000000..e9a902435 Binary files /dev/null and b/src/assets/chars/54935904_p25.png differ diff --git a/src/assets/chars/54951994_p2.png b/src/assets/chars/54951994_p2.png new file mode 100644 index 000000000..abde415c1 Binary files /dev/null and b/src/assets/chars/54951994_p2.png differ diff --git a/src/assets/chars/54967865_p0.png b/src/assets/chars/54967865_p0.png new file mode 100644 index 000000000..e7242370d Binary files /dev/null and b/src/assets/chars/54967865_p0.png differ diff --git a/src/assets/chars/55217436_p0.png b/src/assets/chars/55217436_p0.png new file mode 100644 index 000000000..d54e8d93d Binary files /dev/null and b/src/assets/chars/55217436_p0.png differ diff --git a/src/assets/chars/55235571_p0.png b/src/assets/chars/55235571_p0.png new file mode 100644 index 000000000..28c59176e Binary files /dev/null and b/src/assets/chars/55235571_p0.png differ diff --git a/src/assets/chars/55306217_p0.png b/src/assets/chars/55306217_p0.png new file mode 100644 index 000000000..4854d052e Binary files /dev/null and b/src/assets/chars/55306217_p0.png differ diff --git a/src/assets/chars/55371904_p0.png b/src/assets/chars/55371904_p0.png new file mode 100644 index 000000000..348faacf7 Binary files /dev/null and b/src/assets/chars/55371904_p0.png differ diff --git a/src/assets/chars/55731651_p0.png b/src/assets/chars/55731651_p0.png new file mode 100644 index 000000000..9716590a3 Binary files /dev/null and b/src/assets/chars/55731651_p0.png differ diff --git a/src/assets/chars/55893431_p0.png b/src/assets/chars/55893431_p0.png new file mode 100644 index 000000000..15c700acb Binary files /dev/null and b/src/assets/chars/55893431_p0.png differ diff --git a/src/assets/chars/56429772_p7.png b/src/assets/chars/56429772_p7.png new file mode 100644 index 000000000..3c1a6e82c Binary files /dev/null and b/src/assets/chars/56429772_p7.png differ diff --git a/src/assets/chars/65082403_p8.png b/src/assets/chars/65082403_p8.png new file mode 100644 index 000000000..560bbb2f6 Binary files /dev/null and b/src/assets/chars/65082403_p8.png differ diff --git a/src/assets/chars/65187915_p0.png b/src/assets/chars/65187915_p0.png new file mode 100644 index 000000000..e3e3aa288 Binary files /dev/null and b/src/assets/chars/65187915_p0.png differ diff --git a/src/assets/chars/66690096_p0.png b/src/assets/chars/66690096_p0.png new file mode 100644 index 000000000..23ac1fd6c Binary files /dev/null and b/src/assets/chars/66690096_p0.png differ diff --git a/src/assets/chars/67106570_p0.png b/src/assets/chars/67106570_p0.png new file mode 100644 index 000000000..de12b6513 Binary files /dev/null and b/src/assets/chars/67106570_p0.png differ diff --git a/src/assets/chars/67142507_p0.png b/src/assets/chars/67142507_p0.png new file mode 100644 index 000000000..3d9a57385 Binary files /dev/null and b/src/assets/chars/67142507_p0.png differ diff --git a/src/assets/chars/67156260_p0.png b/src/assets/chars/67156260_p0.png new file mode 100644 index 000000000..8503ae3c8 Binary files /dev/null and b/src/assets/chars/67156260_p0.png differ diff --git a/src/assets/chars/67169867_p0.png b/src/assets/chars/67169867_p0.png new file mode 100644 index 000000000..9916faf9c Binary files /dev/null and b/src/assets/chars/67169867_p0.png differ diff --git a/src/assets/chars/67183544_p7.png b/src/assets/chars/67183544_p7.png new file mode 100644 index 000000000..267b74b82 Binary files /dev/null and b/src/assets/chars/67183544_p7.png differ diff --git a/src/assets/chars/67199755_p0.png b/src/assets/chars/67199755_p0.png new file mode 100644 index 000000000..c105667d8 Binary files /dev/null and b/src/assets/chars/67199755_p0.png differ diff --git a/src/assets/chars/67217736_p3.png b/src/assets/chars/67217736_p3.png new file mode 100644 index 000000000..bcabe6ed4 Binary files /dev/null and b/src/assets/chars/67217736_p3.png differ diff --git a/src/assets/chars/67236431_p7.png b/src/assets/chars/67236431_p7.png new file mode 100644 index 000000000..a99ed55ad Binary files /dev/null and b/src/assets/chars/67236431_p7.png differ diff --git a/src/assets/chars/6KyhLqE.png b/src/assets/chars/6KyhLqE.png deleted file mode 100644 index b669b27d2..000000000 Binary files a/src/assets/chars/6KyhLqE.png and /dev/null differ diff --git a/src/assets/chars/6jq6eh6.png b/src/assets/chars/6jq6eh6.png deleted file mode 100644 index c9050792b..000000000 Binary files a/src/assets/chars/6jq6eh6.png and /dev/null differ diff --git a/src/assets/chars/71407907_p0.png b/src/assets/chars/71407907_p0.png new file mode 100644 index 000000000..ee2710265 Binary files /dev/null and b/src/assets/chars/71407907_p0.png differ diff --git a/src/assets/chars/71694694_p0.png b/src/assets/chars/71694694_p0.png new file mode 100644 index 000000000..da5cb3795 Binary files /dev/null and b/src/assets/chars/71694694_p0.png differ diff --git a/src/assets/chars/8DLUAPf.png b/src/assets/chars/8DLUAPf.png deleted file mode 100644 index c9b2d40fa..000000000 Binary files a/src/assets/chars/8DLUAPf.png and /dev/null differ diff --git a/src/assets/chars/8TLXMST.png b/src/assets/chars/8TLXMST.png deleted file mode 100644 index a0a8d39ad..000000000 Binary files a/src/assets/chars/8TLXMST.png and /dev/null differ diff --git a/src/assets/chars/8UX7hKE.png b/src/assets/chars/8UX7hKE.png deleted file mode 100644 index 73ae2b470..000000000 Binary files a/src/assets/chars/8UX7hKE.png and /dev/null differ diff --git a/src/assets/chars/93955442_p0.png b/src/assets/chars/93955442_p0.png new file mode 100644 index 000000000..13ad482ff Binary files /dev/null and b/src/assets/chars/93955442_p0.png differ diff --git a/src/assets/chars/9Jje7ZQ.jpg b/src/assets/chars/9Jje7ZQ.jpg deleted file mode 100644 index b9a8691f6..000000000 Binary files a/src/assets/chars/9Jje7ZQ.jpg and /dev/null differ diff --git a/src/assets/chars/A7ZnuHo.png b/src/assets/chars/A7ZnuHo.png deleted file mode 100644 index 7516368de..000000000 Binary files a/src/assets/chars/A7ZnuHo.png and /dev/null differ diff --git a/src/assets/chars/ATTRSWU.png b/src/assets/chars/ATTRSWU.png deleted file mode 100644 index f7e321bb4..000000000 Binary files a/src/assets/chars/ATTRSWU.png and /dev/null differ diff --git a/src/assets/chars/BYot23O.png b/src/assets/chars/BYot23O.png deleted file mode 100644 index 555ea3164..000000000 Binary files a/src/assets/chars/BYot23O.png and /dev/null differ diff --git a/src/assets/chars/EJFQHQN.png b/src/assets/chars/EJFQHQN.png deleted file mode 100644 index 2426c56df..000000000 Binary files a/src/assets/chars/EJFQHQN.png and /dev/null differ diff --git a/src/assets/chars/EpHQbiY.png b/src/assets/chars/EpHQbiY.png deleted file mode 100644 index cbef2c579..000000000 Binary files a/src/assets/chars/EpHQbiY.png and /dev/null differ diff --git a/src/assets/chars/FfcmDgp.png b/src/assets/chars/FfcmDgp.png deleted file mode 100644 index 6c6d6e06c..000000000 Binary files a/src/assets/chars/FfcmDgp.png and /dev/null differ diff --git a/src/assets/chars/Fyn5yVx.png b/src/assets/chars/Fyn5yVx.png deleted file mode 100644 index 58a211997..000000000 Binary files a/src/assets/chars/Fyn5yVx.png and /dev/null differ diff --git a/src/assets/chars/HLT338X.png b/src/assets/chars/HLT338X.png deleted file mode 100644 index 7b2822e41..000000000 Binary files a/src/assets/chars/HLT338X.png and /dev/null differ diff --git a/src/assets/chars/IImsp7K.png b/src/assets/chars/IImsp7K.png deleted file mode 100644 index 7ede5875c..000000000 Binary files a/src/assets/chars/IImsp7K.png and /dev/null differ diff --git a/src/assets/chars/IOW8GdU.png b/src/assets/chars/IOW8GdU.png deleted file mode 100644 index f6da4f809..000000000 Binary files a/src/assets/chars/IOW8GdU.png and /dev/null differ diff --git a/src/assets/chars/ITUhsGj.png b/src/assets/chars/ITUhsGj.png deleted file mode 100644 index 96213fb86..000000000 Binary files a/src/assets/chars/ITUhsGj.png and /dev/null differ diff --git a/src/assets/chars/IZsGAMS.png b/src/assets/chars/IZsGAMS.png deleted file mode 100644 index 084d710d1..000000000 Binary files a/src/assets/chars/IZsGAMS.png and /dev/null differ diff --git a/src/assets/chars/KaBuRTW.png b/src/assets/chars/KaBuRTW.png deleted file mode 100644 index f53db3870..000000000 Binary files a/src/assets/chars/KaBuRTW.png and /dev/null differ diff --git a/src/assets/chars/KuPiR2k.png b/src/assets/chars/KuPiR2k.png deleted file mode 100644 index 1d3d1846c..000000000 Binary files a/src/assets/chars/KuPiR2k.png and /dev/null differ diff --git a/src/assets/chars/LenxXR4.png b/src/assets/chars/LenxXR4.png deleted file mode 100644 index 23adae28c..000000000 Binary files a/src/assets/chars/LenxXR4.png and /dev/null differ diff --git a/src/assets/chars/LoUqOuH.png b/src/assets/chars/LoUqOuH.png deleted file mode 100644 index 8acb8ea45..000000000 Binary files a/src/assets/chars/LoUqOuH.png and /dev/null differ diff --git a/src/assets/chars/MZXJQq5.png b/src/assets/chars/MZXJQq5.png deleted file mode 100644 index 2965a753f..000000000 Binary files a/src/assets/chars/MZXJQq5.png and /dev/null differ diff --git a/src/assets/chars/NWlZud3.png b/src/assets/chars/NWlZud3.png deleted file mode 100644 index e03f2d495..000000000 Binary files a/src/assets/chars/NWlZud3.png and /dev/null differ diff --git a/src/assets/chars/NsfLZjY.jpg b/src/assets/chars/NsfLZjY.jpg deleted file mode 100644 index 5568f912c..000000000 Binary files a/src/assets/chars/NsfLZjY.jpg and /dev/null differ diff --git a/src/assets/chars/OBqgP48.png b/src/assets/chars/OBqgP48.png deleted file mode 100644 index 6e5420ca0..000000000 Binary files a/src/assets/chars/OBqgP48.png and /dev/null differ diff --git a/src/assets/chars/OhaDcnc.png b/src/assets/chars/OhaDcnc.png deleted file mode 100644 index b37e3fb3a..000000000 Binary files a/src/assets/chars/OhaDcnc.png and /dev/null differ diff --git a/src/assets/chars/PcPqkdO.png b/src/assets/chars/PcPqkdO.png deleted file mode 100644 index e82019755..000000000 Binary files a/src/assets/chars/PcPqkdO.png and /dev/null differ diff --git a/src/assets/chars/SLLEccR.png b/src/assets/chars/SLLEccR.png deleted file mode 100644 index 7e33b4d54..000000000 Binary files a/src/assets/chars/SLLEccR.png and /dev/null differ diff --git a/src/assets/chars/TIOTtV9.png b/src/assets/chars/TIOTtV9.png deleted file mode 100644 index 3e13f1488..000000000 Binary files a/src/assets/chars/TIOTtV9.png and /dev/null differ diff --git a/src/assets/chars/Txu2P7S.png b/src/assets/chars/Txu2P7S.png deleted file mode 100644 index 407498a59..000000000 Binary files a/src/assets/chars/Txu2P7S.png and /dev/null differ diff --git a/src/assets/chars/VAMLiJD.png b/src/assets/chars/VAMLiJD.png deleted file mode 100644 index 4426df614..000000000 Binary files a/src/assets/chars/VAMLiJD.png and /dev/null differ diff --git a/src/assets/chars/VIf5gUK.png b/src/assets/chars/VIf5gUK.png deleted file mode 100644 index 4957b38e3..000000000 Binary files a/src/assets/chars/VIf5gUK.png and /dev/null differ diff --git a/src/assets/chars/VT9mTGb.png b/src/assets/chars/VT9mTGb.png deleted file mode 100644 index cd15a90fb..000000000 Binary files a/src/assets/chars/VT9mTGb.png and /dev/null differ diff --git a/src/assets/chars/VbqXiB6.png b/src/assets/chars/VbqXiB6.png deleted file mode 100644 index 730d75a9f..000000000 Binary files a/src/assets/chars/VbqXiB6.png and /dev/null differ diff --git a/src/assets/chars/VgJgaEf.png b/src/assets/chars/VgJgaEf.png deleted file mode 100644 index f4b70d129..000000000 Binary files a/src/assets/chars/VgJgaEf.png and /dev/null differ diff --git a/src/assets/chars/WEbfrcr.png b/src/assets/chars/WEbfrcr.png deleted file mode 100644 index 14ced86b6..000000000 Binary files a/src/assets/chars/WEbfrcr.png and /dev/null differ diff --git a/src/assets/chars/WMjyRLJ.png b/src/assets/chars/WMjyRLJ.png deleted file mode 100644 index 08fc21a0c..000000000 Binary files a/src/assets/chars/WMjyRLJ.png and /dev/null differ diff --git a/src/assets/chars/WTZ97LE.png b/src/assets/chars/WTZ97LE.png deleted file mode 100644 index dfcfaeff7..000000000 Binary files a/src/assets/chars/WTZ97LE.png and /dev/null differ diff --git a/src/assets/chars/Wyc7YFw.png b/src/assets/chars/Wyc7YFw.png deleted file mode 100644 index f39f72230..000000000 Binary files a/src/assets/chars/Wyc7YFw.png and /dev/null differ diff --git a/src/assets/chars/Y4maOc8.png b/src/assets/chars/Y4maOc8.png deleted file mode 100644 index 098187d55..000000000 Binary files a/src/assets/chars/Y4maOc8.png and /dev/null differ diff --git a/src/assets/chars/aDIf0pN.png b/src/assets/chars/aDIf0pN.png deleted file mode 100644 index e58af28f7..000000000 Binary files a/src/assets/chars/aDIf0pN.png and /dev/null differ diff --git a/src/assets/chars/bV0DaN7.png b/src/assets/chars/bV0DaN7.png deleted file mode 100644 index 3bc0c504e..000000000 Binary files a/src/assets/chars/bV0DaN7.png and /dev/null differ diff --git a/src/assets/chars/bYA9E16.png b/src/assets/chars/bYA9E16.png deleted file mode 100644 index 6dde1e798..000000000 Binary files a/src/assets/chars/bYA9E16.png and /dev/null differ diff --git a/src/assets/chars/c5DqpgX.png b/src/assets/chars/c5DqpgX.png deleted file mode 100644 index e246d3f06..000000000 Binary files a/src/assets/chars/c5DqpgX.png and /dev/null differ diff --git a/src/assets/chars/c9rnG3n.png b/src/assets/chars/c9rnG3n.png deleted file mode 100644 index aa8f63506..000000000 Binary files a/src/assets/chars/c9rnG3n.png and /dev/null differ diff --git a/src/assets/chars/cWjCo2j.png b/src/assets/chars/cWjCo2j.png deleted file mode 100644 index 5c637fd14..000000000 Binary files a/src/assets/chars/cWjCo2j.png and /dev/null differ diff --git a/src/assets/chars/ceo4DhK.png b/src/assets/chars/ceo4DhK.png deleted file mode 100644 index 93017d3e4..000000000 Binary files a/src/assets/chars/ceo4DhK.png and /dev/null differ diff --git a/src/assets/chars/dg9jLHv.png b/src/assets/chars/dg9jLHv.png deleted file mode 100644 index c0eb0757d..000000000 Binary files a/src/assets/chars/dg9jLHv.png and /dev/null differ diff --git a/src/assets/chars/dko67SJ.png b/src/assets/chars/dko67SJ.png deleted file mode 100644 index 02c38e17e..000000000 Binary files a/src/assets/chars/dko67SJ.png and /dev/null differ diff --git a/src/assets/chars/dup7Nt6.png b/src/assets/chars/dup7Nt6.png deleted file mode 100644 index be481016f..000000000 Binary files a/src/assets/chars/dup7Nt6.png and /dev/null differ diff --git a/src/assets/chars/fX2Kqik.png b/src/assets/chars/fX2Kqik.png deleted file mode 100644 index a6d4d5305..000000000 Binary files a/src/assets/chars/fX2Kqik.png and /dev/null differ diff --git a/src/assets/chars/fxCGmUk.png b/src/assets/chars/fxCGmUk.png deleted file mode 100644 index 7767fa38c..000000000 Binary files a/src/assets/chars/fxCGmUk.png and /dev/null differ diff --git a/src/assets/chars/gMpWdmA.png b/src/assets/chars/gMpWdmA.png deleted file mode 100644 index 475b10f24..000000000 Binary files a/src/assets/chars/gMpWdmA.png and /dev/null differ diff --git a/src/assets/chars/gPE95S7.png b/src/assets/chars/gPE95S7.png deleted file mode 100644 index 544327ab1..000000000 Binary files a/src/assets/chars/gPE95S7.png and /dev/null differ diff --git a/src/assets/chars/iIPftHn.png b/src/assets/chars/iIPftHn.png deleted file mode 100644 index f6b8e019f..000000000 Binary files a/src/assets/chars/iIPftHn.png and /dev/null differ diff --git a/src/assets/chars/ivUSwxp.png b/src/assets/chars/ivUSwxp.png deleted file mode 100644 index b1cb1aee8..000000000 Binary files a/src/assets/chars/ivUSwxp.png and /dev/null differ diff --git a/src/assets/chars/jEsJJo8.png b/src/assets/chars/jEsJJo8.png deleted file mode 100644 index 84eb7b990..000000000 Binary files a/src/assets/chars/jEsJJo8.png and /dev/null differ diff --git a/src/assets/chars/kJbv4dc.png b/src/assets/chars/kJbv4dc.png deleted file mode 100644 index 76f81d7b9..000000000 Binary files a/src/assets/chars/kJbv4dc.png and /dev/null differ diff --git a/src/assets/chars/kRSGtpq.png b/src/assets/chars/kRSGtpq.png deleted file mode 100644 index 039057315..000000000 Binary files a/src/assets/chars/kRSGtpq.png and /dev/null differ diff --git a/src/assets/chars/lkoAJod.png b/src/assets/chars/lkoAJod.png deleted file mode 100644 index 80d6e048b..000000000 Binary files a/src/assets/chars/lkoAJod.png and /dev/null differ diff --git a/src/assets/chars/m8wXE5U.png b/src/assets/chars/m8wXE5U.png deleted file mode 100644 index 707680f1d..000000000 Binary files a/src/assets/chars/m8wXE5U.png and /dev/null differ diff --git a/src/assets/chars/mc7ICW6.png b/src/assets/chars/mc7ICW6.png deleted file mode 100644 index b8e941a95..000000000 Binary files a/src/assets/chars/mc7ICW6.png and /dev/null differ diff --git a/src/assets/chars/nDM5aB6.png b/src/assets/chars/nDM5aB6.png deleted file mode 100644 index 4a1f7ddf1..000000000 Binary files a/src/assets/chars/nDM5aB6.png and /dev/null differ diff --git a/src/assets/chars/nQ78Lz7.png b/src/assets/chars/nQ78Lz7.png deleted file mode 100644 index 9db9fdc1d..000000000 Binary files a/src/assets/chars/nQ78Lz7.png and /dev/null differ diff --git a/src/assets/chars/ogONuLZ.png b/src/assets/chars/ogONuLZ.png deleted file mode 100644 index e98237a9d..000000000 Binary files a/src/assets/chars/ogONuLZ.png and /dev/null differ diff --git a/src/assets/chars/ohmetZh.png b/src/assets/chars/ohmetZh.png deleted file mode 100644 index bc0f00572..000000000 Binary files a/src/assets/chars/ohmetZh.png and /dev/null differ diff --git a/src/assets/chars/p529JgT.png b/src/assets/chars/p529JgT.png deleted file mode 100644 index 340cea60e..000000000 Binary files a/src/assets/chars/p529JgT.png and /dev/null differ diff --git a/src/assets/chars/pLdMjQ3.png b/src/assets/chars/pLdMjQ3.png deleted file mode 100644 index 3333a2ced..000000000 Binary files a/src/assets/chars/pLdMjQ3.png and /dev/null differ diff --git a/src/assets/chars/ptGp0x4.png b/src/assets/chars/ptGp0x4.png deleted file mode 100644 index 1360fc5f1..000000000 Binary files a/src/assets/chars/ptGp0x4.png and /dev/null differ diff --git a/src/assets/chars/qGMjnYk.png b/src/assets/chars/qGMjnYk.png deleted file mode 100644 index 6fbf8059e..000000000 Binary files a/src/assets/chars/qGMjnYk.png and /dev/null differ diff --git a/src/assets/chars/qdveFSy.png b/src/assets/chars/qdveFSy.png deleted file mode 100644 index 72861e716..000000000 Binary files a/src/assets/chars/qdveFSy.png and /dev/null differ diff --git a/src/assets/chars/qsceD4I.png b/src/assets/chars/qsceD4I.png deleted file mode 100644 index 46cc22a78..000000000 Binary files a/src/assets/chars/qsceD4I.png and /dev/null differ diff --git a/src/assets/chars/r5eWREh.png b/src/assets/chars/r5eWREh.png deleted file mode 100644 index 052c5b82e..000000000 Binary files a/src/assets/chars/r5eWREh.png and /dev/null differ diff --git a/src/assets/chars/r6w7TX1.png b/src/assets/chars/r6w7TX1.png deleted file mode 100644 index b05344bf4..000000000 Binary files a/src/assets/chars/r6w7TX1.png and /dev/null differ diff --git a/src/assets/chars/rBvKMk5.png b/src/assets/chars/rBvKMk5.png deleted file mode 100644 index de5f6ae55..000000000 Binary files a/src/assets/chars/rBvKMk5.png and /dev/null differ diff --git a/src/assets/chars/rGS7dyn.png b/src/assets/chars/rGS7dyn.png deleted file mode 100644 index fcd91e80b..000000000 Binary files a/src/assets/chars/rGS7dyn.png and /dev/null differ diff --git a/src/assets/chars/rshnJPV.png b/src/assets/chars/rshnJPV.png deleted file mode 100644 index c726ae858..000000000 Binary files a/src/assets/chars/rshnJPV.png and /dev/null differ diff --git a/src/assets/chars/sLiqEBA.png b/src/assets/chars/sLiqEBA.png deleted file mode 100644 index 248a32d5c..000000000 Binary files a/src/assets/chars/sLiqEBA.png and /dev/null differ diff --git a/src/assets/chars/sNw61ap.png b/src/assets/chars/sNw61ap.png deleted file mode 100644 index d7820637a..000000000 Binary files a/src/assets/chars/sNw61ap.png and /dev/null differ diff --git a/src/assets/chars/sgZPf11.png b/src/assets/chars/sgZPf11.png deleted file mode 100644 index 0389d6a1b..000000000 Binary files a/src/assets/chars/sgZPf11.png and /dev/null differ diff --git a/src/assets/chars/sqgJ2St.png b/src/assets/chars/sqgJ2St.png deleted file mode 100644 index 1ee74388f..000000000 Binary files a/src/assets/chars/sqgJ2St.png and /dev/null differ diff --git a/src/assets/chars/tDO653L.png b/src/assets/chars/tDO653L.png deleted file mode 100644 index 7c33364a5..000000000 Binary files a/src/assets/chars/tDO653L.png and /dev/null differ diff --git a/src/assets/chars/tJnkSzK.png b/src/assets/chars/tJnkSzK.png deleted file mode 100644 index d0b8a82fe..000000000 Binary files a/src/assets/chars/tJnkSzK.png and /dev/null differ diff --git a/src/assets/chars/tZFBycy.png b/src/assets/chars/tZFBycy.png deleted file mode 100644 index c718b8b99..000000000 Binary files a/src/assets/chars/tZFBycy.png and /dev/null differ diff --git a/src/assets/chars/tZLYivt.png b/src/assets/chars/tZLYivt.png deleted file mode 100644 index 183acf8bc..000000000 Binary files a/src/assets/chars/tZLYivt.png and /dev/null differ diff --git a/src/assets/chars/uEBxsEX.png b/src/assets/chars/uEBxsEX.png deleted file mode 100644 index 612d88547..000000000 Binary files a/src/assets/chars/uEBxsEX.png and /dev/null differ diff --git a/src/assets/chars/uQjbw1W.png b/src/assets/chars/uQjbw1W.png deleted file mode 100644 index f5f47a9da..000000000 Binary files a/src/assets/chars/uQjbw1W.png and /dev/null differ diff --git a/src/assets/chars/vBKdDm4.png b/src/assets/chars/vBKdDm4.png deleted file mode 100644 index f213ea2a5..000000000 Binary files a/src/assets/chars/vBKdDm4.png and /dev/null differ diff --git a/src/assets/chars/vWNeMaH.png b/src/assets/chars/vWNeMaH.png deleted file mode 100644 index 50a3a3821..000000000 Binary files a/src/assets/chars/vWNeMaH.png and /dev/null differ diff --git a/src/assets/chars/wVCcens.png b/src/assets/chars/wVCcens.png deleted file mode 100644 index 14f0f38a2..000000000 Binary files a/src/assets/chars/wVCcens.png and /dev/null differ diff --git a/src/assets/chars/xQOsFlZ.png b/src/assets/chars/xQOsFlZ.png deleted file mode 100644 index c53fcada7..000000000 Binary files a/src/assets/chars/xQOsFlZ.png and /dev/null differ diff --git a/src/assets/chars/xgAlECj.png b/src/assets/chars/xgAlECj.png deleted file mode 100644 index ea46e7acb..000000000 Binary files a/src/assets/chars/xgAlECj.png and /dev/null differ diff --git a/src/assets/chars/y0UXwFO.png b/src/assets/chars/y0UXwFO.png deleted file mode 100644 index 3794125cb..000000000 Binary files a/src/assets/chars/y0UXwFO.png and /dev/null differ diff --git a/src/assets/chars/yJaD5ZV.png b/src/assets/chars/yJaD5ZV.png deleted file mode 100644 index 4025e709b..000000000 Binary files a/src/assets/chars/yJaD5ZV.png and /dev/null differ diff --git a/src/assets/chars/yqNfNje.png b/src/assets/chars/yqNfNje.png deleted file mode 100644 index f08570fa2..000000000 Binary files a/src/assets/chars/yqNfNje.png and /dev/null differ diff --git a/src/assets/chars/ytnL1xd.png b/src/assets/chars/ytnL1xd.png deleted file mode 100644 index 09609c9cd..000000000 Binary files a/src/assets/chars/ytnL1xd.png and /dev/null differ diff --git a/src/assets/chars/zBl2zlv.png b/src/assets/chars/zBl2zlv.png deleted file mode 100644 index c90ce5787..000000000 Binary files a/src/assets/chars/zBl2zlv.png and /dev/null differ diff --git a/src/assets/dark-mode.svg b/src/assets/dark-mode.svg new file mode 100644 index 000000000..3d9e1731e --- /dev/null +++ b/src/assets/dark-mode.svg @@ -0,0 +1,12 @@ +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> + +<!-- Uploaded to: SVG Repo, www.svgrepo.com, Transformed by: SVG Repo Mixer Tools --> +<svg version="1.1" id="img" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="-4.72 -4.72 56.61 56.61" xml:space="preserve"> + +<g id="SVGRepo_bgCarrier" stroke-width="0"/> + +<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/> + +<g id="SVGRepo_iconCarrier"> <path style="fill:currentColor;" d="M46.369,28.793c-11.852,5.935-26.271,1.138-32.206-10.714c-2.748-5.488-3.191-11.524-1.702-17.016 C1.197,7.236-3.255,21.263,2.544,32.844C8.479,44.696,22.898,49.493,34.75,43.558c6.364-3.187,10.69-8.821,12.417-15.19 C46.903,28.513,46.64,28.658,46.369,28.793z"/> </g> + +</svg> \ No newline at end of file diff --git a/src/assets/defaultL.jpg b/src/assets/defaultL.jpg deleted file mode 100644 index 98eef506a..000000000 Binary files a/src/assets/defaultL.jpg and /dev/null differ diff --git a/src/assets/defaultL.png b/src/assets/defaultL.png new file mode 100644 index 000000000..420d4222c Binary files /dev/null and b/src/assets/defaultL.png differ diff --git a/src/assets/defaultR.jpg b/src/assets/defaultR.jpg deleted file mode 100644 index ba05b1ae8..000000000 Binary files a/src/assets/defaultR.jpg and /dev/null differ diff --git a/src/assets/defaultR.png b/src/assets/defaultR.png new file mode 100644 index 000000000..c0ac455b9 Binary files /dev/null and b/src/assets/defaultR.png differ diff --git a/src/assets/light-mode.svg b/src/assets/light-mode.svg new file mode 100644 index 000000000..44259f6a3 --- /dev/null +++ b/src/assets/light-mode.svg @@ -0,0 +1,12 @@ +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> + +<!-- Uploaded to: SVG Repo, www.svgrepo.com, Transformed by: SVG Repo Mixer Tools --> +<svg version="1.1" id="img" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="-6 -6 72.00 72.00" xml:space="preserve"> + +<g id="SVGRepo_bgCarrier" stroke-width="0"/> + +<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/> + +<g id="SVGRepo_iconCarrier"> <g> <path style="fill:currentColor;" d="M30,0c-0.552,0-1,0.448-1,1v6c0,0.552,0.448,1,1,1s1-0.448,1-1V1C31,0.448,30.552,0,30,0z"/> <path style="fill:currentColor;" d="M30,52c-0.552,0-1,0.448-1,1v6c0,0.552,0.448,1,1,1s1-0.448,1-1v-6C31,52.448,30.552,52,30,52z"/> <path style="fill:currentColor;" d="M59,29h-6c-0.552,0-1,0.448-1,1s0.448,1,1,1h6c0.552,0,1-0.448,1-1S59.552,29,59,29z"/> <path style="fill:currentColor;" d="M8,30c0-0.552-0.448-1-1-1H1c-0.552,0-1,0.448-1,1s0.448,1,1,1h6C7.552,31,8,30.552,8,30z"/> <path style="fill:currentColor;" d="M46.264,14.736c0.256,0,0.512-0.098,0.707-0.293l5.736-5.736c0.391-0.391,0.391-1.023,0-1.414 s-1.023-0.391-1.414,0l-5.736,5.736c-0.391,0.391-0.391,1.023,0,1.414C45.752,14.639,46.008,14.736,46.264,14.736z"/> <path style="fill:currentColor;" d="M13.029,45.557l-5.736,5.736c-0.391,0.391-0.391,1.023,0,1.414C7.488,52.902,7.744,53,8,53 s0.512-0.098,0.707-0.293l5.736-5.736c0.391-0.391,0.391-1.023,0-1.414S13.42,45.166,13.029,45.557z"/> <path style="fill:currentColor;" d="M46.971,45.557c-0.391-0.391-1.023-0.391-1.414,0s-0.391,1.023,0,1.414l5.736,5.736 C51.488,52.902,51.744,53,52,53s0.512-0.098,0.707-0.293c0.391-0.391,0.391-1.023,0-1.414L46.971,45.557z"/> <path style="fill:currentColor;" d="M8.707,7.293c-0.391-0.391-1.023-0.391-1.414,0s-0.391,1.023,0,1.414l5.736,5.736 c0.195,0.195,0.451,0.293,0.707,0.293s0.512-0.098,0.707-0.293c0.391-0.391,0.391-1.023,0-1.414L8.707,7.293z"/> <path style="fill:currentColor;" d="M50.251,21.404c0.162,0.381,0.532,0.61,0.921,0.61c0.13,0,0.263-0.026,0.39-0.08l2.762-1.172 c0.508-0.216,0.746-0.803,0.53-1.311s-0.804-0.746-1.311-0.53l-2.762,1.172C50.272,20.309,50.035,20.896,50.251,21.404z"/> <path style="fill:currentColor;" d="M9.749,38.596c-0.216-0.508-0.803-0.746-1.311-0.53l-2.762,1.172 c-0.508,0.216-0.746,0.803-0.53,1.311c0.162,0.381,0.532,0.61,0.921,0.61c0.13,0,0.263-0.026,0.39-0.08l2.762-1.172 C9.728,39.691,9.965,39.104,9.749,38.596z"/> <path style="fill:currentColor;" d="M54.481,38.813L51.7,37.688c-0.511-0.207-1.095,0.041-1.302,0.553 c-0.207,0.512,0.041,1.095,0.553,1.302l2.782,1.124c0.123,0.049,0.25,0.073,0.374,0.073c0.396,0,0.771-0.236,0.928-0.626 C55.241,39.603,54.994,39.02,54.481,38.813z"/> <path style="fill:currentColor;" d="M5.519,21.188L8.3,22.312c0.123,0.049,0.25,0.073,0.374,0.073c0.396,0,0.771-0.236,0.928-0.626 c0.207-0.512-0.041-1.095-0.553-1.302l-2.782-1.124c-0.513-0.207-1.095,0.04-1.302,0.553C4.759,20.397,5.006,20.98,5.519,21.188z"/> <path style="fill:currentColor;" d="M39.907,50.781c-0.216-0.508-0.803-0.745-1.311-0.53c-0.508,0.216-0.746,0.803-0.53,1.311 l1.172,2.762c0.162,0.381,0.532,0.61,0.921,0.61c0.13,0,0.263-0.026,0.39-0.08c0.508-0.216,0.746-0.803,0.53-1.311L39.907,50.781z"/> <path style="fill:currentColor;" d="M21.014,9.829c0.13,0,0.263-0.026,0.39-0.08c0.508-0.216,0.746-0.803,0.53-1.311l-1.172-2.762 c-0.215-0.509-0.802-0.747-1.311-0.53c-0.508,0.216-0.746,0.803-0.53,1.311l1.172,2.762C20.254,9.6,20.625,9.829,21.014,9.829z"/> <path style="fill:currentColor;" d="M21.759,50.398c-0.511-0.205-1.095,0.04-1.302,0.553l-1.124,2.782 c-0.207,0.512,0.041,1.095,0.553,1.302c0.123,0.049,0.25,0.073,0.374,0.073c0.396,0,0.771-0.236,0.928-0.626l1.124-2.782 C22.519,51.188,22.271,50.605,21.759,50.398z"/> <path style="fill:currentColor;" d="M38.615,9.675c0.396,0,0.771-0.236,0.928-0.626l1.124-2.782c0.207-0.512-0.041-1.095-0.553-1.302 c-0.511-0.207-1.095,0.041-1.302,0.553L37.688,8.3c-0.207,0.512,0.041,1.095,0.553,1.302C38.364,9.651,38.491,9.675,38.615,9.675z"/> </g> <circle style="fill:currentColor;" cx="30" cy="30" r="20"/> <circle style="fill:currentColor;" cx="30" cy="30" r="15"/> </g> + +</svg> \ No newline at end of file diff --git a/src/css/styles.css b/src/css/styles.css index 00999696c..1684d5d23 100644 --- a/src/css/styles.css +++ b/src/css/styles.css @@ -1,6 +1,36 @@ body { + --main-color: black; + --bg-color: white; + --border-color: black; + --progress-bar-color: lightgreen; + --loading-pulse-color: #333; + --link-color: #990000; + --link-hover-color: #FF6600; + --link-visited-color: #6600FF; + + --image-bg-color: transparent; + font-family: Arial, Helvetica, sans-serif; font-size: 16px; + background-color: var(--bg-color); + color: var(--main-color); + color-scheme: light; +} + +body.darkmode { + --main-color: #ddd; + --bg-color: #111; + --border-color: #ddd; + --progress-bar-color: forestgreen; + --loading-pulse-color: #ccc; + --link-color: #DD44CC; + --link-hover-color: #FF6600; + --link-visited-color: #66CCFF; + color-scheme: dark; +} + +.hidden { + display: none !important; } .container { @@ -13,13 +43,12 @@ body { .progress { margin: 1em auto; width: 500px; - display: none; } .progressbar { position: relative; width: 492px; - border: 1px solid black; + border: 1px solid var(--border-color); padding: 3px; margin: 2px 0px; } @@ -34,50 +63,52 @@ body { .progressfill { height: 20px; - background-color: lightgreen; + background-color: var(--progress-bar-color); width: 0%; } .sorter { margin: 0px auto; display: grid; - grid-template-columns: 120px 1fr 120px; + grid-template-columns: max-content 170px max-content; grid-gap: 5px; - width: 420px; } .button { - border: 1px solid black; + border: 1px solid var(--border-color); text-align: center; - padding: 10%; + padding: 0.5em; grid-column: 2 / 3; cursor: pointer; } +.starting.button, .sorting.button, .finished.button { + display: flex; + align-items: center; + justify-content: center; +} + .starting.start.button { grid-row: span 6; } .starting.load.button { grid-row: span 3; - display: none; } .sorting.button, .finished.button { grid-row: span 2; - display: none; } .loading.button { grid-row: span 6; - display: none; } .loading.button > div { width: 25px; height: 25px; margin: 50px auto; - background-color: #333; + background-color: var(--loading-pulse-color); border-radius: 100%; -webkit-animation: sk-scaleout 1.0s infinite ease-in-out; @@ -111,22 +142,24 @@ body { } .sorter > .image { - width: 120px; - height: 180px; - margin: auto; + max-width: 180px; + max-height: 180px; + align-self: center; grid-row: 1 / 7; cursor: pointer; + background-color: var(--image-bg-color); } .sorter > .text { - width: 120px; - height: 60px; - display: none; + min-width: 100%; + width: min-content; + min-height: 60px; + overflow-wrap: anywhere; } .sorter > .text > p { - margin: 0.5em 5px 0px; - width: calc(100%-10px); + margin: 0.5em 5px; + width: calc(100% - 10px); text-align: center; font-size: 0.8em; line-height: 1.5em; @@ -134,12 +167,14 @@ body { .sorter > .left { grid-column: 1 / 2; - border: 1px solid #000000; + border: 1px solid var(--border-color); + box-sizing: border-box; } .sorter > .right { grid-column: 3 / 4; - border: 1px solid #000000; + border: 1px solid var(--border-color); + box-sizing: border-box; } .options { @@ -160,7 +195,7 @@ label { } label:hover { - color: #990000; + color: var(--link-color); } .options > .large.option, .options > hr { @@ -172,7 +207,6 @@ label:hover { .image.selector { margin-top: 0.5em; width: 500px; - display: none; text-align: center; font-size: 0.75em; } @@ -180,7 +214,6 @@ label:hover { .time.taken { margin-top: 0.5em; width: 500px; - display: none; text-align: center; font-size: 0.75em; } @@ -213,7 +246,7 @@ label:hover { display: grid; width: 211px; grid-template-columns: repeat(2, 1fr); - border: 1px solid #000; + border: 1px solid var(--border-color); margin-right: 5px; } @@ -223,16 +256,17 @@ label:hover { .result.image img { height: 160px; + background-color: var(--image-bg-color); } .result.spacer { height: 1px; - background-color: #000; + background-color: var(--main-color); } .result.head { - background-color: #000; - color: #FFF; + background-color: var(--main-color); + color: var(--bg-color); } .result > .left { @@ -257,13 +291,12 @@ label:hover { width: 160px; padding: 1px 0em 1px 0em; grid-column: 2 / 3; - border-left: 1px solid #000; + border-left: 1px solid var(--border-color); text-align: center; } .info { margin: 2em auto 3em; - display: block; text-align: center; font-size: 0.6875em; width: 80%; @@ -271,16 +304,67 @@ label:hover { } a { - color: #990000; + color: var(--link-color); font-weight: bold; text-decoration: none; cursor: pointer; } a:hover { - color: #FF6600; + color: var(--link-hover-color); } a:visited { - color: #6600FF; + color: var(--link-visited-color); +} + +.changelog { + margin: auto; +} + +.changelog td, .changelog th { + padding: 8px 5px; + vertical-align: middle; +} + +.changelog td[rowspan], .changelog td[rowspan] ~ td { + border-top: 1px solid var(--border-color); +} + +.changelog td[rowspan] { + text-align: right; +} + +.colorchange { + position: absolute; + top: 1em; + right: 1em; + width: 2em; + height: 2em; +} + +.colorchange .toggle { + width: 100%; + height: 100%; + + padding: 0; + border: 0; + background-color: transparent; + + cursor: pointer; + color: inherit; +} + +.colorchange .toggle:hover { + color: var(--link-color); +} + +.colorchange .toggle svg { + width: 100%; + height: 100%; +} + +body:not(.darkmode) .colorchange .toggle svg.light, +.darkmode .colorchange .toggle svg.dark { + display: none; } \ No newline at end of file diff --git a/src/js/data.js b/src/js/data.js index a7e2aa5d2..80c593be8 100644 --- a/src/js/data.js +++ b/src/js/data.js @@ -1,12 +1,13 @@ /** * @typedef {{name: string, key: string, tooltip?: string, checked?: boolean, sub?: {name: string, tooltip?: string, checked?: string}[]}[]} Options * @typedef {{name: string, img: string, opts: Object<string, boolean|number[]}[]} CharData + * @typedef {string[]} Changelog */ /** * Data set. Characters will be removed from the sorting array based on selected options, working down the array. * - * @type {Object.<string, {options: Options, characterData: CharData}>} + * @type {Object.<string, {options: Options, characterData: CharData, changelog?: Changelog}>} */ const dataSet = {}; @@ -20,4 +21,4 @@ let dataSetVersion = ''; /** * Image root, will be appended to the start of every image URL. */ -const imageRoot = 'https://i.imgur.com/'; +const imageRoot = 'https://execfera.github.io/charasort/src/assets/chars/'; diff --git a/src/js/data/2017-05-01.js b/src/js/data/2017-05-01.js index e103aa066..0f37b54f6 100644 --- a/src/js/data/2017-05-01.js +++ b/src/js/data/2017-05-01.js @@ -1,806 +1,808 @@ -dataSetVersion = "2017-05-01"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "Soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ - { name: "Stage 1", key: "st1" }, - { name: "Stage 2", key: "st2" }, - { name: "Stage 3", key: "st3" }, - { name: "Stage 4", key: "st4" }, - { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, - { name: "Stage 6/Final", key: "st6" }, - { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: ["book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "SWR", "SA", "UFO", "Soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK"], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: ["book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "SWR", "SA", "UFO", "Soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK"], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { series: ["book", "EoSD", "StB", "HM"], stage: ["st1"] } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { series: ["book", "EoSD"], stage: ["st2", "ex"] } - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "Soku", "GFW", "HM", "DDC", "ISC" - ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { series: ["book", "EoSD", "IaMP", "StB", "Soku"], stage: ["st3"] } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { series: ["book", "EoSD"], stage: ["st4"] } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "MoF", "Soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "Soku", "HM", "DDC", "ISC" - ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "MoF", "Soku", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { series: ["book", "EoSD", "StB"], stage: ["ex"] } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { series: ["book", "PCB", "StB", "HM"], stage: ["st1"] } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "MoF", "Soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4", "ex"] } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "Soku", "TD", "HM", "ISC" - ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "TD", "HM", "ISC" - ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "MoF", "Soku", "DS", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { series: ["book", "IN", "StB", "HM"], stage: ["st1"] } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { series: ["book", "IN", "PoFV", "StB", "HM"], stage: ["st2"] } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { series: ["book", "IN", "StB", "HM", "ISC"], stage: ["st3", "ex"] } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { series: ["book", "IN", "PoFV", "StB", "HM"], stage: ["st5"] } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "Soku", "HM", "LoLK"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { series: ["book", "IN", "StB", "HM"], stage: ["st6"] } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { series: ["book", "IN", "StB", "HM"], stage: ["st6"] } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { series: ["book", "IN", "StB", "HM", "ISC", "ULiL"], stage: ["ex"] } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: ["book", "PoFV", "StB", "MoF", "SWR", "Soku", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st4"] } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st5"] } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "MoF", "Soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st6"] } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { series: ["SWR", "DS", "HM"], stage: ["st1"] } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { series: ["SWR", "DS", "HM"], stage: ["st1"] } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { series: ["SWR", "DS", "HM"], stage: ["st2"] } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { series: ["SWR", "DS", "HM", "ISC", "ULiL"], stage: ["st3"] } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { series: ["SWR", "DS", "ISC"], stage: ["st4"] } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["SWR", "SA", "UFO", "Soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { series: ["SWR", "Soku", "DS", "HM", "ISC"], stage: ["st6", "ex"] } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { series: ["SWR", "SA", "Soku", "DS", "HM", "ISC"], stage: ["ex"] } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { series: ["MoF", "Soku", "DS", "HM"], stage: ["st5"] } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { series: ["MoF", "Soku", "DS", "HM", "ISC"], stage: ["st6"] } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { series: ["SA", "DS"], stage: ["st1"] } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { series: ["SA", "DS", "HM"], stage: ["st1"] } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { series: ["SA", "DS", "HM"], stage: ["st2"] } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { series: ["SA", "DS", "HM"], stage: ["st3"] } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { series: ["SA", "DS", "HM"], stage: ["st4"] } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { series: ["SA", "DS", "HM"], stage: ["st4", "st5", "st6"] } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { series: ["SA", "Soku", "DS", "HM"], stage: ["st6"] } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { series: ["SA", "DS", "HM", "ULiL"], stage: ["ex"] } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { series: ["UFO", "DS", "HM"], stage: ["st1", "st5"] } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { series: ["UFO", "DS", "HM"], stage: ["st2", "ex"] } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { series: ["UFO", "DS", "HM", "ULiL"], stage: ["st3"] } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { series: ["UFO", "DS", "HM"], stage: ["st4"] } - }, - { - name: "Toramaru Shou", - img: "8bMDDAo.png", - opts: { series: ["UFO", "DS", "HM"], stage: ["st5"] } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { series: ["UFO", "DS", "HM", "ISC", "ULiL"], stage: ["st6"] } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { series: ["UFO", "DS", "TD", "HM"], stage: ["st4", "st6", "ex"] } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { series: ["DS", "HM", "ISC"], stage: ["ex"] } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { series: ["TD", "HM", "ISC"], stage: ["st2"] } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { series: ["TD", "HM", "ISC"], stage: ["st3", "st4"] } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { series: ["TD", "HM", "ISC"], stage: ["st4"] } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { series: ["TD", "HM"], stage: ["st5"] } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["st5"] } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["st6"] } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["ex"] } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { series: ["book", "HM", "ULiL"], stage: ["st6"] } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { series: ["DDC", "ISC"], stage: ["st1"] } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { series: ["DDC", "ISC"], stage: ["st2"] } - }, - { - name: "Imaizumi Kagerou", - img: "b5UMjD8.png", - opts: { series: ["DDC", "ISC"], stage: ["st3"] } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { series: ["DDC", "ISC"], stage: ["st4", "ex"] } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { series: ["DDC", "ISC"], stage: ["st4", "ex"] } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { series: ["DDC", "ISC"], stage: ["st5", "st6"] } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { series: ["DDC", "ISC", "ULiL"], stage: ["st6"] } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { series: ["DDC", "ISC"], stage: ["ex"] } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { series: ["ULiL"], stage: ["st6"] } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { series: ["LoLK"], stage: ["st1"] } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { series: ["LoLK"], stage: ["st2"] } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { series: ["LoLK"], stage: ["st3", "ex"] } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { series: ["LoLK"], stage: ["st4"] } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { series: ["LoLK"], stage: ["st5"] } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { series: ["LoLK"], stage: ["st6", "ex"] } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { series: ["LoLK"], stage: ["ex"] } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { series: ["book"], stage: [] } - }, - { name: "Tokiko", img: "Y4maOc8.png", opts: { series: ["book"], stage: [] } }, - { - name: "Rei'sen (Manga)", - img: "cWjCo2j.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { series: ["book", "ULiL"], stage: ["st5"] } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { series: ["book"], stage: [] } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { series: ["HRtP"], stage: ["st1"] } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { series: ["HRtP"], stage: ["st5"] } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { series: ["HRtP"], stage: ["st5"] } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { series: ["HRtP"], stage: ["st6"] } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { series: ["HRtP"], stage: ["st6"] } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { series: ["SoEW"], stage: ["st1", "ex"] } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { series: ["SoEW"], stage: ["st2"] } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { series: ["SoEW", "PoDD", "LLS", "MS"], stage: ["st4"], pc98: true } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { series: ["PoDD"], stage: [] } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { series: ["PoDD"], stage: [] } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { series: ["PoDD"], stage: [] } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { series: ["PoDD"], stage: [] } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { series: ["PoDD"], stage: ["st5"] } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { series: ["PoDD"], stage: ["st6"] } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { series: ["PoDD"], stage: [] } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { series: ["LLS"], stage: ["st1"] } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { series: ["LLS"], stage: ["st2"] } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { series: ["LLS"], stage: ["st3"] } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { series: ["LLS", "MS"], stage: ["st5", "st6"], pc98: true } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { series: ["LLS"], stage: ["ex"] } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { series: ["LLS"], stage: ["ex"] } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { series: ["MS"], stage: ["st1"] } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { series: ["MS"], stage: ["st2", "st4"] } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { series: ["MS"], stage: ["st3", "ex"], pc98: true } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { series: ["MS"], stage: ["st4"] } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { series: ["MS"], stage: ["st4"] } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { series: ["MS"], stage: ["st5"] } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { series: ["MS"], stage: ["st6"] } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { series: ["PoDD"], stage: [], notgirl: true } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { series: ["UFO", "DS", "HM", "ULiL"], stage: ["st3"], notgirl: true } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { series: ["SoEW", "PoDD", "LLS", "MS"], stage: [], notgirl: true } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { series: ["HRtP"], stage: ["st1"], notgirl: true } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { series: ["HRtP"], stage: ["st3"], notgirl: true } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { series: ["SoEW"], stage: ["ex"], notgirl: true } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { series: ["Soku"], stage: ["st6"], notgirl: true } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { series: ["book", "HM"], stage: [], notgirl: true } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { series: ["book"], stage: [], notgirl: true } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { series: ["Soku"], stage: [], notgirl: true } - } -]; +dataSetVersion = "2017-05-01"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Initial version"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "Soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ + { name: "Stage 1", key: "st1" }, + { name: "Stage 2", key: "st2" }, + { name: "Stage 3", key: "st3" }, + { name: "Stage 4", key: "st4" }, + { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, + { name: "Stage 6/Final", key: "st6" }, + { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: ["book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "SWR", "SA", "UFO", "Soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK"], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: ["book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "SWR", "SA", "UFO", "Soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK"], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { series: ["book", "EoSD", "StB", "HM"], stage: ["st1"] } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { series: ["book", "EoSD"], stage: ["st2", "ex"] } + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "Soku", "GFW", "HM", "DDC", "ISC" + ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { series: ["book", "EoSD", "IaMP", "StB", "Soku"], stage: ["st3"] } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { series: ["book", "EoSD"], stage: ["st4"] } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "MoF", "Soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "Soku", "HM", "DDC", "ISC" + ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "MoF", "Soku", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { series: ["book", "EoSD", "StB"], stage: ["ex"] } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { series: ["book", "PCB", "StB", "HM"], stage: ["st1"] } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "MoF", "Soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4", "ex"] } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { series: ["book", "PCB", "PoFV", "HM"], stage: ["st4"] } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "MoF", "Soku", "TD", "HM", "ISC" + ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "TD", "HM", "ISC" + ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "MoF", "Soku", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "MoF", "Soku", "DS", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { series: ["book", "IN", "StB", "HM"], stage: ["st1"] } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { series: ["book", "IN", "PoFV", "StB", "HM"], stage: ["st2"] } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { series: ["book", "IN", "StB", "HM", "ISC"], stage: ["st3", "ex"] } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { series: ["book", "IN", "PoFV", "StB", "HM"], stage: ["st5"] } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "Soku", "HM", "LoLK"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { series: ["book", "IN", "StB", "HM"], stage: ["st6"] } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { series: ["book", "IN", "StB", "HM"], stage: ["st6"] } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { series: ["book", "IN", "StB", "HM", "ISC", "ULiL"], stage: ["ex"] } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: ["book", "PoFV", "StB", "MoF", "SWR", "Soku", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st4"] } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st5"] } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "MoF", "Soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { series: ["book", "PoFV", "StB", "HM"], stage: ["st6"] } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { series: ["SWR", "DS", "HM"], stage: ["st1"] } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { series: ["SWR", "DS", "HM"], stage: ["st1"] } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { series: ["SWR", "DS", "HM"], stage: ["st2"] } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { series: ["SWR", "DS", "HM", "ISC", "ULiL"], stage: ["st3"] } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { series: ["SWR", "DS", "ISC"], stage: ["st4"] } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["SWR", "SA", "UFO", "Soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { series: ["SWR", "Soku", "DS", "HM", "ISC"], stage: ["st6", "ex"] } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { series: ["SWR", "SA", "Soku", "DS", "HM", "ISC"], stage: ["ex"] } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { series: ["MoF", "Soku", "DS", "HM"], stage: ["st5"] } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { series: ["MoF", "Soku", "DS", "HM", "ISC"], stage: ["st6"] } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { series: ["SA", "DS"], stage: ["st1"] } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { series: ["SA", "DS", "HM"], stage: ["st1"] } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { series: ["SA", "DS", "HM"], stage: ["st2"] } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { series: ["SA", "DS", "HM"], stage: ["st3"] } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { series: ["SA", "DS", "HM"], stage: ["st4"] } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { series: ["SA", "DS", "HM"], stage: ["st4", "st5", "st6"] } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { series: ["SA", "Soku", "DS", "HM"], stage: ["st6"] } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { series: ["SA", "DS", "HM", "ULiL"], stage: ["ex"] } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { series: ["UFO", "DS", "HM"], stage: ["st1", "st5"] } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { series: ["UFO", "DS", "HM"], stage: ["st2", "ex"] } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { series: ["UFO", "DS", "HM", "ULiL"], stage: ["st3"] } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { series: ["UFO", "DS", "HM"], stage: ["st4"] } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { series: ["UFO", "DS", "HM"], stage: ["st5"] } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { series: ["UFO", "DS", "HM", "ISC", "ULiL"], stage: ["st6"] } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { series: ["UFO", "DS", "TD", "HM"], stage: ["st4", "st6", "ex"] } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { series: ["DS", "HM", "ISC"], stage: ["ex"] } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { series: ["book", "GFW", "HM"], stage: ["st1", "st2", "st3"] } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { series: ["TD", "HM", "ISC"], stage: ["st2"] } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { series: ["TD", "HM", "ISC"], stage: ["st3", "st4"] } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { series: ["TD", "HM", "ISC"], stage: ["st4"] } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { series: ["TD", "HM"], stage: ["st5"] } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["st5"] } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["st6"] } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { series: ["TD", "HM", "ISC", "ULiL"], stage: ["ex"] } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { series: ["book", "HM", "ULiL"], stage: ["st6"] } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { series: ["DDC", "ISC"], stage: ["st1"] } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { series: ["DDC", "ISC"], stage: ["st2"] } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { series: ["DDC", "ISC"], stage: ["st3"] } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { series: ["DDC", "ISC"], stage: ["st4", "ex"] } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { series: ["DDC", "ISC"], stage: ["st4", "ex"] } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { series: ["DDC", "ISC"], stage: ["st5", "st6"] } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { series: ["DDC", "ISC", "ULiL"], stage: ["st6"] } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { series: ["DDC", "ISC"], stage: ["ex"] } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { series: ["ULiL"], stage: ["st6"] } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { series: ["LoLK"], stage: ["st1"] } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { series: ["LoLK"], stage: ["st2"] } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { series: ["LoLK"], stage: ["st3", "ex"] } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { series: ["LoLK"], stage: ["st4"] } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { series: ["LoLK"], stage: ["st5"] } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { series: ["LoLK"], stage: ["st6", "ex"] } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { series: ["LoLK"], stage: ["ex"] } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { series: ["book"], stage: [] } + }, + { name: "Tokiko", img: "71694694_p0.png", opts: { series: ["book"], stage: [] } }, + { + name: "Rei'sen (Manga)", + img: "67142507_p0.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { series: ["book", "ULiL"], stage: ["st5"] } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { series: ["book"], stage: [] } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { series: ["HRtP"], stage: ["st1"] } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { series: ["HRtP"], stage: ["st5"] } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { series: ["HRtP"], stage: ["st5"] } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { series: ["HRtP"], stage: ["st6"] } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { series: ["HRtP"], stage: ["st6"] } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { series: ["SoEW"], stage: ["st1", "ex"] } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { series: ["SoEW"], stage: ["st2"] } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { series: ["SoEW", "PoDD", "LLS", "MS"], stage: ["st4"], pc98: true } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { series: ["PoDD"], stage: [] } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { series: ["PoDD"], stage: [] } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { series: ["PoDD"], stage: [] } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { series: ["PoDD"], stage: [] } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { series: ["PoDD"], stage: ["st5"] } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { series: ["PoDD"], stage: ["st6"] } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { series: ["PoDD"], stage: [] } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { series: ["LLS"], stage: ["st1"] } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { series: ["LLS"], stage: ["st2"] } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { series: ["LLS"], stage: ["st3"] } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { series: ["LLS", "MS"], stage: ["st5", "st6"], pc98: true } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { series: ["LLS"], stage: ["ex"] } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { series: ["LLS"], stage: ["ex"] } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { series: ["MS"], stage: ["st1"] } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { series: ["MS"], stage: ["st2", "st4"] } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { series: ["MS"], stage: ["st3", "ex"], pc98: true } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { series: ["MS"], stage: ["st4"] } + }, + { name: "Mai", img: "54570394_p0.png", opts: { series: ["MS"], stage: ["st4"] } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { series: ["MS"], stage: ["st5"] } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { series: ["MS"], stage: ["st6"] } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { series: ["PoDD"], stage: [], notgirl: true } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { series: ["UFO", "DS", "HM", "ULiL"], stage: ["st3"], notgirl: true } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { series: ["SoEW", "PoDD", "LLS", "MS"], stage: [], notgirl: true } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { series: ["HRtP"], stage: ["st1"], notgirl: true } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { series: ["HRtP"], stage: ["st3"], notgirl: true } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { series: ["SoEW"], stage: ["ex"], notgirl: true } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { series: ["Soku"], stage: ["st6"], notgirl: true } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { series: ["book", "HM"], stage: [], notgirl: true } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { series: ["book"], stage: [], notgirl: true } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { series: ["Soku"], stage: [], notgirl: true } + } +]; diff --git a/src/js/data/2018-02-20.js b/src/js/data/2018-02-20.js index 04dcf12a9..e2784a538 100644 --- a/src/js/data/2018-02-20.js +++ b/src/js/data/2018-02-20.js @@ -1,1243 +1,1249 @@ -dataSetVersion = "2018-02-20"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"] - } - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"] - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "8bMDDAo.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "0aPaTm8.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Rei'sen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2018-02-20"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = [ + "Added Antinomy of Common Flowers", + "Added Hidden Star in Four Seasons", + "Corrected several characters assigned to the wrong series entry", +]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"] + } + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"] + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Rei'sen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2018-03-01.js b/src/js/data/2018-03-01.js index 6b82e6b43..81adaeae2 100644 --- a/src/js/data/2018-03-01.js +++ b/src/js/data/2018-03-01.js @@ -1,1243 +1,1248 @@ -dataSetVersion = "2018-03-01"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"] - } - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"] - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Rei'sen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2018-03-01"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = [ + "Added Kogasa to TD", + "Added Kasen to AoCF", +]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"] + } + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"] + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Rei'sen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2019-06-07.js b/src/js/data/2019-06-07.js index 61115c99a..4a5ad6c57 100644 --- a/src/js/data/2019-06-07.js +++ b/src/js/data/2019-06-07.js @@ -1,1269 +1,1274 @@ -dataSetVersion = "2019-06-07"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature (Trial)", tooltip: "17 - Kikeijuu", key: "WBaWC" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"] - } - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"] - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2019-06-07"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = [ + "Added Violet Detector", + "Added Wily Beast and Weakest Creature (full)", +]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature (Trial)", tooltip: "17 - Kikeijuu", key: "WBaWC" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"] + } + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"] + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2019-10-04.js b/src/js/data/2019-10-04.js index f33101c3d..a4148eb4b 100644 --- a/src/js/data/2019-10-04.js +++ b/src/js/data/2019-10-04.js @@ -1,1301 +1,1303 @@ -dataSetVersion = "2019-10-04"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"] - } - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"] - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Kicchou Yachie", - img: "CzcIMxF.png", - opts: { - series: ["WBaWC"], - stage: ["st4"] - } - }, - { - name: "Joutouguu Mayumi", - img: "GxeziYO.png", - opts: { - series: ["WBaWC"], - stage: ["st5"] - } - }, - { - name: "Haniyasushin Keiki", - img: "Z4jclTi.png", - opts: { - series: ["WBaWC"], - stage: ["st6"] - } - }, - { - name: "Kurokoma Saki", - img: "H2v2GPy.png", - opts: { - series: ["WBaWC"], - stage: ["ex"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2019-10-04"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Wily Beast and Weakest Creature (full)"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"] + } + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"] + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2019-10-05.js b/src/js/data/2019-10-05.js index 76b75e31b..1089484df 100644 --- a/src/js/data/2019-10-05.js +++ b/src/js/data/2019-10-05.js @@ -1,1312 +1,1314 @@ -dataSetVersion = "2019-10-05"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - }, - { - name: "Remove Nameless Characters", - key: "nameless", - tooltip: "Check this to remove all characters without canonical names.", - checked: false - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"], - nameless: true - }, - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"], - nameless: true - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Kicchou Yachie", - img: "CzcIMxF.png", - opts: { - series: ["WBaWC"], - stage: ["st4"] - } - }, - { - name: "Joutouguu Mayumi", - img: "GxeziYO.png", - opts: { - series: ["WBaWC"], - stage: ["st5"] - } - }, - { - name: "Haniyasushin Keiki", - img: "Z4jclTi.png", - opts: { - series: ["WBaWC"], - stage: ["st6"] - } - }, - { - name: "Kurokoma Saki", - img: "H2v2GPy.png", - opts: { - series: ["WBaWC"], - stage: ["ex"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [], - nameless: true - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true, - nameless: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true, - nameless: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2019-10-05"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added filter for nameless characters"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2019-11-26.js b/src/js/data/2019-11-26.js index 95b90dbc2..5e1c78136 100644 --- a/src/js/data/2019-11-26.js +++ b/src/js/data/2019-11-26.js @@ -1,1320 +1,1322 @@ -dataSetVersion = "2019-11-26"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - }, - { - name: "Remove Nameless Characters", - key: "nameless", - tooltip: "Check this to remove all characters without canonical names.", - checked: false - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"], - nameless: true - }, - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"], - nameless: true - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Kicchou Yachie", - img: "CzcIMxF.png", - opts: { - series: ["WBaWC"], - stage: ["st4"] - } - }, - { - name: "Joutouguu Mayumi", - img: "GxeziYO.png", - opts: { - series: ["WBaWC"], - stage: ["st5"] - } - }, - { - name: "Haniyasushin Keiki", - img: "Z4jclTi.png", - opts: { - series: ["WBaWC"], - stage: ["st6"] - } - }, - { - name: "Kurokoma Saki", - img: "H2v2GPy.png", - opts: { - series: ["WBaWC"], - stage: ["ex"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [], - nameless: true - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Okunoda Miyoi", - img: "JZnExhN.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true, - nameless: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true, - nameless: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2019-11-26"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Okunoda Miyoi"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" } + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2021-03-29.js b/src/js/data/2021-03-29.js index c39bc2b46..3e24baaa9 100644 --- a/src/js/data/2021-03-29.js +++ b/src/js/data/2021-03-29.js @@ -1,1345 +1,1347 @@ -dataSetVersion = "2021-03-29"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, - { name: "Unconnected Marketeers (Trial)", tooltip: "18 - Kouryuudou", key: "UM" }, - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - }, - { - name: "Remove Nameless Characters", - key: "nameless", - tooltip: "Check this to remove all characters without canonical names.", - checked: false - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"], - nameless: true - }, - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"], - nameless: true - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Kicchou Yachie", - img: "CzcIMxF.png", - opts: { - series: ["WBaWC"], - stage: ["st4"] - } - }, - { - name: "Joutouguu Mayumi", - img: "GxeziYO.png", - opts: { - series: ["WBaWC"], - stage: ["st5"] - } - }, - { - name: "Haniyasushin Keiki", - img: "Z4jclTi.png", - opts: { - series: ["WBaWC"], - stage: ["st6"] - } - }, - { - name: "Kurokoma Saki", - img: "H2v2GPy.png", - opts: { - series: ["WBaWC"], - stage: ["ex"] - } - }, - { - name: "Goutokuji Mike", - img: "E6IlBzB.png", - opts: { - series: ["UM"], - stage: ["st1"] - } - }, - { - name: "Yamashiro Takane", - img: "0gqyjHu.png", - opts: { - series: ["UM"], - stage: ["st2"] - } - }, - { - name: "Komakusa Sannyo", - img: "krihsYQ.png", - opts: { - series: ["UM"], - stage: ["st3"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [], - nameless: true - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Okunoda Miyoi", - img: "JZnExhN.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true, - nameless: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true, - nameless: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2021-03-29"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Unconnected Marketeers (trial)"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, + { name: "Unconnected Marketeers (Trial)", tooltip: "18 - Kouryuudou", key: "UM" }, + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Goutokuji Mike", + img: "FltSdtv.png", + opts: { + series: ["UM"], + stage: ["st1"] + } + }, + { + name: "Yamashiro Takane", + img: "Aaq99GQ.png", + opts: { + series: ["UM"], + stage: ["st2"] + } + }, + { + name: "Komakusa Sannyo", + img: "DKupiv1.png", + opts: { + series: ["UM"], + stage: ["st3"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2021-05-09.js b/src/js/data/2021-05-09.js index d9c610956..c86171acf 100644 --- a/src/js/data/2021-05-09.js +++ b/src/js/data/2021-05-09.js @@ -1,1385 +1,1387 @@ -dataSetVersion = "2021-05-09"; // Change this when creating a new data set version. YYYY-MM-DD format. -dataSet[dataSetVersion] = {}; - -dataSet[dataSetVersion].options = [ - { - name: "Filter by Series Entry", - key: "series", - tooltip: "Check this to restrict to certain series.", - checked: false, - sub: [ - { name: "Books and CDs", key: "book" }, - { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, - { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, - { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, - { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, - { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, - { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, - { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, - { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, - { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, - { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, - { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, - { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, - { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, - { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, - { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, - { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, - { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, - { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, - { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, - { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, - { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, - { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, - { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, - { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, - { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, - { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, - { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, - { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, - { name: "Unconnected Marketeers", tooltip: "18 - Kouryuudou", key: "UM" }, - ] - }, - { - name: "Filter by Stage Enemy Appearances", - key: "stage", - tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", - checked: false, - sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } - ] - }, - { - name: "Remove PC-98 Duplicates", - key: "pc98", - tooltip: "Check this to remove PC-98 characters with a Windows counterpart." - }, - { - name: "Remove Non-Girls", - key: "notgirl", - tooltip: "Check this to remove all non-female characters." - }, - { - name: "Remove Nameless Characters", - key: "nameless", - tooltip: "Check this to remove all characters without canonical names.", - checked: false - } -]; - -dataSet[dataSetVersion].characterData = [ - { - name: "Hakurei Reimu", - img: "c5DqpgX.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], - stage: ["st4"] - } - }, - { - name: "Kirisame Marisa", - img: "tJnkSzK.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], - stage: ["st4", "ex"] - } - }, - { - name: "Rumia", - img: "0YT7QlS.png", - opts: { - series: ["book", "EoSD", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Daiyousei", - img: "NWlZud3.png", - opts: { - series: ["book", "EoSD"], - stage: ["st2", "ex"], - nameless: true - }, - }, - { - name: "Cirno", - img: "qdveFSy.png", - opts: { - series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], - stage: ["st2"] - } - }, - { - name: "Hong Meiling", - img: "ptGp0x4.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "soku"], - stage: ["st3"] - } - }, - { - name: "Koakuma", - img: "vBKdDm4.png", - opts: { - series: ["book", "EoSD"], - stage: ["st4"], - nameless: true - } - }, - { - name: "Patchouli Knowledge", - img: "A7ZnuHo.png", - opts: { - series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st4", "ex"] - } - }, - { - name: "Izayoi Sakuya", - img: "sgZPf11.png", - opts: { - series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM" ], - stage: ["st5", "st6"] - } - }, - { - name: "Remilia Scarlet", - img: "8UX7hKE.png", - opts: { - series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Flandre Scarlet", - img: "OhaDcnc.png", - opts: { - series: ["book", "EoSD", "StB", "VD"], - stage: ["ex"] - } - }, - { - name: "Letty Whiterock", - img: "MgzqjFK.png", - opts: { - series: ["book", "PCB", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Chen", - img: "ohmetZh.png", - opts: { - series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Alice Margatroid", - img: "aDIf0pN.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], - stage: ["st3"] - } - }, - { - name: "Lily White", - img: "2Pr8b2N.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "HSiFS"], - stage: ["st4", "ex"] - } - }, - { - name: "Lunasa Prismriver", - img: "htOMdDQ.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Merlin Prismriver", - img: "PrRPujP.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Lyrica Prismriver", - img: "ze79bFC.png", - opts: { - series: ["book", "PCB", "PoFV", "HM", "AoCF"], - stage: ["st4"] - } - }, - { - name: "Konpaku Youmu", - img: "WMjyRLJ.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], - stage: ["st5", "st6"] - } - }, - { - name: "Saigyouji Yuyuko", - img: "VT9mTGb.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], - stage: ["st1", "st6"] - } - }, - { - name: "Yakumo Ran", - img: "rshnJPV.png", - opts: { - series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], - stage: ["ex"] - } - }, - { - name: "Yakumo Yukari", - img: "qsceD4I.png", - opts: { - series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], - stage: ["ex"] - } - }, - { - name: "Ibuki Suika", - img: "pLdMjQ3.png", - opts: { - series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6"] - } - }, - { - name: "Wriggle Nightbug", - img: "8DLUAPf.png", - opts: { - series: ["book", "IN", "StB", "HM"], - stage: ["st1"] - } - }, - { - name: "Mystia Lorelei", - img: "6KyhLqE.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st2"] - } - }, - { - name: "Kamishirasawa Keine", - img: "99w0Chm.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC"], - stage: ["st3", "ex"] - } - }, - { - name: "Inaba Tewi", - img: "yqNfNje.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Reisen Udongein Inaba", - img: "PrYzRcC.png", - opts: { - series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Yagokoro Eirin", - img: "ceo4DhK.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Houraisan Kaguya", - img: "2YDuTk3.png", - opts: { - series: ["book", "IN", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Fujiwara no Mokou", - img: "3zo4VKV.png", - opts: { - series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Shameimaru Aya", - img: "8TLXMST.png", - opts: { - series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], - stage: ["st4"] - } - }, - { - name: "Medicine Melancholy", - img: "IImsp7K.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st4"] - } - }, - { - name: "Kazami Yuuka", - img: "MZXJQq5.png", - opts: { - series: ["book", "PoFV", "StB", "HM"], - stage: ["st5"] - } - }, - { - name: "Onozuka Komachi", - img: "aX4WIH8.png", - opts: { - series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], - stage: ["st5"] - } - }, - { - name: "Shiki Eiki, Yamaxanadu", - img: "nPBvatH.png", - opts: { - series: ["book", "PoFV", "StB", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Aki Shizuha", - img: "3pDRgvR.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Aki Minoriko", - img: "bV0DaN7.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Kagiyama Hina", - img: "J11NjNj.png", - opts: { - series: ["MoF", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Kawashiro Nitori", - img: "4Ufced2.png", - opts: { - series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Inubashiri Momiji", - img: "qGMjnYk.png", - opts: { - series: ["MoF", "DS", "ISC"], - stage: ["st4"] - } - }, - { - name: "Kochiya Sanae", - img: "ATTRSWU.png", - opts: { - series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM"], - stage: ["st5", "ex"] - } - }, - { - name: "Yasaka Kanako", - img: "nQ78Lz7.png", - opts: { - series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Moriya Suwako", - img: "yJaD5ZV.png", - opts: { - series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], - stage: ["ex"] - } - }, - { - name: "Nagae Iku", - img: "xgAlECj.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "VD"], - stage: ["st5"] - } - }, - { - name: "Hinanawi Tenshi", - img: "tZLYivt.png", - opts: { - series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Kisume", - img: "VgJgaEf.png", - opts: { - series: ["SA", "DS"], - stage: ["st1"] - } - }, - { - name: "Kurodani Yamame", - img: "sqgJ2St.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st1"] - } - }, - { - name: "Mizuhashi Parsee", - img: "lkoAJod.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st2"] - } - }, - { - name: "Hoshiguma Yuugi", - img: "tDO653L.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st3"] - } - }, - { - name: "Komeiji Satori", - img: "dup7Nt6.png", - opts: { - series: ["SA", "DS", "HM", "VD"], - stage: ["st4"] - } - }, - { - name: "Kaenbyou Rin (Orin)", - img: "uQjbw1W.png", - opts: { - series: ["SA", "DS", "HM"], - stage: ["st4", "st5", "st6"] - } - }, - { - name: "Reiuji Utsuho (Okuu)", - img: "DfdaXPW.png", - opts: { - series: ["SA", "soku", "DS", "HM", "VD"], - stage: ["st6"] - } - }, - { - name: "Komeiji Koishi", - img: "wVCcens.png", - opts: { - series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Nazrin", - img: "EpHQbiY.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st1", "st5"] - } - }, - { - name: "Tatara Kogasa", - img: "kJbv4dc.png", - opts: { - series: ["UFO", "TD", "DS", "HM"], - stage: ["st2", "ex"] - } - }, - { - name: "Kumoi Ichirin", - img: "Fyn5yVx.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"] - } - }, - { - name: "Murasa Minamitsu", - img: "39KYpvW.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st4"] - } - }, - { - name: "Toramaru Shou", - img: "5yihisu.png", - opts: { - series: ["UFO", "DS", "HM"], - stage: ["st5"] - } - }, - { - name: "Hijiri Byakuren", - img: "2ppPxny.png", - opts: { - series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Houjuu Nue", - img: "zL4S8Mj.png", - opts: { - series: ["UFO", "DS", "TD", "HM", "VD"], - stage: ["st4", "st6", "ex"] - } - }, - { - name: "Himekaidou Hatate", - img: "LgvoTaJ.png", - opts: { - series: ["DS", "HM", "ISC"], - stage: ["ex"] - } - }, - { - name: "Sunny Milk", - img: "VbqXiB6.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Luna Child", - img: "OBqgP48.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Star Sapphire", - img: "sNw61ap.png", - opts: { - series: ["book", "GFW", "HM"], - stage: ["st1", "st2", "st3"] - } - }, - { - name: "Kasodani Kyouko", - img: "sLiqEBA.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st2"] - } - }, - { - name: "Miyako Yoshika", - img: "6jq6eh6.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st3", "st4"] - } - }, - { - name: "Kaku Seiga", - img: "090hLPL.png", - opts: { - series: ["TD", "HM", "ISC"], - stage: ["st4"] - } - }, - { - name: "Soga no Tojiko", - img: "y0UXwFO.png", - opts: { - series: ["TD", "HM"], - stage: ["st5"] - } - }, - { - name: "Mononobe no Futo", - img: "WTZ97LE.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Toyosatomimi no Miko", - img: "3Xiqd22.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Futatsuiwa Mamizou", - img: "gMpWdmA.png", - opts: { - series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Hata no Kokoro", - img: "fxCGmUk.png", - opts: { - series: ["book", "HM", "ULiL", "AoCF"], - stage: ["st6"] - } - }, - { - name: "Wakasagihime", - img: "brWCLVx.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st1"] - } - }, - { - name: "Sekibanki", - img: "VAMLiJD.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st2"] - } - }, - { - name: "Imaizumi Kagerou", - img: "qwwL0bB.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st3"] - } - }, - { - name: "Tsukumo Benben", - img: "vWNeMaH.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Tsukumo Yatsuhashi", - img: "EJFQHQN.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st4", "ex"] - } - }, - { - name: "Kijin Seija", - img: "16RUacj.png", - opts: { - series: ["DDC", "ISC"], - stage: ["st5", "st6"] - } - }, - { - name: "Sukuna Shinmyoumaru", - img: "Zl2tN7W.png", - opts: { - series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Horikawa Raiko", - img: "SLLEccR.png", - opts: { - series: ["DDC", "ISC", "AoCF", "VD"], - stage: ["ex"] - } - }, - { - name: "Usami Sumireko", - img: "mc7ICW6.png", - opts: { - series: ["ULiL", "AoCF", "VD"], - stage: ["st6"] - } - }, - { - name: "Seiran", - img: "0ra00WG.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st1"] - } - }, - { - name: "Ringo", - img: "xQOsFlZ.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st2"] - } - }, - { - name: "Doremy Sweet", - img: "rGS7dyn.png", - opts: { - series: ["LoLK", "AoCF", "VD"], - stage: ["st3", "ex"] - } - }, - { - name: "Kishin Sagume", - img: "HLT338X.png", - opts: { - series: ["LoLK", "VD"], - stage: ["st4"] - } - }, - { - name: "Clownpiece", - img: "9Jje7ZQ.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st5"] - } - }, - { - name: "Junko", - img: "NsfLZjY.jpg", - opts: { - series: ["LoLK", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Hecatia Lapislazuli", - img: "EH3Ulol.png", - opts: { - series: ["LoLK", "VD"], - stage: ["ex"] - } - }, - { - name: "Eternity Larva", - img: "ql5KxJH.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st1"] - } - }, - { - name: "Sakata Nemuno", - img: "gYFhJ3Y.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st2"] - } - }, - { - name: "Komano Aunn", - img: "wWUStkF.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st3"] - } - }, - { - name: "Yatadera Narumi", - img: "wrPVhAo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st4"] - } - }, - { - name: "Nishida Satono", - img: "8w9gAy2.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Teireida Mai", - img: "DesAqAC.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st5"] - } - }, - { - name: "Matara Okina", - img: "icWvMyo.png", - opts: { - series: ["HSiFS", "VD"], - stage: ["st6", "ex"] - } - }, - { - name: "Yorigami Shion", - img: "LenxXR4.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Yorigami Joon", - img: "V9OznT1.png", - opts: { - series: ["AoCF"], - stage: ["st6"] - } - }, - { - name: "Ebisu Eika", - img: "Ke3316E.png", - opts: { - series: ["WBaWC"], - stage: ["st1"] - } - }, - { - name: "Ushizaki Urumi", - img: "ru2vIIW.png", - opts: { - series: ["WBaWC"], - stage: ["st2"] - } - }, - { - name: "Niwatari Kutaka", - img: "QTQt0ZL.png", - opts: { - series: ["WBaWC"], - stage: ["st3"] - } - }, - { - name: "Kicchou Yachie", - img: "CzcIMxF.png", - opts: { - series: ["WBaWC"], - stage: ["st4"] - } - }, - { - name: "Joutouguu Mayumi", - img: "GxeziYO.png", - opts: { - series: ["WBaWC"], - stage: ["st5"] - } - }, - { - name: "Haniyasushin Keiki", - img: "Z4jclTi.png", - opts: { - series: ["WBaWC"], - stage: ["st6"] - } - }, - { - name: "Kurokoma Saki", - img: "H2v2GPy.png", - opts: { - series: ["WBaWC"], - stage: ["ex"] - } - }, - { - name: "Goutokuji Mike", - img: "FltSdtv.png", - opts: { - series: ["UM"], - stage: ["st1"] - } - }, - { - name: "Yamashiro Takane", - img: "Aaq99GQ.png", - opts: { - series: ["UM"], - stage: ["st2"] - } - }, - { - name: "Komakusa Sannyo", - img: "DKupiv1.png", - opts: { - series: ["UM"], - stage: ["st3"] - } - }, - { - name: "Tamatsukuri Misumaru", - img: "BHwfCAQ.png", - opts: { - series: ["UM"], - stage: ["st4"] - } - }, - { - name: "Kudamaki Tsukasa", - img: "KNy3FZq.png", - opts: { - series: ["UM"], - stage: ["st5", "st6", "ex"] - } - }, - { - name: "Iizunamaru Megumu", - img: "QA63m27.png", - opts: { - series: ["UM"], - stage: ["st5"] - } - }, - { - name: "Tenkyuu Chimata", - img: "Ga4AYtv.png", - opts: { - series: ["UM"], - stage: ["st6"] - } - }, - { - name: "Himemushi Momoyo", - img: "iH2wqbd.png", - opts: { - series: ["UM"], - stage: ["ex"] - } - }, - { - name: "Hieda no Akyuu", - img: "ogONuLZ.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Tokiko", - img: "Y4maOc8.png", - opts: { - series: ["book"], - stage: [], - nameless: true - } - }, - { - name: "Reisen (Manga)", - img: "cWjCo2j.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Toyohime", - img: "uEBxsEX.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Watatsuki no Yorihime", - img: "Txu2P7S.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Maribel Hearn", - img: "XUI9vPo.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Usami Renko", - img: "1P5EXRt.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Ibaraki Kasen", - img: "dQHnPPe.png", - opts: { - series: ["book", "ULiL", "AoCF"], - stage: ["st5"] - } - }, - { - name: "Motoori Kosuzu", - img: "jEsJJo8.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Okunoda Miyoi", - img: "a5V63gx.png", - opts: { - series: ["book"], - stage: [] - } - }, - { - name: "Hakurei Reimu (PC-98)", - img: "IZsGAMS.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { - name: "Shingyoku (Female)", - img: "KuPiR2k.png", - opts: { - series: ["HRtP"], - stage: ["st1"] - } - }, - { - name: "Mima", - img: "odH03t2.png", - opts: { - series: ["HRtP", "SoEW", "PoDD", "MS"], - stage: ["st3", "st5", "st6"] - } - }, - { - name: "Elis", - img: "ytnL1xd.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Kikuri", - img: "fX2Kqik.png", - opts: { - series: ["HRtP"], - stage: ["st5"] - } - }, - { - name: "Sariel", - img: "Wyc7YFw.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Konngara", - img: "dg9jLHv.png", - opts: { - series: ["HRtP"], - stage: ["st6"] - } - }, - { - name: "Rika", - img: "02Xb4pU.png", - opts: { - series: ["SoEW"], - stage: ["st1", "ex"] - } - }, - { - name: "Meira", - img: "p529JgT.png", - opts: { - series: ["SoEW"], - stage: ["st2"] - } - }, - { - name: "Kirisame Marisa (PC-98)", - img: "wxE7cBm.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: ["st4"], - pc98: true - } - }, - { name: "Ellen", img: "3iNNL0c.png", opts: { - series: ["PoDD"], - stage: [] - } }, - { - name: "Kotohime", - img: "kRSGtpq.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kana Anaberal", - img: "rBvKMk5.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Asakura Rikako", - img: "VIf5gUK.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Kitashirakawa Chiyuri", - img: "tZFBycy.png", - opts: { - series: ["PoDD"], - stage: ["st5"] - } - }, - { - name: "Okazaki Yumemi", - img: "c9rnG3n.png", - opts: { - series: ["PoDD"], - stage: ["st6"] - } - }, - { - name: "Ruukoto", - img: "dko67SJ.png", - opts: { - series: ["PoDD"], - stage: [] - } - }, - { - name: "Orange", - img: "m8wXE5U.png", - opts: { - series: ["LLS"], - stage: ["st1"] - } - }, - { - name: "Kurumi", - img: "0rvq1ph.png", - opts: { - series: ["LLS"], - stage: ["st2"] - } - }, - { - name: "Elly", - img: "iIPftHn.png", - opts: { - series: ["LLS"], - stage: ["st3"] - } - }, - { - name: "Yuuka (PC-98)", - img: "ivUSwxp.png", - opts: { - series: ["LLS", "MS"], - stage: ["st5", "st6"], - pc98: true - } - }, - { - name: "Mugetsu", - img: "bYA9E16.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Gengetsu", - img: "TIOTtV9.png", - opts: { - series: ["LLS"], - stage: ["ex"] - } - }, - { - name: "Sara", - img: "2QUbCrU.png", - opts: { - series: ["MS"], - stage: ["st1"] - } - }, - { - name: "Louise", - img: "nDM5aB6.png", - opts: { - series: ["MS"], - stage: ["st2", "st4"] - } - }, - { - name: "Alice (PC-98)", - img: "KaBuRTW.png", - opts: { - series: ["MS"], - stage: ["st3", "ex"], - pc98: true - } - }, - { - name: "Yuki", - img: "FfcmDgp.png", - opts: { - series: ["MS"], - stage: ["st4"] - } - }, - { name: "Mai", img: "r6w7TX1.png", opts: { - series: ["MS"], - stage: ["st4"] - } }, - { - name: "Yumeko", - img: "PcPqkdO.png", - opts: { - series: ["MS"], - stage: ["st5"] - } - }, - { - name: "Shinki", - img: "gPE95S7.png", - opts: { - series: ["MS"], - stage: ["st6"] - } - }, - { - name: "Mimi-chan", - img: "zBl2zlv.png", - opts: { - series: ["PoDD"], - stage: [], - notgirl: true - } - }, - { - name: "Unzan", - img: "r5eWREh.png", - opts: { - series: ["UFO", "DS", "HM", "ULiL", "AoCF"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Genji", - img: "LoUqOuH.png", - opts: { - series: ["SoEW", "PoDD", "LLS", "MS"], - stage: [], - notgirl: true - } - }, - { - name: "Shingyoku (Male)", - img: "a5uwlgN.png", - opts: { - series: ["HRtP"], - stage: ["st1"], - notgirl: true - } - }, - { - name: "YuugenMagan", - img: "IOW8GdU.png", - opts: { - series: ["HRtP"], - stage: ["st3"], - notgirl: true - } - }, - { - name: "Evil Eye Sigma", - img: "rAFUMwE.png", - opts: { - series: ["SoEW"], - stage: ["ex"], - notgirl: true - } - }, - { - name: "Great Catfish", - img: "BgRi9Oh.png", - opts: { - series: ["soku", "AoCF"], - stage: ["st6"], - notgirl: true, - nameless: true - } - }, - { - name: "Morichika Rinnosuke", - img: "ITUhsGj.png", - opts: { - series: ["book", "HM"], - stage: [], - notgirl: true - } - }, - { - name: "Fortune Teller", - img: "BYot23O.png", - opts: { - series: ["book"], - stage: [], - notgirl: true, - nameless: true - } - }, - { - name: "Hisoutensoku", - img: "P4JZ2it.png", - opts: { - series: ["soku"], - stage: [], - notgirl: true - } - } -]; +dataSetVersion = "2021-05-09"; // Change this when creating a new data set version. YYYY-MM-DD format. +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Unconnected Marketeers (full)"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, + { name: "Unconnected Marketeers", tooltip: "18 - Kouryuudou", key: "UM" }, + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Goutokuji Mike", + img: "FltSdtv.png", + opts: { + series: ["UM"], + stage: ["st1"] + } + }, + { + name: "Yamashiro Takane", + img: "Aaq99GQ.png", + opts: { + series: ["UM"], + stage: ["st2"] + } + }, + { + name: "Komakusa Sannyo", + img: "DKupiv1.png", + opts: { + series: ["UM"], + stage: ["st3"] + } + }, + { + name: "Tamatsukuri Misumaru", + img: "0V9jLUm.png", + opts: { + series: ["UM"], + stage: ["st4"] + } + }, + { + name: "Kudamaki Tsukasa", + img: "hiKwpr7.png", + opts: { + series: ["UM"], + stage: ["st5", "st6", "ex"] + } + }, + { + name: "Iizunamaru Megumu", + img: "4fhGB1j.png", + opts: { + series: ["UM"], + stage: ["st5"] + } + }, + { + name: "Tenkyuu Chimata", + img: "7ebXBQi.png", + opts: { + series: ["UM"], + stage: ["st6"] + } + }, + { + name: "Himemushi Momoyo", + img: "UG0f5r4.png", + opts: { + series: ["UM"], + stage: ["ex"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2021-11-06.js b/src/js/data/2021-11-06.js new file mode 100644 index 000000000..7019c27d0 --- /dev/null +++ b/src/js/data/2021-11-06.js @@ -0,0 +1,1396 @@ +dataSetVersion = "2021-11-06"; +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Gouyoku Ibun"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, + { name: "Touhou Gouyoku Ibun", tooltip: "17.5 - Gouyoku Ibun", key: "17.5" }, + { name: "Unconnected Marketeers", tooltip: "18 - Kouryuudou", key: "UM" }, + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD", "17.5"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD", "17.5"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM", "17.5"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM", "17.5"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC", "17.5"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC"], + stage: ["ex"] + } + }, + { + name: "Goutokuji Mike", + img: "FltSdtv.png", + opts: { + series: ["UM"], + stage: ["st1"] + } + }, + { + name: "Yamashiro Takane", + img: "Aaq99GQ.png", + opts: { + series: ["UM"], + stage: ["st2"] + } + }, + { + name: "Komakusa Sannyo", + img: "DKupiv1.png", + opts: { + series: ["UM"], + stage: ["st3"] + } + }, + { + name: "Tamatsukuri Misumaru", + img: "0V9jLUm.png", + opts: { + series: ["UM"], + stage: ["st4"] + } + }, + { + name: "Kudamaki Tsukasa", + img: "hiKwpr7.png", + opts: { + series: ["UM"], + stage: ["st5", "st6", "ex"] + } + }, + { + name: "Iizunamaru Megumu", + img: "4fhGB1j.png", + opts: { + series: ["UM"], + stage: ["st5"] + } + }, + { + name: "Tenkyuu Chimata", + img: "7ebXBQi.png", + opts: { + series: ["UM"], + stage: ["st6"] + } + }, + { + name: "Himemushi Momoyo", + img: "UG0f5r4.png", + opts: { + series: ["UM"], + stage: ["ex"] + } + }, + { + name: "Toutetsu Yuuma", + img: "93955442_p0.png", + opts: { + series: ["17.5"], + stage: ["st6"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2023-09-22.js b/src/js/data/2023-09-22.js new file mode 100644 index 000000000..a83b36d04 --- /dev/null +++ b/src/js/data/2023-09-22.js @@ -0,0 +1,1441 @@ +dataSetVersion = "2023-09-22"; +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = [ + "Added 100th Black Market", + "Added Unfinished Dream of All Living Ghost", +]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, + { name: "Touhou Gouyoku Ibun", tooltip: "17.5 - Gouyoku Ibun", key: "17.5" }, + { name: "Unconnected Marketeers", tooltip: "18 - Kouryuudou", key: "UM" }, + { name: "100th Black Market", tooltip: "18.5 - Bulletphilia-tachi no Yami-Ichiba", key: "100BM" }, + { name: "Unfinished Dream of All Living Ghost", tooltip: "19 - Unfinished Dream of All Living Ghost", key: "UDoALG" }, + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5", "100BM", "UDoALG" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5", "100BM", "UDoALG" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS", "100BM" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM", "100BM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD", "17.5"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC", "100BM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD", "100BM", "UDoALG"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM", "100BM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM", "100BM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF", "100BM"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM", "100BM", "UDoALG"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD", "100BM"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM", "UDoALG"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD", "17.5"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM", "UDoALG"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM", "17.5"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM", "17.5"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD", "100BM", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC", "100BM"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC", "100BM"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD", "UDoALG"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD", "100BM"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD", "UDoALG"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC", "100BM"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC", "100BM"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC", "17.5", "100BM"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC", "UDoALG"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC", "100BM", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Goutokuji Mike", + img: "FltSdtv.png", + opts: { + series: ["UM", "100BM"], + stage: ["st1"] + } + }, + { + name: "Yamashiro Takane", + img: "Aaq99GQ.png", + opts: { + series: ["UM", "100BM"], + stage: ["st2"] + } + }, + { + name: "Komakusa Sannyo", + img: "DKupiv1.png", + opts: { + series: ["UM"], + stage: ["st3"] + } + }, + { + name: "Tamatsukuri Misumaru", + img: "0V9jLUm.png", + opts: { + series: ["UM"], + stage: ["st4"] + } + }, + { + name: "Kudamaki Tsukasa", + img: "hiKwpr7.png", + opts: { + series: ["UM", "UDoALG", "100BM"], + stage: ["st5", "st6", "ex"] + } + }, + { + name: "Iizunamaru Megumu", + img: "4fhGB1j.png", + opts: { + series: ["UM", "100BM"], + stage: ["st5"] + } + }, + { + name: "Tenkyuu Chimata", + img: "7ebXBQi.png", + opts: { + series: ["UM", "100BM"], + stage: ["st6"] + } + }, + { + name: "Himemushi Momoyo", + img: "UG0f5r4.png", + opts: { + series: ["UM", "100BM"], + stage: ["ex"] + } + }, + { + name: "Toutetsu Yuuma", + img: "93955442_p0.png", + opts: { + series: ["17.5", "UDoALG"], + stage: ["st6"] + } + }, + { + name: "Son Biten", + img: "111176253_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Mitsugashira Enoko", + img: "111420339_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Tenkajin Chiyari", + img: "111576609_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Yomotsu Hisami", + img: "111798695_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Nippaku Zanmu", + img: "111935114_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st6"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/data/2023-09-24.js b/src/js/data/2023-09-24.js new file mode 100644 index 000000000..f46cf09bf --- /dev/null +++ b/src/js/data/2023-09-24.js @@ -0,0 +1,1446 @@ +dataSetVersion = "2023-09-24"; +dataSet[dataSetVersion] = {}; + +dataSet[dataSetVersion].changelog = ["Added Miyadeguchi Mizuchi"]; + +dataSet[dataSetVersion].options = [ + { + name: "Filter by Series Entry", + key: "series", + tooltip: "Check this to restrict to certain series.", + checked: false, + sub: [ + { name: "Books and CDs", key: "book" }, + { name: "The Highly Responsive to Prayers", tooltip: "01 - Reiiden", key: "HRtP" }, + { name: "The Story of Eastern Wonderland", tooltip: "02 - Fuumaroku", key: "SoEW" }, + { name: "Phantasmagoria of Dim.Dream", tooltip: "03 - Yumejikuu", key: "PoDD" }, + { name: "Lotus Land Story", tooltip: "04 - Gensoukyou", key: "LLS" }, + { name: "Mystic Square", tooltip: "05 - Kaikidan", key: "MS" }, + { name: "Embodiment of Scarlet Devil", tooltip: "06 - Koumakan", key: "EoSD" }, + { name: "Perfect Cherry Blossom", tooltip: "07 - Youyoumu", key: "PCB" }, + { name: "Immaterial and Missing Power", tooltip: "07.5 - Suimusou", key: "IaMP" }, + { name: "Imperishable Night", tooltip: "08 - Eiyashou", key: "IN" }, + { name: "Phantasmagoria of Flower View", tooltip: "09 - Kaeidzuka", key: "PoFV" }, + { name: "Shoot the Bullet", tooltip: "09.5 - Bunkachou", key: "StB" }, + { name: "Mountain of Faith", tooltip: "10 - Fuujinroku", key: "MoF" }, + { name: "Scarlet Weather Rhapsody", tooltip: "10.5 - Hisouten", key: "SWR" }, + { name: "Subterranean Animism", tooltip: "11 - Chireiden", key: "SA" }, + { name: "Undefined Fantastic Object", tooltip: "12 - Seirensen", key: "UFO" }, + { name: "Touhou Hisoutensoku", tooltip: "12.3 - Hisoutensoku", key: "soku" }, + { name: "Double Spoiler", tooltip: "12.5 - Bunkachou", key: "DS" }, + { name: "Great Fairy Wars", tooltip: "12.8 - Daisensou", key: "GFW" }, + { name: "Ten Desires", tooltip: "13 - Shinreibyou", key: "TD" }, + { name: "Hopeless Masquerade", tooltip: "13.5 - Shinkirou", key: "HM" }, + { name: "Double Dealing Character", tooltip: "14 - Kishinjou", key: "DDC" }, + { name: "Impossible Spell Card", tooltip: "14.3 - Amanojaku", key: "ISC" }, + { name: "Urban Legend in Limbo", tooltip: "14.5 - Shinpiroku", key: "ULiL" }, + { name: "Legacy of Lunatic Kingdom", tooltip: "15 - Kanjuden", key: "LoLK" }, + { name: "Antinomy of Common Flowers", tooltip: "15.5 - Hyouibana", key: "AoCF" }, + { name: "Hidden Star in Four Seasons", tooltip: "16 - Tenkuushou", key: "HSiFS" }, + { name: "Violet Detector", tooltip: "16.5 - Hifuu Nightmare Diary", key: "VD" }, + { name: "Wily Beast and Weakest Creature", tooltip: "17 - Kikeijuu", key: "WBaWC" }, + { name: "Touhou Gouyoku Ibun", tooltip: "17.5 - Gouyoku Ibun", key: "17.5" }, + { name: "Unconnected Marketeers", tooltip: "18 - Kouryuudou", key: "UM" }, + { name: "100th Black Market", tooltip: "18.5 - Bulletphilia-tachi no Yami-Ichiba", key: "100BM" }, + { name: "Unfinished Dream of All Living Ghost", tooltip: "19 - Unfinished Dream of All Living Ghost", key: "UDoALG" }, + ] + }, + { + name: "Filter by Stage Enemy Appearances", + key: "stage", + tooltip: "Check this to restrict to characters that appear in certain stages as enemies.", + checked: false, + sub: [ { name: "Stage 1", key: "st1" }, { name: "Stage 2", key: "st2" }, { name: "Stage 3", key: "st3" }, { name: "Stage 4", key: "st4" }, { name: "Stage 5/Penultimate", tooltip: "Stage 4 in 5-stage games, and Stage 8 in 9-stage games.", key: "st5" }, { name: "Stage 6/Final", key: "st6" }, { name: "Stage EX/Phantasm", key: "ex" } + ] + }, + { + name: "Remove PC-98 Duplicates", + key: "pc98", + tooltip: "Check this to remove PC-98 characters with a Windows counterpart." + }, + { + name: "Remove Non-Girls", + key: "notgirl", + tooltip: "Check this to remove all non-female characters." + }, + { + name: "Remove Nameless Characters", + key: "nameless", + tooltip: "Check this to remove all characters without canonical names.", + checked: false + } +]; + +dataSet[dataSetVersion].characterData = [ + { + name: "Hakurei Reimu", + img: "39486261_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5", "100BM", "UDoALG" ], + stage: ["st4"] + } + }, + { + name: "Kirisame Marisa", + img: "39261304_p0.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "MoF", "SA", "UFO", "soku", "DS", "GFW", "TD", "HM", "DDC", "ISC", "ULiL", "LoLK", "AoCF", "HSiFS", "VD", "WBaWC", "UM", "17.5", "100BM", "UDoALG" ], + stage: ["st4", "ex"] + } + }, + { + name: "Rumia", + img: "36032949_p28.png", + opts: { + series: ["book", "EoSD", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Daiyousei", + img: "39785627_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st2", "ex"], + nameless: true + }, + }, + { + name: "Cirno", + img: "35897624_p2.png", + opts: { + series: [ "book", "EoSD", "PCB", "PoFV", "StB", "soku", "GFW", "HM", "DDC", "ISC", "HSiFS", "100BM" ], + stage: ["st2"] + } + }, + { + name: "Hong Meiling", + img: "55217436_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "soku"], + stage: ["st3"] + } + }, + { + name: "Koakuma", + img: "33672888_p0.png", + opts: { + series: ["book", "EoSD"], + stage: ["st4"], + nameless: true + } + }, + { + name: "Patchouli Knowledge", + img: "67199755_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st4", "ex"] + } + }, + { + name: "Izayoi Sakuya", + img: "39547480_p1.png", + opts: { + series: [ "book", "EoSD", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "HM", "DDC", "ISC", "UM", "100BM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Remilia Scarlet", + img: "71407907_p0.png", + opts: { + series: ["book", "EoSD", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "VD"], + stage: ["st6"] + } + }, + { + name: "Flandre Scarlet", + img: "40346048_p0.png", + opts: { + series: ["book", "EoSD", "StB", "VD", "17.5"], + stage: ["ex"] + } + }, + { + name: "Letty Whiterock", + img: "MgzqjFK.png", + opts: { + series: ["book", "PCB", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Chen", + img: "36335545_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "StB", "SWR", "soku", "HM"], + stage: ["st2", "ex"] + } + }, + { + name: "Alice Margatroid", + img: "55306217_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM"], + stage: ["st3"] + } + }, + { + name: "Lily White", + img: "37413503_p0.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "HSiFS"], + stage: ["st4", "ex"] + } + }, + { + name: "Lunasa Prismriver", + img: "htOMdDQ.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Merlin Prismriver", + img: "PrRPujP.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Lyrica Prismriver", + img: "ze79bFC.png", + opts: { + series: ["book", "PCB", "PoFV", "HM", "AoCF"], + stage: ["st4"] + } + }, + { + name: "Konpaku Youmu", + img: "40401344_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "PoFV", "StB", "SWR", "soku", "TD", "HM", "ISC", "WBaWC", "100BM" ], + stage: ["st5", "st6"] + } + }, + { + name: "Saigyouji Yuyuko", + img: "38847228_p31.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "TD", "HM", "ISC", "VD" ], + stage: ["st1", "st6"] + } + }, + { + name: "Yakumo Ran", + img: "33718126_p0.png", + opts: { + series: ["book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "VD", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Yakumo Yukari", + img: "50751869_p0.png", + opts: { + series: [ "book", "PCB", "IaMP", "IN", "StB", "SWR", "soku", "HM", "ISC", "AoCF", "VD" ], + stage: ["ex"] + } + }, + { + name: "Ibuki Suika", + img: "36587157_p22.png", + opts: { + series: ["book", "IaMP", "StB", "SWR", "soku", "DS", "HM", "ISC", "VD", "100BM", "UDoALG"], + stage: ["st6"] + } + }, + { + name: "Wriggle Nightbug", + img: "37060947_p0.png", + opts: { + series: ["book", "IN", "StB", "HM"], + stage: ["st1"] + } + }, + { + name: "Mystia Lorelei", + img: "45415913_p32.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st2"] + } + }, + { + name: "Kamishirasawa Keine", + img: "99w0Chm.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC"], + stage: ["st3", "ex"] + } + }, + { + name: "Inaba Tewi", + img: "40190956_p0.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Reisen Udongein Inaba", + img: "PrYzRcC.png", + opts: { + series: ["book", "IN", "PoFV", "StB", "soku", "HM", "LoLK", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Yagokoro Eirin", + img: "34199683_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Houraisan Kaguya", + img: "2YDuTk3.png", + opts: { + series: ["book", "IN", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Fujiwara no Mokou", + img: "33967037_p0.png", + opts: { + series: ["book", "IN", "StB", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Shameimaru Aya", + img: "42093495_p49.png", + opts: { + series: [ "book", "PoFV", "StB", "SWR", "MoF", "soku", "HM", "ISC", "HSiFS" ], + stage: ["st4"] + } + }, + { + name: "Medicine Melancholy", + img: "50600052_p0.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st4"] + } + }, + { + name: "Kazami Yuuka", + img: "41646587_p1.png", + opts: { + series: ["book", "PoFV", "StB", "HM"], + stage: ["st5"] + } + }, + { + name: "Onozuka Komachi", + img: "aX4WIH8.png", + opts: { + series: ["book", "PoFV", "StB", "SWR", "soku", "HM", "100BM"], + stage: ["st5"] + } + }, + { + name: "Shiki Eiki, Yamaxanadu", + img: "nPBvatH.png", + opts: { + series: ["book", "PoFV", "StB", "HM", "VD"], + stage: ["st6"] + } + }, + { + name: "Aki Shizuha", + img: "37524972_p0.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st1"] + } + }, + { + name: "Aki Minoriko", + img: "37497509_p0.png", + opts: { + series: ["MoF", "DS", "HM", "100BM"], + stage: ["st1"] + } + }, + { + name: "Kagiyama Hina", + img: "J11NjNj.png", + opts: { + series: ["MoF", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Kawashiro Nitori", + img: "38255785_p0.png", + opts: { + series: ["MoF", "DS", "HM", "ISC", "ULiL", "AoCF", "100BM"], + stage: ["st3"] + } + }, + { + name: "Inubashiri Momiji", + img: "43259877_p52.png", + opts: { + series: ["MoF", "DS", "ISC"], + stage: ["st4"] + } + }, + { + name: "Kochiya Sanae", + img: "39877070_p0.png", + opts: { + series: ["MoF", "SA", "UFO", "soku", "DS", "TD", "HM", "ISC", "LoLK", "UM", "100BM", "UDoALG"], + stage: ["st5", "ex"] + } + }, + { + name: "Yasaka Kanako", + img: "39033185_p0.png", + opts: { + series: ["MoF", "soku", "DS", "HM", "ISC", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Moriya Suwako", + img: "41296540_p0.png", + opts: { + series: ["MoF", "SA", "soku", "DS", "HM", "ISC", "VD"], + stage: ["ex"] + } + }, + { + name: "Nagae Iku", + img: "44864931_p31.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "VD"], + stage: ["st5"] + } + }, + { + name: "Hinanawi Tenshi", + img: "65187915_p0.png", + opts: { + series: ["SWR", "soku", "DS", "HM", "ISC", "AoCF", "VD", "100BM"], + stage: ["st6"] + } + }, + { + name: "Kisume", + img: "37471044_p3.png", + opts: { + series: ["SA", "DS"], + stage: ["st1"] + } + }, + { + name: "Kurodani Yamame", + img: "37030661_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st1"] + } + }, + { + name: "Mizuhashi Parsee", + img: "36228277_p1.png", + opts: { + series: ["SA", "DS", "HM"], + stage: ["st2"] + } + }, + { + name: "Hoshiguma Yuugi", + img: "67106570_p0.png", + opts: { + series: ["SA", "DS", "HM", "17.5"], + stage: ["st3"] + } + }, + { + name: "Komeiji Satori", + img: "37179537_p0.png", + opts: { + series: ["SA", "DS", "HM", "VD"], + stage: ["st4"] + } + }, + { + name: "Kaenbyou Rin (Orin)", + img: "36921045_p34.png", + opts: { + series: ["SA", "DS", "HM", "UDoALG"], + stage: ["st4", "st5", "st6"] + } + }, + { + name: "Reiuji Utsuho (Okuu)", + img: "DfdaXPW.png", + opts: { + series: ["SA", "soku", "DS", "HM", "VD", "17.5"], + stage: ["st6"] + } + }, + { + name: "Komeiji Koishi", + img: "36080352_p0.png", + opts: { + series: ["SA", "DS", "HM", "ULiL", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Nazrin", + img: "36207805_p27.png", + opts: { + series: ["UFO", "DS", "HM", "UDoALG"], + stage: ["st1", "st5"] + } + }, + { + name: "Tatara Kogasa", + img: "35917852_p27.png", + opts: { + series: ["UFO", "TD", "DS", "HM", "17.5"], + stage: ["st2", "ex"] + } + }, + { + name: "Kumoi Ichirin", + img: "33708432_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"] + } + }, + { + name: "Murasa Minamitsu", + img: "36378515_p27.png", + opts: { + series: ["UFO", "DS", "HM", "17.5"], + stage: ["st4"] + } + }, + { + name: "Toramaru Shou", + img: "5yihisu.png", + opts: { + series: ["UFO", "DS", "HM"], + stage: ["st5"] + } + }, + { + name: "Hijiri Byakuren", + img: "36180040_p0.png", + opts: { + series: ["UFO", "DS", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Houjuu Nue", + img: "zL4S8Mj.png", + opts: { + series: ["UFO", "DS", "TD", "HM", "VD"], + stage: ["st4", "st6", "ex"] + } + }, + { + name: "Himekaidou Hatate", + img: "LgvoTaJ.png", + opts: { + series: ["DS", "HM", "ISC"], + stage: ["ex"] + } + }, + { + name: "Sunny Milk", + img: "67183544_p7.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Luna Child", + img: "67169867_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Star Sapphire", + img: "67156260_p0.png", + opts: { + series: ["book", "GFW", "HM"], + stage: ["st1", "st2", "st3"] + } + }, + { + name: "Kasodani Kyouko", + img: "67236431_p7.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st2"] + } + }, + { + name: "Miyako Yoshika", + img: "67217736_p3.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st3", "st4"] + } + }, + { + name: "Kaku Seiga", + img: "36732834_p0.png", + opts: { + series: ["TD", "HM", "ISC"], + stage: ["st4"] + } + }, + { + name: "Soga no Tojiko", + img: "36453291_p4.png", + opts: { + series: ["TD", "HM"], + stage: ["st5"] + } + }, + { + name: "Mononobe no Futo", + img: "36022130_p8.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Toyosatomimi no Miko", + img: "37852706_p0.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Futatsuiwa Mamizou", + img: "36827880_p4.png", + opts: { + series: ["TD", "HM", "ISC", "ULiL", "AoCF", "VD", "100BM", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Hata no Kokoro", + img: "36515196_p9.png", + opts: { + series: ["book", "HM", "ULiL", "AoCF"], + stage: ["st6"] + } + }, + { + name: "Wakasagihime", + img: "brWCLVx.png", + opts: { + series: ["DDC", "ISC", "100BM"], + stage: ["st1"] + } + }, + { + name: "Sekibanki", + img: "38340713_p2.png", + opts: { + series: ["DDC", "ISC", "100BM"], + stage: ["st2"] + } + }, + { + name: "Imaizumi Kagerou", + img: "qwwL0bB.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st3"] + } + }, + { + name: "Tsukumo Benben", + img: "38539941_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Tsukumo Yatsuhashi", + img: "38575619_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st4", "ex"] + } + }, + { + name: "Kijin Seija", + img: "55235571_p0.png", + opts: { + series: ["DDC", "ISC"], + stage: ["st5", "st6"] + } + }, + { + name: "Sukuna Shinmyoumaru", + img: "Zl2tN7W.png", + opts: { + series: ["DDC", "ISC", "ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Horikawa Raiko", + img: "37974959_p5.png", + opts: { + series: ["DDC", "ISC", "AoCF", "VD"], + stage: ["ex"] + } + }, + { + name: "Usami Sumireko", + img: "50686999_p0.png", + opts: { + series: ["ULiL", "AoCF", "VD"], + stage: ["st6"] + } + }, + { + name: "Seiran", + img: "51762958_p1.png", + opts: { + series: ["LoLK", "VD", "UDoALG"], + stage: ["st1"] + } + }, + { + name: "Ringo", + img: "51780429_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st2"] + } + }, + { + name: "Doremy Sweet", + img: "51797648_p5.png", + opts: { + series: ["LoLK", "AoCF", "VD"], + stage: ["st3", "ex"] + } + }, + { + name: "Kishin Sagume", + img: "52376610_p1.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st4"] + } + }, + { + name: "Clownpiece", + img: "52395985_p1.png", + opts: { + series: ["LoLK", "VD", "100BM"], + stage: ["st5"] + } + }, + { + name: "Junko", + img: "52473979_p13.png", + opts: { + series: ["LoLK", "VD"], + stage: ["st6", "ex"] + } + }, + { + name: "Hecatia Lapislazuli", + img: "EH3Ulol.png", + opts: { + series: ["LoLK", "VD"], + stage: ["ex"] + } + }, + { + name: "Eternity Larva", + img: "ql5KxJH.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st1"] + } + }, + { + name: "Sakata Nemuno", + img: "gYFhJ3Y.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st2"] + } + }, + { + name: "Komano Aunn", + img: "wWUStkF.png", + opts: { + series: ["HSiFS", "VD", "UDoALG"], + stage: ["st3"] + } + }, + { + name: "Yatadera Narumi", + img: "wrPVhAo.png", + opts: { + series: ["HSiFS", "VD", "100BM"], + stage: ["st4"] + } + }, + { + name: "Nishida Satono", + img: "8w9gAy2.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Teireida Mai", + img: "DesAqAC.png", + opts: { + series: ["HSiFS", "VD"], + stage: ["st5"] + } + }, + { + name: "Matara Okina", + img: "icWvMyo.png", + opts: { + series: ["HSiFS", "VD", "17.5"], + stage: ["st6", "ex"] + } + }, + { + name: "Yorigami Shion", + img: "66690096_p0.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Yorigami Joon", + img: "V9OznT1.png", + opts: { + series: ["AoCF", "17.5"], + stage: ["st6"] + } + }, + { + name: "Ebisu Eika", + img: "Ke3316E.png", + opts: { + series: ["WBaWC", "100BM"], + stage: ["st1"] + } + }, + { + name: "Ushizaki Urumi", + img: "ru2vIIW.png", + opts: { + series: ["WBaWC", "100BM"], + stage: ["st2"] + } + }, + { + name: "Niwatari Kutaka", + img: "QTQt0ZL.png", + opts: { + series: ["WBaWC", "17.5", "100BM"], + stage: ["st3"] + } + }, + { + name: "Kicchou Yachie", + img: "CzcIMxF.png", + opts: { + series: ["WBaWC", "UDoALG"], + stage: ["st4"] + } + }, + { + name: "Joutouguu Mayumi", + img: "GxeziYO.png", + opts: { + series: ["WBaWC"], + stage: ["st5"] + } + }, + { + name: "Haniyasushin Keiki", + img: "Z4jclTi.png", + opts: { + series: ["WBaWC"], + stage: ["st6"] + } + }, + { + name: "Kurokoma Saki", + img: "H2v2GPy.png", + opts: { + series: ["WBaWC", "100BM", "UDoALG"], + stage: ["ex"] + } + }, + { + name: "Goutokuji Mike", + img: "FltSdtv.png", + opts: { + series: ["UM", "100BM"], + stage: ["st1"] + } + }, + { + name: "Yamashiro Takane", + img: "Aaq99GQ.png", + opts: { + series: ["UM", "100BM"], + stage: ["st2"] + } + }, + { + name: "Komakusa Sannyo", + img: "DKupiv1.png", + opts: { + series: ["UM"], + stage: ["st3"] + } + }, + { + name: "Tamatsukuri Misumaru", + img: "0V9jLUm.png", + opts: { + series: ["UM"], + stage: ["st4"] + } + }, + { + name: "Kudamaki Tsukasa", + img: "hiKwpr7.png", + opts: { + series: ["UM", "UDoALG", "100BM"], + stage: ["st5", "st6", "ex"] + } + }, + { + name: "Iizunamaru Megumu", + img: "4fhGB1j.png", + opts: { + series: ["UM", "100BM"], + stage: ["st5"] + } + }, + { + name: "Tenkyuu Chimata", + img: "7ebXBQi.png", + opts: { + series: ["UM", "100BM"], + stage: ["st6"] + } + }, + { + name: "Himemushi Momoyo", + img: "UG0f5r4.png", + opts: { + series: ["UM", "100BM"], + stage: ["ex"] + } + }, + { + name: "Toutetsu Yuuma", + img: "93955442_p0.png", + opts: { + series: ["17.5", "UDoALG"], + stage: ["st6"] + } + }, + { + name: "Son Biten", + img: "111176253_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Mitsugashira Enoko", + img: "111420339_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Tenkajin Chiyari", + img: "111576609_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Yomotsu Hisami", + img: "111798695_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st5"] + } + }, + { + name: "Nippaku Zanmu", + img: "111935114_p0.png", + opts: { + series: ["UDoALG"], + stage: ["st6"] + } + }, + { + name: "Hieda no Akyuu", + img: "55893431_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Tokiko", + img: "71694694_p0.png", + opts: { + series: ["book"], + stage: [], + nameless: true + } + }, + { + name: "Reisen (Manga)", + img: "67142507_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Toyohime", + img: "38667372_p4.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Watatsuki no Yorihime", + img: "65082403_p8.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Maribel Hearn", + img: "XUI9vPo.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Usami Renko", + img: "1P5EXRt.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Ibaraki Kasen", + img: "dQHnPPe.png", + opts: { + series: ["book", "ULiL", "AoCF"], + stage: ["st5"] + } + }, + { + name: "Motoori Kosuzu", + img: "55731651_p0.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Okunoda Miyoi", + img: "a5V63gx.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Miyadeguchi Mizuchi", + img: "mizuchi.png", + opts: { + series: ["book"], + stage: [] + } + }, + { + name: "Hakurei Reimu (PC-98)", + img: "54967865_p0.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { + name: "Shingyoku (Female)", + img: "54951994_p2.png", + opts: { + series: ["HRtP"], + stage: ["st1"] + } + }, + { + name: "Mima", + img: "odH03t2.png", + opts: { + series: ["HRtP", "SoEW", "PoDD", "MS"], + stage: ["st3", "st5", "st6"] + } + }, + { + name: "Elis", + img: "54920006_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Kikuri", + img: "54844833_p0.png", + opts: { + series: ["HRtP"], + stage: ["st5"] + } + }, + { + name: "Sariel", + img: "54828646_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Konngara", + img: "54904051_p3.png", + opts: { + series: ["HRtP"], + stage: ["st6"] + } + }, + { + name: "Rika", + img: "54726174_p0.png", + opts: { + series: ["SoEW"], + stage: ["st1", "ex"] + } + }, + { + name: "Meira", + img: "54696691_p1.png", + opts: { + series: ["SoEW"], + stage: ["st2"] + } + }, + { + name: "Kirisame Marisa (PC-98)", + img: "wxE7cBm.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: ["st4"], + pc98: true + } + }, + { name: "Ellen", img: "54274126_p9.png", opts: { + series: ["PoDD"], + stage: [] + } }, + { + name: "Kotohime", + img: "54182820_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kana Anaberal", + img: "51654664_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Asakura Rikako", + img: "54295880_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Kitashirakawa Chiyuri", + img: "51621241_p3.png", + opts: { + series: ["PoDD"], + stage: ["st5"] + } + }, + { + name: "Okazaki Yumemi", + img: "46178351_p0.png", + opts: { + series: ["PoDD"], + stage: ["st6"] + } + }, + { + name: "Ruukoto", + img: "54314843_p0.png", + opts: { + series: ["PoDD"], + stage: [] + } + }, + { + name: "Orange", + img: "54510211_p0.png", + opts: { + series: ["LLS"], + stage: ["st1"] + } + }, + { + name: "Kurumi", + img: "54488446_p0.png", + opts: { + series: ["LLS"], + stage: ["st2"] + } + }, + { + name: "Elly", + img: "51687174_p2.png", + opts: { + series: ["LLS"], + stage: ["st3"] + } + }, + { + name: "Yuuka (PC-98)", + img: "54531064_p10.png", + opts: { + series: ["LLS", "MS"], + stage: ["st5", "st6"], + pc98: true + } + }, + { + name: "Mugetsu", + img: "54353610_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Gengetsu", + img: "54332552_p0.png", + opts: { + series: ["LLS"], + stage: ["ex"] + } + }, + { + name: "Sara", + img: "54623124_p3.png", + opts: { + series: ["MS"], + stage: ["st1"] + } + }, + { + name: "Louise", + img: "54664361_p3.png", + opts: { + series: ["MS"], + stage: ["st2", "st4"] + } + }, + { + name: "Alice (PC-98)", + img: "54550636_p0.png", + opts: { + series: ["MS"], + stage: ["st3", "ex"], + pc98: true + } + }, + { + name: "Yuki", + img: "54623630_p0.png", + opts: { + series: ["MS"], + stage: ["st4"] + } + }, + { name: "Mai", img: "54570394_p0.png", opts: { + series: ["MS"], + stage: ["st4"] + } }, + { + name: "Yumeko", + img: "51638694_p1.png", + opts: { + series: ["MS"], + stage: ["st5"] + } + }, + { + name: "Shinki", + img: "46194333_p0.png", + opts: { + series: ["MS"], + stage: ["st6"] + } + }, + { + name: "Mimi-chan", + img: "26441341_p0.png", + opts: { + series: ["PoDD"], + stage: [], + notgirl: true + } + }, + { + name: "Unzan", + img: "56429772_p7.png", + opts: { + series: ["UFO", "DS", "HM", "ULiL", "AoCF"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Genji", + img: "54763493_p0.png", + opts: { + series: ["SoEW", "PoDD", "LLS", "MS"], + stage: [], + notgirl: true + } + }, + { + name: "Shingyoku (Male)", + img: "a5uwlgN.png", + opts: { + series: ["HRtP"], + stage: ["st1"], + notgirl: true + } + }, + { + name: "YuugenMagan", + img: "54935904_p25.png", + opts: { + series: ["HRtP"], + stage: ["st3"], + notgirl: true + } + }, + { + name: "Evil Eye Sigma", + img: "rAFUMwE.png", + opts: { + series: ["SoEW"], + stage: ["ex"], + notgirl: true + } + }, + { + name: "Great Catfish", + img: "BgRi9Oh.png", + opts: { + series: ["soku", "AoCF"], + stage: ["st6"], + notgirl: true, + nameless: true + } + }, + { + name: "Morichika Rinnosuke", + img: "42509836_p3.png", + opts: { + series: ["book", "HM"], + stage: [], + notgirl: true + } + }, + { + name: "Fortune Teller", + img: "55371904_p0.png", + opts: { + series: ["book"], + stage: [], + notgirl: true, + nameless: true + } + }, + { + name: "Hisoutensoku", + img: "P4JZ2it.png", + opts: { + series: ["soku"], + stage: [], + notgirl: true + } + } +]; diff --git a/src/js/main.js b/src/js/main.js index 231cc10c3..1f2902ba2 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -53,10 +53,21 @@ let totalBattles = 0; let sorterURL = window.location.host + window.location.pathname; let storedSaveType = localStorage.getItem(`${sorterURL}_saveType`); +const dateMap = Object.keys(dataSet) + .map((date) => ({ str: date, val: new Date(date) })) + .sort((date1, date2) => date2.val - date1.val); + /** Initialize script. */ function init() { + /** Adds changelog. */ + addChangelog(); + + /** Load saved dark mode setting. */ + loadDarkMode(); /** Define button behavior. */ + document.querySelector('.colorchange .toggle').addEventListener('click', () => toggleDarkMode()); + document.querySelector('.starting.start.button').addEventListener('click', start); document.querySelector('.starting.load.button').addEventListener('click', loadProgress); @@ -121,10 +132,10 @@ function init() { /** Show load button if save data exists. */ if (storedSaveType) { - document.querySelector('.starting.load.button > span').insertAdjacentText('beforeend', storedSaveType); + document.querySelector('.starting.load.button').insertAdjacentText('beforeend', storedSaveType); document.querySelectorAll('.starting.button').forEach(el => { el.style['grid-row'] = 'span 3'; - el.style.display = 'block'; + el.classList.remove("hidden"); }); } @@ -134,6 +145,63 @@ function init() { if (window.location.search.slice(1) !== '') decodeQuery(); } +/** Extracts changelogs from dataset and adds them to the page */ +function addChangelog() { + const tableBody = document.querySelector(".changelog tbody"); + + const changelogs = dateMap + .map(({ str, val }) => [val, dataSet[str].changelog]) + .filter(([_date, changelog]) => changelog) + .slice(0, 5); + + for (let [date, changelog] of changelogs) { + const tr1 = document.createElement("tr"); + + const dateTd = document.createElement("td"); + dateTd.rowSpan = changelog.length; + dateTd.textContent = date.toLocaleString( + "en-US", + { year: "numeric", month: "long", day: "numeric" } + ); + tr1.appendChild(dateTd); + + const log1Td = document.createElement("td"); + log1Td.textContent = changelog[0]; + tr1.appendChild(log1Td); + + tableBody.appendChild(tr1); + + changelog.slice(1).forEach((log) => { + const trN = document.createElement("tr"); + + const logNTd = document.createElement("td"); + logNTd.textContent = log; + trN.appendChild(logNTd); + + tableBody.appendChild(trN); + }); + } +} + +/** Load saved dark mode setting from local storage */ +function loadDarkMode() { + const darkMode = localStorage.getItem(`${sorterURL}_darkMode`); + if (["true", "false"].includes(darkMode)) { + toggleDarkMode(darkMode === "true"); + } else { + toggleDarkMode(window.matchMedia("(prefers-color-scheme: dark)").matches); + } +} + +/** Toggles between dark and light mode + * + * @param {Boolean | undefined} force + */ +function toggleDarkMode(force) { + document.body.classList.toggle("darkmode", force); + localStorage.setItem(`${sorterURL}_darkMode`, document.body.classList.contains("darkmode")); +} + /** Begin sorting. */ function start() { /** Copy data into sorting array to filter. */ @@ -259,16 +327,16 @@ function start() { /** Disable all checkboxes and hide/show appropriate parts while we preload the images. */ document.querySelectorAll('input[type=checkbox]').forEach(cb => cb.disabled = true); - document.querySelectorAll('.starting.button').forEach(el => el.style.display = 'none'); - document.querySelector('.loading.button').style.display = 'block'; - document.querySelector('.progress').style.display = 'block'; + document.querySelectorAll('.starting.button').forEach(el => el.classList.add("hidden")); + document.querySelector('.loading.button').classList.remove("hidden"); + document.querySelector('.progress').classList.remove("hidden"); loading = true; preloadImages().then(() => { loading = false; - document.querySelector('.loading.button').style.display = 'none'; - document.querySelectorAll('.sorting.button').forEach(el => el.style.display = 'block'); - document.querySelectorAll('.sort.text').forEach(el => el.style.display = 'block'); + document.querySelector('.loading.button').classList.add("hidden"); + document.querySelectorAll('.sorting.button').forEach(el => el.classList.remove("hidden")); + document.querySelectorAll('.sort.text').forEach(el => el.classList.remove("hidden")); display(); }); } @@ -469,14 +537,14 @@ function progressBar(indicator, percentage) { * @param {number} [imageNum=3] Number of images to display. Defaults to 3. */ function result(imageNum = 3) { - document.querySelectorAll('.finished.button').forEach(el => el.style.display = 'block'); - document.querySelector('.image.selector').style.display = 'block'; - document.querySelector('.time.taken').style.display = 'block'; + document.querySelectorAll('.finished.button').forEach(el => el.classList.remove("hidden")); + document.querySelector('.image.selector').classList.remove("hidden"); + document.querySelector('.time.taken').classList.remove("hidden"); - document.querySelectorAll('.sorting.button').forEach(el => el.style.display = 'none'); - document.querySelectorAll('.sort.text').forEach(el => el.style.display = 'none'); - document.querySelector('.options').style.display = 'none'; - document.querySelector('.info').style.display = 'none'; + document.querySelectorAll('.sorting.button').forEach(el => el.classList.add("hidden")); + document.querySelectorAll('.sort.text').forEach(el => el.classList.add("hidden")); + document.querySelector('.options').classList.add("hidden"); + document.querySelector('.info').classList.add("hidden"); const header = '<div class="result head"><div class="left">Order</div><div class="right">Name</div></div>'; const timeStr = `This sorter was completed on ${new Date(timestamp + timeTaken).toString()} and took ${msToReadableTime(timeTaken)}. <a href="${location.protocol}//${sorterURL}">Do another sorter?</a>`; @@ -525,7 +593,7 @@ function result(imageNum = 3) { /** Undo previous choice. */ function undo() { - if (timeTaken) { return; } + if (timeTaken || battleNo === 1) { return; } choices = battleNo === battleNoPrev ? choices : choices.slice(0, -1); @@ -583,8 +651,8 @@ function clearProgress() { localStorage.removeItem(`${sorterURL}_saveData`); localStorage.removeItem(`${sorterURL}_saveType`); - document.querySelectorAll('.starting.start.button').forEach(el => el.style['grid-row'] = 'span 6'); - document.querySelectorAll('.starting.load.button').forEach(el => el.style.display = 'none'); + document.querySelectorAll('.starting.start.button').forEach(el => el.style['grid-row'] = null); + document.querySelectorAll('.starting.load.button').forEach(el => el.classList.add("hidden")); } function generateImage() { @@ -592,14 +660,19 @@ function generateImage() { const tzoffset = (new Date()).getTimezoneOffset() * 60000; const filename = 'sort-' + (new Date(timeFinished - tzoffset)).toISOString().slice(0, -5).replace('T', '(') + ').png'; - html2canvas(document.querySelector('.results')).then(canvas => { + html2canvas(document.querySelector('.results'), { + backgroundColor: getComputedStyle(document.body).backgroundColor, + }).then(canvas => { const dataURL = canvas.toDataURL(); const imgButton = document.querySelector('.finished.getimg.button'); const resetButton = document.createElement('a'); + const imgButtonCont = document.createElement('div'); + imgButton.removeEventListener('click', generateImage); imgButton.innerHTML = ''; - imgButton.insertAdjacentHTML('beforeend', `<a href="${dataURL}" download="${filename}">Download Image</a><br><br>`); + imgButton.appendChild(imgButtonCont); + imgButtonCont.insertAdjacentHTML('beforeend', `<a href="${dataURL}" download="${filename}">Download Image</a><br><br>`); resetButton.insertAdjacentText('beforeend', 'Reset'); resetButton.addEventListener('click', (event) => { @@ -607,7 +680,7 @@ function generateImage() { imgButton.innerHTML = 'Generate Image'; event.stopPropagation(); }); - imgButton.insertAdjacentElement('beforeend', resetButton); + imgButtonCont.insertAdjacentElement('beforeend', resetButton); }); } @@ -632,15 +705,10 @@ function setLatestDataset() { timeTaken = 0; choices = ''; - const latestDateIndex = Object.keys(dataSet) - .map(date => new Date(date)) - .reduce((latestDateIndex, currentDate, currentIndex, array) => { - return currentDate > array[latestDateIndex] ? currentIndex : latestDateIndex; - }, 0); - currentVersion = Object.keys(dataSet)[latestDateIndex]; + currentVersion = dateMap[0].str; - characterData = dataSet[currentVersion].characterData; options = dataSet[currentVersion].options; + characterData = dataSet[currentVersion].characterData; populateOptions(); } @@ -711,16 +779,10 @@ function decodeQuery(queryString = window.location.search.slice(1)) { * If timestamp is before or after any of the datasets, get the closest one. * If timestamp is between any of the datasets, get the one in the past, but if timeError is set, get the one in the future. */ - const seedDate = { str: timestamp, val: new Date(timestamp) }; - const dateMap = Object.keys(dataSet) - .map(date => { - return { str: date, val: new Date(date) }; - }) - const beforeDateIndex = dateMap - .reduce((prevIndex, currDate, currIndex) => { - return currDate.val < seedDate.val ? currIndex : prevIndex; - }, -1); - const afterDateIndex = dateMap.findIndex(date => date.val > seedDate.val); + const seedDate = new Date(timestamp); + const beforeDateIndex = dateMap.findIndex((date) => date.val < seedDate); + const afterDateIndex = (dateMap.length - 1) - dateMap.slice().reverse() + .findIndex((date) => date.val > seedDate); if (beforeDateIndex === -1) { currentVersion = dateMap[afterDateIndex].str;