AnyhowStep / pump-out-sqlite3-dump

Periodic data dumps of the Pump Out website! https://pumpout2.anyhowstep.com:17593/
13 stars 3 forks source link

Help with entering Phoenix data #8

Open aaaaaa2493 opened 1 year ago

aaaaaa2493 commented 1 year ago

Hi! Do you need help with entering Phoenix data? I'm running https://piurandom.com/ using your database and I'm interested in updating DB to the new mix as fast as possible

So far, there's this table with all the reratings. https://docs.google.com/spreadsheets/d/1y4cZ_CTQJbj7KvuLq3gOB_MiHQUWFyhnUfKy3g18IN8/htmlview#

It's not final since it's from dev build but I want to create a script that generates SQL queries to update all the tables. This table is just for training and then I'll generate a script based on final data. I think entering data into excel sheet is far easier than manually creating SQL queries :)

noahm commented 1 year ago

Hi, chiming in to say that I'll be around to help if I can as well. The PIU data from here I added ddr.tools a while ago has been a hit! It's already been used at tournaments like CEO Storm this past month!

aaaaaa2493 commented 1 year ago

@noahm @AnyhowStep Hi. I updated Pumpout SQLite database myself, both Phoenix v1.00.1 and patch Phoenix v1.01.0. So, I wrote some Python code that generates SQL-only updates, and here are my results:

  1. Phoenix v1.00.1.zip contains Phoenix v1.00.1.sql with 80K lines (most of these are all the reratings)
  2. Phoenix v1.01.0.zip contains Phoenix v1.01.0.sql which is pretty light on SQL queries (3K lines only)

The first update is meant to be executed on the latest XX v2.08 Pumpout SQLIte database. The second - after the first. If you don't want to execute all the requests, I already generated database version - pumpout.zip

I checked all songs and charts with the nevsister's full song list video and didn't spot any mistakes with my database version. However, there's a small chance that I didn't spot something.

Also, I don't know song identifiers for new songs, so I generated them in the format id=17XX_AABB where AA - patch index, BB - song index within a patch. Example: id=17XX_0106.

Also, I generated all cards in the following format: /img/card/{song_title}.png. Here are the cards1.zip and cards2.zip (splitted because of github's 25MB size limit on attachments) with the same format, so you can just place them in the /img/card/ folder, but you may want to resize them to a smaller images first).

If there are some mistakes in the update, I can fix them. Also, I can provide my Python script which makes updating database with new patches easy.

noahm commented 1 year ago

Wow that looks like quite a bit of work! Thanks for sharing, too! I'll try importing this into ddr.tools soon

aaaaaa2493 commented 1 year ago

For what exactly was changed here's the summary:

Authors added (if they don't exist already) ``` (G)I-DLE DASU Dreamcatcher EBIMAYO GUMI HIGHLIGHT Hyun IVE Kagamine Len kanone litmus* MAX MIIM Morimori Atsushi ryhki sakuzyo SHK Sobrem STAYC Tanchiky xi Yeon Ja Kim Zekk KOYOTE MONSTA X onoken RiraN TYPHOON ```
Stepmakers added (if they don't exist already) ``` CONRAD Dulki EXC FEFEMZ NIMGO SPHAM SUNNY ```
New songs added ``` BOCA BOCA S3 BOCA S5 BOCA S9 BOCA S14 BOCA S17 BOCA S19 BOCA S21 BOCA D15 BOCA D19 BOCA D21 BOCA D23 Nxde Nxde S2 Nxde S4 Nxde S6 Nxde S11 Nxde S14 Nxde S16 Nxde D8 Nxde D15 Nxde D17 Nxde CoOp(x2) Teddy Bear Teddy Bear S2 Teddy Bear S4 Teddy Bear S6 Teddy Bear S9 Teddy Bear S14 Teddy Bear S17 Teddy Bear D7 Teddy Bear D15 Teddy Bear D18 Teddy Bear CoOp(x2) Alone Alone S1 Alone S3 Alone S5 Alone S8 Alone S15 Alone S17 Alone D6 Alone D16 Alone D18 Amor Fati Amor Fati S2 Amor Fati S4 Amor Fati S6 Amor Fati S15 Amor Fati S18 Amor Fati S21 Amor Fati D16 Amor Fati D19 Amor Fati D23 After LIKE After LIKE S1 After LIKE S4 After LIKE S6 After LIKE S9 After LIKE S13 After LIKE S15 After LIKE S18 After LIKE D7 After LIKE D15 After LIKE D17 After LIKE D20 After LIKE CoOp(x2) VECTOR VECTOR S8 VECTOR S14 VECTOR S18 VECTOR S22 VECTOR D15 VECTOR D20 VECTOR D24 Versailles Versailles S7 Versailles S10 Versailles S16 Versailles S19 Versailles S20 Versailles D12 Versailles D20 Versailles D23 Showdown Showdown S6 Showdown S10 Showdown S14 Showdown S17 Showdown S20 Showdown D11 Showdown D16 Showdown D18 Showdown D22 Euphorianic Euphorianic S3 Euphorianic S5 Euphorianic S8 Euphorianic S11 Euphorianic S16 Euphorianic S19 Euphorianic D10 Euphorianic D18 Euphorianic D21 Jupin Jupin S12 Jupin S17 Jupin S19 Jupin S21 Jupin S23 Jupin D14 Jupin D18 Jupin D23 Jupin D25 Etude Op 10-4 Etude Op 10-4 S4 Etude Op 10-4 S7 Etude Op 10-4 S11 Etude Op 10-4 S16 Etude Op 10-4 S22 Etude Op 10-4 D13 Etude Op 10-4 D17 Etude Op 10-4 D25 GOODTEK GOODTEK S8 GOODTEK S12 GOODTEK S16 GOODTEK S18 GOODTEK S21 GOODTEK D12 GOODTEK D16 GOODTEK D20 GOODTEK D24 CO5M1C R4ILR0AD CO5M1C R4ILR0AD S10 CO5M1C R4ILR0AD S15 CO5M1C R4ILR0AD S18 CO5M1C R4ILR0AD S21 CO5M1C R4ILR0AD D13 CO5M1C R4ILR0AD D19 CO5M1C R4ILR0AD D22 Energy Synergy Matrix Energy Synergy Matrix S7 Energy Synergy Matrix S11 Energy Synergy Matrix S16 Energy Synergy Matrix S18 Energy Synergy Matrix S20 Energy Synergy Matrix D13 Energy Synergy Matrix D19 Energy Synergy Matrix D22 MilK MilK S7 MilK S11 MilK S15 MilK S17 MilK S20 MilK D11 MilK D16 MilK D19 MilK D22 Acquire Acquire S7 Acquire S11 Acquire S15 Acquire S17 Acquire S20 Acquire D12 Acquire D16 Acquire D19 Acquire D23 Acquire CoOp(x3) Pneumonoultramicroscopicsilicovolcanoconiosis Pneumonoultramicroscopicsilicovolcanoconiosis S12 Pneumonoultramicroscopicsilicovolcanoconiosis S16 Pneumonoultramicroscopicsilicovolcanoconiosis S19 Pneumonoultramicroscopicsilicovolcanoconiosis D22 Altale Altale S2 Altale S6 Altale S9 Altale S12 Altale S15 Altale S18 Altale S21 Altale D6 Altale D16 Altale D19 Altale D23 Halcyon Halcyon S12 Halcyon S18 Halcyon S20 Halcyon S22 Halcyon D12 Halcyon D20 Halcyon D24 Beautiful Liar Beautiful Liar S2 Beautiful Liar S4 Beautiful Liar S6 Beautiful Liar S13 Beautiful Liar S15 Beautiful Liar S17 Beautiful Liar D9 Beautiful Liar D16 Beautiful Liar D18 STORM STORM S2 STORM S4 STORM S6 STORM S9 STORM S14 STORM S17 STORM D8 STORM D16 STORM D19 GOODBOUNCE GOODBOUNCE S4 GOODBOUNCE S7 GOODBOUNCE S12 GOODBOUNCE S16 GOODBOUNCE S20 GOODBOUNCE D13 GOODBOUNCE D18 GOODBOUNCE D21 GOODBOUNCE CoOp(x2) BOOOM!! BOOOM!! S7 BOOOM!! S10 BOOOM!! S15 BOOOM!! S17 BOOOM!! S20 BOOOM!! D12 BOOOM!! D16 BOOOM!! D18 BOOOM!! D22 KUGUTSU KUGUTSU S18 KUGUTSU S20 KUGUTSU S23 KUGUTSU S25 KUGUTSU D21 KUGUTSU D23 KUGUTSU D25 KUGUTSU D27 Airplane Airplane S1 Airplane S3 Airplane S5 Airplane S13 Airplane S15 Airplane S17 Airplane D8 Airplane D16 Airplane D18 ```
Removed deleted songs add their charts that exist in XX 2.08 ``` The Little Prince (Prod. Godic) Black Cat Hann (Alone) Snapping Nekkoya (Pick Me) I'm So Sick Boomerang Gashina Adios HIT BBoom BBoom Rooftop Bungee (Fall in Love) Starry Night Love Scenario Time for the Moon Night Bon Bon Chocolat Very Nice Good Bye King of Sales Gotta Go Boong Boong (Feat. Sik-K) (Prod. GroovyRoom) Conflict HANN (Alone) - FULL SONG - NEKKOYA(PICK ME) - FULL SONG - BBoom BBoom [FULL] I'm so sick - FULL SONG - Gashina - FULL SONG - Starry Night - FULL SONG - Time for the moon night - FULL SONG - VERY NICE - FULL SONG - GOOD BYE - FULL SONG - Energetic Beautiful Pick Me Really Really Moon Light Dance Just Kiddin Seize My Day Creed - 1st Desire - Sora no Shirabe FOUR SEASONS OF LONELINESS ver B feat. Sariyajin Ai, Yurete... Setsuna Trip Trashy Innocence Renai Yuusha Houkago Stride Bad ~ End ~ Night FOUR SEASONS OF LONELINESS verB feat. Sariyajin - FULL SONG Creed - 1st Desire - [FULL SONG] ```
Removed deleted charts which songs weren't deleted ``` Dolly Kiss S3 Hi Bi S3 Silver Beat feat. ChisaUezono S4 Arch of Darkness S4 Bee S4 Emperor S5 Final Audition S6 Silver Beat feat. ChisaUezono S7 Naissance S7 Repeatorment Remix S7 Turkey Virus S8 Arch of Darkness S8 Beat of the War S11 Dance With Me S12 Mission Possible S13 We Will Meet Again S14 Naissance S16 Move That Body! [FULL] S17 We Got 2 Know S20 Gargoyle [FULL] S21 La Cinquantaine S22 1949 S26 Chopsticks Challenge D3 Beat the Ghost D7 Arch of Darkness D7 Papa Gonzales D7 Mission Possible D8 Repeatorment Remix D8 Hello D9 Money D10 Guitar Man D10 Betrayer D11 Guitar Man D13 Chicken Wing D13 Beat of the War D13 Chinese Restaurant D16 Arch of Darkness D20 Indestructible D21 Phalanx "RS2018 edit" D22 La Cinquantaine D24 Allegro Con Fuoco SP1 Smells Like a Chocolate SP1 Xenesis SP1 Chopsticks Challenge SP1 Higgledy Piggledy SP1 First Love SP1 Free Style SP1 Interference SP2 Butterfly SP2 Overblow SP2 We Got 2 Know SP2 Gargoyle SP2 Hungarian Dance V SP2 X-Rave SP2 Native SP2 Necromancy SP2 Pavane SP2 XTREE SP2 U Got 2 Know SP2 Jam O Beat SP2 My Way SP2 Oy Oy Oy SP2 Pump Jump SP2 N SP2 Betrayer SP2 Close Your Eye SP2 Yoropiku Pikuyoro! SP3 Betrayer -Act. 2- SP3 Mission Possible -Blowback- SP3 Toccata SP3 Witch Doctor #1 SP3 Solitary 2 SP3 Final Audition 3 SP3 Naissance 2 SP3 Come to Me SP3 Emperor SP3 Point Break SP3 Miss S' Story SP3 Solitary SP3 Reality SP4 Do It reggae Style SP4 Pumping Jumping SP4 Solitary 1.5 SP4 Money SP4 Street Show Down SP4 Set Me Up SP4 Dance With Me SP4 Midnight Blue SP4 Tek -Club Copenhagen- SP5 Monkey Fingers SP5 Pumptris Quattro SP10 Extravaganza - SHORT CUT SP15 Pumptris 8Bit ver. SP15 Pop Sequence SP18 Turkey March -Minimal Tunes- DP1 La Cinquantaine DP2 Poseidon DP2 Broken Karma (PIU Edit) DP2 Dement ~After Legend~ DP2 Arcana Force DP2 Awakening DP2 Step DP2 V3 DP2 Elysium DP2 Super Fantasy DP2 Cosmical Rhythm DP2 Milky Way Galaxy DP2 Feel My Happiness DP2 Bad Apple!! feat. Nomico DP2 Just Hold On (To All Fighters) DP2 Like Me DP2 Reality DP2 Arirang DP2 Final Audition Ep. 2-X DP2 Pumptris Quattro DP2 Transacaglia in G-minor DP3 Janus DP3 Iolite Sky DP3 Macaron Day DP3 Ice of Death DP3 Tales of Pumpnia DP3 Orbit Stabilizer DP3 Full Moon DP3 Fly High DP3 You and I DP3 8 6 DP3 Lala DP3 Danger & Danger DP3 Obelisque DP3 Rage of Fire DP3 Rising Star DP3 Cutie Song DP3 Loki DP3 Phalanx "RS2018 edit" DP3 Point Zero 2 DP3 Can-Can ~Orpheus in the Party Mix~ DP3 Papasito (feat. KuTiNA) DP3 Fires of Destiny DP3 The End of the World ft. Skizzo DP3 Last Rebirth DP3 Shub Niggurath DP3 Further DP3 Silver Beat feat. ChisaUezono DP3 Kasou Shinja DP3 Overblow2 DP3 Passing Rider DP3 Anguished Unmaking DP3 Travel to Future DP3 Rave'til the Earth's End DP3 Waltz of Doge DP3 Chase Me DP3 Good Night DP3 Heart Attack DP3 Cross Time DP3 Start On Red DP3 Time Attack DP3 Magical Vacation DP3 Visual Dream2 (In Fiction) DP3 Death Moon DP3 Keep On! DP3 Asterios -ReEntry- DP3 Fallen Angel DP3 Latino Virus DP3 Chinese Restaurant DP3 Avalanche DP3 Force of Ra DP3 B2 DP3 Meteorize DP3 Hestia DP3 Leakage Voltage DP3 Removable Disk0 DP3 Blaze emotion (Band version) DP3 1950 DP3 Move That Body! DP3 Rock the House DP3 Scorpion King DP3 The Revolution DP3 Selfishness DP3 Dolly Kiss DP3 Matador DP3 Ragnarok DP3 Achluoias DP3 Stardust Overdrive DP3 Reminiscence DP3 Amai Yuuwaku Dangerous DP3 Prime DP3 Queen of the Red DP3 U Got Me Rocking DP3 Interference DP3 Butterfly DP3 Overblow DP3 We Got 2 Know DP3 Native DP3 Smells Like a Chocolate DP3 Necromancy DP3 XTREE DP3 Betrayer -Act. 2- DP3 Vacuum DP3 Get Up (and Go) DP3 Phantom -Intermezzo- DP3 Emperor DP3 Till the End of Time DP3 Oy Oy Oy DP3 Beethoven Virus DP3 Final Audition 2 DP3 Close Your Eye DP3 Free Style DP3 Final Audition DP3 Wedding Crashers DP4 Switronic DP4 1949 DP4 District 1 DP4 Nyarlathotep DP4 Lepton Strike DP4 Skeptic DP4 %X (Percent X) DP4 CARMEN BUS DP4 Adrenaline Blaster DP4 Vanish DP4 Kimchi Fingers DP4 Wicked Legend DP4 TanTanMen DP4 Timing DP4 CROSS SOUL DP4 After a thousand years DP4 F(R)IEND DP4 Black Swan DP4 Dual Racing DP4 Cycling! DP4 Uranium DP4 Your Mind DP4 Nihilism - Another Ver.- DP4 Forgotten Vampire DP4 Super Capriccio DP4 Hellfire DP4 Tritium DP4 CROSS OVER feat. LyuU DP4 God Mode feat. skizzo DP4 Sarabande DP4 Allegro Furioso DP4 Hey U DP4 Twist of Fate (feat. Ruriling) DP4 HTTP DP4 Escape DP4 Nakakapagpabagabag DP4 HUSH DP4 Hyperion DP4 Black Dragon DP4 Super Stylin' DP4 Christmas Memories DP4 Infinity DP4 Gothique Resonance DP4 Bedlam DP4 Clue DP4 Kill Them! DP4 Donatello DP4 Nemesis DP4 Katkoi DP4 Silhouette Effect DP4 Requiem DP4 You Got Me Crazy DP4 Amphitryon DP4 Violet Perfume DP4 Red Swan DP4 Hyacinth DP4 Allegro Piu Mosso DP4 Annihilator Method DP4 Point Zero One DP4 Red Snow DP4 You again my love DP4 Karyawisata DP4 video out c DP4 Yoropiku Pikuyoro! DP4 Imprinting DP4 Sudden Romance [PIU Edit] DP4 Mitotsudaira DP4 Hypercube DP4 U Got 2 Know DP4 Tek -Club Copenhagen- DP4 My Way DP4 Set Me Up DP4 Dance With Me DP4 Pump Jump DP4 First Love DP4 Obliteration DP5 I Want U DP5 HEART RABBIT COASTER DP5 Le Grand Rouge DP5 Club Night DP5 Indestructible DP5 Imagination DP5 Xeroize DP5 Bring Back the Beat DP5 Utsushiyo No Kaze feat. Kana DP5 Up & Up (Produced by AWAL) DP5 The Festival of Ghost2 (Sneak) DP5 Helix DP5 BSPower Explosion DP5 Redline DP5 Yog-Sothoth DP5 Mad5cience DP5 Sugar Conspiracy Theory DP5 Campanella DP5 Robot Battle DP5 Moment Day DP5 Smile Diary DP5 Destination DP5 Do It reggae Style DP5 Mission Possible -Blowback- DP5 Pumping Jumping DP5 My Dreams DP5 2006 Love Song DP5 J Bong DP5 Final Audition 3 DP5 Naissance 2 DP5 Miss S' Story DP5 N DP5 Solitary DP5 A Nightmare DP5 Midnight Blue DP5 Le Grand Bleu DP6 Allegro Con Fuoco DP6 X-Rave DP6 Pumping Jumping DP6 Toccata DP6 Solitary 1.5 DP6 Jam O Beat DP6 Solitary 2 DP6 BanYa HipHop Remix DP6 Come to Me DP6 My Way DP6 Point Break DP6 Street Show Down DP6 Dance With Me DP6 Witch Doctor #1 DP7 Phantom DP7 Set Me Up DP7 Do U Know That-Old School DP8 Red Swan DP20 Pop Sequence DP22 Reminiscence DP23 Prime Time DP24 Yeo Rae A COOP(X5) ```
Rerated charts ``` God Mode 2.0 feat. Skizzo S18 -> S17 Kokugen Kairou Labyrinth S12 -> S13 Wedding Crashers D22 -> D23 Switronic S18 -> S17 Switronic D19 -> D18 Obliteration S11 -> S10 Obliteration S14 -> S15 Obliteration S17 -> S18 Obliteration D15 -> D16 Transacaglia in G-minor D21 -> D20 1949 D21 -> D22 I Want U S11 -> S12 I Want U S16 -> S17 I Want U S19 -> S20 I Want U D13 -> D14 I Want U D17 -> D18 I Want U D21 -> D22 Sugar Plum S18 -> S19 Sugar Plum D16 -> D17 Nyarlathotep S12 -> S13 Nyarlathotep S16 -> S17 Nyarlathotep D16 -> D17 HEART RABBIT COASTER S11 -> S10 Lepton Strike S22 -> S21 Skeptic S18 -> S19 Iolite Sky D17 -> D18 %X (Percent X) S17 -> S18 %X (Percent X) S19 -> S20 La Cinquantaine S6 -> S5 La Cinquantaine S10 -> S9 La Cinquantaine D12 -> D13 La Cinquantaine D16 -> D17 Le Grand Rouge S17 -> S18 Ice of Death S10 -> S11 Ice of Death D11 -> D12 Ice of Death D21 -> D20 Poseidon S14 -> S15 Poseidon S20 -> S21 Adrenaline Blaster S14 -> S15 Adrenaline Blaster D18 -> D19 Adrenaline Blaster D22 -> D23 Vanish D9 -> D10 Vanish D12 -> D13 Tales of Pumpnia S16 -> S17 Tales of Pumpnia S19 -> S20 Tales of Pumpnia D13 -> D14 Tales of Pumpnia D17 -> D18 Tales of Pumpnia D20 -> D21 Kimchi Fingers D16 -> D17 Orbit Stabilizer S6 -> S4 DESTRUCIMATE S8 -> S9 DESTRUCIMATE S22 -> S21 DESTRUCIMATE D15 -> D14 DESTRUCIMATE D24 -> D23 Clematis Rapsodia D12 -> D13 Wicked Legend S15 -> S16 Wicked Legend S19 -> S20 TanTanMen D23 -> D24 Stardream (feat. Romelon) D15 -> D16 Slapstick Parfait D12 -> D13 Paved Garden D13 -> D14 Paved Garden D17 -> D18 Pop Sequence D12 -> D13 Crossing Delta S12 -> S13 Crossing Delta S16 -> S17 Crossing Delta D13 -> D14 Crossing Delta D17 -> D18 Timing S17 -> S18 Timing D18 -> D19 You and I S13 -> S14 You and I D25 -> D24 Club Night S8 -> S9 Club Night S16 -> S17 Club Night S18 -> S19 Indestructible S8 -> S9 Indestructible S13 -> S12 Indestructible D14 -> D15 Broken Karma (PIU Edit) S10 -> S11 After a thousand years S20 -> S19 After a thousand years D21 -> D20 Lala S15 -> S14 Lala D7 -> D8 Danger & Danger D15 -> D14 Imagination S17 -> S18 Black Swan S14 -> S15 Obelisque D11 -> D12 Rage of Fire D10 -> D11 Dual Racing D20 -> D19 Dual Racing D22 -> D21 Cycling! S20 -> S19 Cycling! D21 -> D20 Uranium S16 -> S15 Uranium D11 -> D12 Rising Star S10 -> S11 Rising Star D11 -> D12 Headless Chicken S5 -> S6 Over The Horizon S15 -> S14 Loki S19 -> S20 Loki D19 -> D20 Dement ~After Legend~ D21 -> D20 Houseplan D18 -> D19 Your Mind S14 -> S15 Nihilism - Another Ver.- D23 -> D22 Brain Power S18 -> S19 Gloria D24 -> D25 Can-Can ~Orpheus in the Party Mix~ S22 -> S21 Papasito (feat. KuTiNA) S6 -> S7 The End of the World ft. Skizzo S17 -> S16 The End of the World ft. Skizzo D8 -> D7 The End of the World ft. Skizzo D21 -> D22 Repentance D12 -> D13 The Reverie D21 -> D22 Mopemope S20 -> S21 Mopemope D16 -> D17 Mopemope D23 -> D24 CROSS RAY S22 -> S21 Cygnus S22 -> S21 Cygnus D24 -> D23 Brown Sky S24 -> S25 Papasito (feat. KuTiNA) - FULL SONG - D21 -> D20 MeteoScience (GADGET mix) D19 -> D18 Prime Time D21 -> D20 Fire Noodle Challenge S20 -> S19 Fire Noodle Challenge D21 -> D20 Switronic - SHORT CUT - S10 -> S9 Switronic - SHORT CUT - S18 -> S17 Switronic - SHORT CUT - D5 -> D4 Switronic - SHORT CUT - D12 -> D11 Switronic - SHORT CUT - D18 -> D17 86- FULL SONG - S16 -> S15 Baroque Virus - FULL SONG - S16 -> S15 Baroque Virus - FULL SONG - S19 -> S18 Last Rebirth S8 -> S9 Last Rebirth S15 -> S16 Last Rebirth D7 -> D8 Last Rebirth D16 -> D17 Super Capriccio S11 -> S12 Hellfire D9 -> D10 God Mode feat. skizzo S5 -> S4 Shub Niggurath S15 -> S16 Further S10 -> S11 Further S15 -> S16 The Quick Brown Fox Jumps Over The Lazy Dog S10 -> S11 The Quick Brown Fox Jumps Over The Lazy Dog D15 -> D16 Silver Beat feat. ChisaUezono S12 -> S13 Silver Beat feat. ChisaUezono D7 -> D8 Silver Beat feat. ChisaUezono D12 -> D13 Bring Back the Beat D8 -> D9 Kasou Shinja S20 -> S21 Kasou Shinja D23 -> D24 Overblow2 S9 -> S10 Overblow2 D7 -> D8 Overblow2 D14 -> D15 Allegro Furioso S5 -> S6 Allegro Furioso S10 -> S11 Allegro Furioso S17 -> S18 Anguished Unmaking S17 -> S18 Anguished Unmaking D9 -> D10 Anguished Unmaking D18 -> D19 HTTP D10 -> D11 HTTP D12 -> D13 HTTP D23 -> D24 Up & Up (Produced by AWAL) D9 -> D10 Up & Up (Produced by AWAL) D20 -> D21 Travel to Future D12 -> D13 Rave'til the Earth's End D13 -> D14 Good Night S5 -> S6 Good Night D5 -> D6 Nakakapagpabagabag S10 -> S11 Heart Attack D9 -> D10 Heart Attack D20 -> D21 HUSH S14 -> S15 HUSH D6 -> D7 V3 D9 -> D10 Helix D11 -> D12 Helix D15 -> D16 Hyperion S5 -> S4 Hyperion S18 -> S17 Black Dragon S5 -> S4 Black Dragon S20 -> S21 Black Dragon D11 -> D12 BSPower Explosion S11 -> S12 Start On Red S15 -> S16 Start On Red D12 -> D13 Start On Red D18 -> D19 Visual Dream2 (In Fiction) D10 -> D11 Death Moon S11 -> S12 Super Stylin' S7 -> S6 Super Stylin' S9 -> S8 Super Stylin' D9 -> D10 Keep On! S12 -> S13 Keep On! D12 -> D13 Asterios -ReEntry- S11 -> S10 Le Grand Bleu D9 -> D10 Gothique Resonance S7 -> S8 Gothique Resonance S20 -> S21 Gothique Resonance D12 -> D13 Bedlam D13 -> D15 A Site De La Rue S8 -> S9 A Site De La Rue D12 -> D14 Clue D10 -> D12 Clue D22 -> D21 Redline S10 -> S11 Redline D15 -> D16 Kill Them! D9 -> D10 Donatello S21 -> S22 Fallen Angel S10 -> S11 Fallen Angel D10 -> D11 Fallen Angel D15 -> D16 Vulcan S18 -> S19 Gargoyle [FULL] S20 -> S21 Sarabande - SHORT CUT S9 -> S10 Sarabande - SHORT CUT D18 -> D19 Death Moon - SHORT CUT D18 -> D19 PRIME2 Opening - SHORT CUT D18 -> D19 Nemesis S11 -> S10 Katkoi S7 -> S8 Katkoi S10 -> S11 Latino Virus D12 -> D13 Elysium S8 -> S9 Silhouette Effect D12 -> D13 Chinese Restaurant D10 -> D11 Avalanche S6 -> S7 Avalanche S9 -> S11 Avalanche D11 -> D13 Force of Ra S7 -> S8 Requiem S11 -> S12 Requiem D9 -> D10 You Got Me Crazy S9 -> S10 B2 D12 -> D13 Meteorize S15 -> S16 Meteorize S17 -> S18 Meteorize D8 -> D9 Meteorize D16 -> D17 Meteorize D18 -> D19 Mad5cience D7 -> D9 Hestia D11 -> D12 Hestia D20 -> D21 Amphitryon D12 -> D13 Amphitryon D20 -> D21 Leakage Voltage S10 -> S12 Leakage Voltage D12 -> D14 Leakage Voltage D22 -> D23 Removable Disk0 D5 -> D6 Super Fantasy D11 -> D12 Violet Perfume D10 -> D12 Hyacinth S9 -> S10 Hyacinth S13 -> S14 Hyacinth D12 -> D13 Hyacinth D19 -> D20 Blaze emotion (Band version) S8 -> S9 Blaze emotion (Band version) D4 -> D5 Annihilator Method S10 -> S11 Annihilator Method S15 -> S16 Annihilator Method D13 -> D15 Move That Body! S8 -> S10 Move That Body! D10 -> D12 Rock the House S7 -> S8 Point Zero One S9 -> S10 Red Snow D23 -> D22 Campanella D10 -> D12 Campanella D16 -> D17 Robot Battle S13 -> S14 Robot Battle S18 -> S19 Robot Battle D13 -> D14 The Revolution S11 -> S12 Cosmical Rhythm S3 -> S4 Cosmical Rhythm D10 -> D11 Cosmical Rhythm D18 -> D19 Dolly Kiss D15 -> D16 Milky Way Galaxy D11 -> D13 Milky Way Galaxy D18 -> D19 Feel My Happiness S3 -> S4 Feel My Happiness S10 -> S11 Ragnarok S7 -> S8 Ragnarok S11 -> S12 Ragnarok S20 -> S21 Achluoias D13 -> D14 Achluoias D16 -> D17 Karyawisata S15 -> S14 Karyawisata D16 -> D17 video out c S10 -> S11 Reminiscence S15 -> S16 Reminiscence D10 -> D11 Reminiscence D19 -> D20 Moment Day D9 -> D11 Amai Yuuwaku Dangerous D5 -> D6 Yoropiku Pikuyoro! S9 -> S10 Imprinting S7 -> S8 Imprinting D13 -> D14 Sudden Romance [PIU Edit] D8 -> D9 Mitotsudaira D10 -> D12 Smile Diary D8 -> D9 Bad Apple!! feat. Nomico D10 -> D11 Prime D12 -> D13 Prime D20 -> D21 Queen of the Red S11 -> S12 Queen of the Red D12 -> D14 Idealized Romance D10 -> D11 Just Hold On (To All Fighters) S10 -> S11 Just Hold On (To All Fighters) D12 -> D15 Just Hold On (To All Fighters) D18 -> D19 Break It Down D12 -> D13 Hypercube D10 -> D11 Like Me S18 -> S19 Like Me D11 -> D13 Like Me D19 -> D20 Bad Apple!! feat. Nomico [FULL] D11 -> D12 Yog-Sothoth - SHORT CUT S13 -> S14 Pop the Track S9 -> S10 Pop the Track D9 -> D11 Passacaglia S7 -> S8 Passacaglia S11 -> S12 Passacaglia D13 -> D14 Baroque Virus S9 -> S10 Baroque Virus D11 -> D13 Elise S10 -> S11 Ignis Fatuus (DM Ashura Mix) S10 -> S12 Ignis Fatuus (DM Ashura Mix) S15 -> S16 Love is a Danger Zone (Cranky Mix) S6 -> S7 Love is a Danger Zone (Cranky Mix) S13 -> S14 FFF S11 -> S13 FFF D13 -> D15 Accident S11 -> S13 Accident D11 -> D13 D S10 -> S11 D D12 -> D14 D D18 -> D19 U Got Me Rocking S8 -> S9 U Got Me Rocking D4 -> D5 Lucid (PIU Edit) S11 -> S13 Lucid (PIU Edit) D11 -> D14 Log In S4 -> S5 Log In D10 -> D12 Follow Me D9 -> D10 Mental Rider D13 -> D15 Mental Rider D19 -> D20 Infinity RMX S20 -> S19 Ladybug S13 -> S14 Ladybug D13 -> D14 Hardkore of the North S11 -> S12 Hardkore of the North S21 -> S22 Tribe Attacker S3 -> S4 Tribe Attacker S6 -> S5 Utopia S9 -> S10 Utopia D9 -> D13 Xuxa S9 -> S10 Star Command S12 -> S13 Star Command D21 -> D22 Cleaner S12 -> S13 Interference S11 -> S12 Interference D12 -> D13 Interference D18 -> D19 Reality S3 -> S4 Reality S8 -> S9 Reality D4 -> D6 Butterfly S3 -> S4 Butterfly S8 -> S9 Butterfly D7 -> D8 We Got 2 Know S8 -> S9 We Got 2 Know D4 -> D7 Gargoyle S9 -> S11 Gargoyle D12 -> D14 Allegro Con Fuoco S4 -> S5 Allegro Con Fuoco D9 -> D11 Hungarian Dance V S8 -> S9 Hungarian Dance V D9 -> D11 The Devil D14 -> D15 X-Rave D11 -> D13 X-Rave D20 -> D21 Native S9 -> S10 Native D10 -> D11 Smells Like a Chocolate S4 -> S3 Necromancy D14 -> D15 Vacuum Cleaner S15 -> S16 Vacuum Cleaner D27 -> D26 Everybody Got 2 Know S19 -> S21 Everybody Got 2 Know D18 -> D19 Interference [FULL] S18 -> S19 Interference [FULL] D15 -> D16 Trotpris - SHORT CUT D14 -> D15 Night Duty S19 -> S20 Night Duty D20 -> D21 Pine Nut S13 -> S15 Pine Nut D16 -> D17 Pine Nut D22 -> D23 Jonathan's Dream D10 -> D13 XTREE S7 -> S9 XTREE S12 -> S14 XTREE D15 -> D16 XTREE D19 -> D20 Sorceress Elise D8 -> D13 Sorceress Elise D17 -> D18 Betrayer -Act. 2- S10 -> S12 Destination S12 -> S13 Destination D14 -> D15 Do It reggae Style D15 -> D16 Xenesis S10 -> S11 Xenesis D12 -> D13 Arirang S11 -> S13 Arirang D12 -> D15 Arirang D21 -> D22 Tek -Club Copenhagen- S16 -> S17 Tek -Club Copenhagen- S17 -> S18 Hello William S9 -> S10 Hello William D9 -> D12 Turkey March -Minimal Tunes- D11 -> D13 Get Up (and Go) S10 -> S11 Get Up (and Go) D11 -> D12 Phantom -Intermezzo- S15 -> S16 Mission Possible -Blowback- D18 -> D19 Pumping Jumping S1 -> S2 Pumping Jumping S5 -> S6 Pumping Jumping S13 -> S14 Pumping Jumping S15 -> S16 Pumping Jumping D6 -> D9 Pumping Jumping D17 -> D18 B.P Classic Remix S12 -> S14 B.P Classic Remix D14 -> D15 PaPa Helloizing S8 -> S10 B.P Classic Remix 2 S11 -> S13 Set Up Me2 Mix S17 -> S18 msgoon RMX pt. 6 D20 -> D21 Final Audition 2 - SHORT CUT D18 -> D19 Final Audition 3 - SHORT CUT D16 -> D18 Love is a Danger Zone - SHORT CUT D17 -> D18 Love is a Danger Zone pt.2 - SHORT CUT S8 -> S9 Love is a Danger Zone pt.2 - SHORT CUT D22 -> D23 Extravaganza - SHORT CUT S15 -> S16 Extravaganza - SHORT CUT D15 -> D16 Extravaganza - SHORT CUT D22 -> D23 CHICKEN WING - SHORT CUT D14 -> D15 Winter - SHORT CUT S9 -> S11 Winter - SHORT CUT D10 -> D13 Solitary 2 - SHORT CUT D17 -> D18 Exceed2 Opening - SHORT CUT S15 -> S16 NX Opening - SHORT CUT D17 -> D18 K.O.A: Alice In Wonderworld - SHORT CUT S8 -> S9 Bemera - SHORT CUT S14 -> S15 Bemera - SHORT CUT S23 -> S22 Destination - SHORT CUT S9 -> S11 Destination - SHORT CUT D19 -> D20 Destination - SHORT CUT D20 -> D21 Tepris D9 -> D11 Tepris D19 -> D20 Napalm S14 -> S15 Napalm D15 -> D16 Blaze Emotion D10 -> D11 Blaze Emotion D17 -> D18 Blaze Emotion D18 -> D19 Cannon X.1 S12 -> S13 Cannon X.1 D14 -> D15 The People Didn't Know S15 -> S16 The People Didn't Know D7 -> D8 DJ Otada S6 -> S7 DJ Otada S8 -> S10 K.O.A: Alice In Wonderworld S2 -> S1 K.O.A: Alice In Wonderworld S8 -> S10 K.O.A: Alice In Wonderworld D10 -> D14 K.O.A: Alice In Wonderworld D18 -> D19 My Dreams D18 -> D19 Toccata S10 -> S11 Toccata D14 -> D15 Toccata D17 -> D18 Final Audition Ep. 2-X S8 -> S9 The People Didn't Know Pumping Up S7 -> S8 The People Didn't Know Pumping Up D4 -> D6 Caprice of DJ Otada S11 -> S12 Caprice of DJ Otada S20 -> S21 Dr. KOA S10 -> S12 Turkey Virus D11 -> D14 Chopsticks Challenge [FULL] S15 -> S17 Chopsticks Challenge [FULL] D19 -> D20 Beat the Ghost S3 -> S4 Beat the Ghost S9 -> S11 Caprice of Otada D10 -> D11 Caprice of Otada D18 -> D19 Caprice of Otada D21 -> D22 Money D16 -> D17 Monkey Fingers 2 D7 -> D8 Faster Z S11 -> S13 Faster Z S20 -> S21 Faster Z D14 -> D15 Pumptris Quattro S12 -> S13 Pumptris Quattro S19 -> S20 Pumptris 8Bit ver. S16 -> S17 Pumptris 8Bit ver. S17 -> S18 Higgledy Piggledy S14 -> S15 Higgledy Piggledy D15 -> D16 Jam O Beat S15 -> S16 Money Fingers S8 -> S10 Money Fingers D9 -> D14 Money Fingers D17 -> D19 EXTRA BanYa Remix S11 -> S12 EXTRA BanYa Remix D14 -> D15 Witch Doctor #1 S16 -> S17 Witch Doctor #1 S17 -> S18 Chimera S12 -> S13 Chimera D16 -> D18 2006 Love Song D13 -> D14 Do U Know That-Old School S15 -> S17 Do U Know That-Old School D19 -> D20 Bullfighter's Song S9 -> S11 Bullfighter's Song S14 -> S15 Bullfighter's Song S16 -> S17 Bullfighter's Song D9 -> D12 Ugly Dee S9 -> S10 Ugly Dee D15 -> D17 Final Audition Ep. 2-1 S18 -> S19 Wi-Ex-Doc-Va S15 -> S17 Wi-Ex-Doc-Va D16 -> D17 Love is a Danger Zone 2 [FULL] S19 -> S20 Beat of the War 2 [FULL] S20 -> S21 Beat of the War 2 S6 -> S7 Beat of the War 2 S10 -> S11 Beat of the War 2 S16 -> S17 Beat of the War 2 D14 -> D15 Moonlight S10 -> S11 Moonlight D11 -> D12 Witch Doctor S10 -> S11 Love is a Danger Zone pt. 2 S9 -> S11 Love is a Danger Zone pt. 2 D17 -> D18 Love is a Danger Zone pt. 2 D23 -> D24 Phantom S12 -> S13 Phantom D13 -> D15 Phantom D20 -> D21 Papa Gonzales D18 -> D19 Papa Gonzales D23 -> D24 Jump S13 -> S12 Love is a danger zone 2 (try to B.P.M.) S15 -> S16 Love is a danger zone 2 (try to B.P.M.) D16 -> D17 Love is a Danger Zone pt.2 another S16 -> S17 Love is a Danger Zone pt.2 another S17 -> S18 Hi Bi D8 -> D11 Hi Bi D19 -> D21 Solitary 2 S17 -> S18 Solitary 2 D19 -> D20 Canon D S10 -> S11 Tream Vook of the war REMIX S13 -> S14 Tream Vook of the war REMIX D15 -> D17 Banya Classic Remix D14 -> D15 Banya Classic Remix D20 -> D21 BanYa HipHop Remix S7 -> S8 BanYa HipHop Remix D20 -> D21 Canon D - FULL SONG S14 -> S15 Final Audition 3 D17 -> D18 Naissance 2 S13 -> S15 Naissance 2 D15 -> D16 Monkey Fingers S5 -> S6 Monkey Fingers S9 -> S10 Blazing S6 -> S7 Blazing S19 -> S20 Blazing D20 -> D21 Pump Me Amadeus S11 -> S13 Pump Me Amadeus D12 -> D15 Pump Me Amadeus D23 -> D24 X-Tream S4 -> S5 X-Tream S7 -> S8 X-Tream S10 -> S12 X-Tream D13 -> D15 Get Up! S4 -> S5 Get Up! S8 -> S10 Get Up! D12 -> D15 Get Up! D18 -> D19 Dignity S3 -> S4 Dignity S5 -> S6 Dignity S14 -> S15 Dignity S20 -> S21 Dignity D19 -> D20 Chicken Wing D17 -> D18 Radetzky Can Can S8 -> S7 Radetzky Can Can S13 -> S12 Radetzky Can Can D17 -> D18 Final Audition Ep. 1 S7 -> S9 Final Audition Ep. 1 S16 -> S17 Final Audition Ep. 1 S20 -> S21 Final Audition Ep. 1 D13 -> D15 Bee S16 -> S17 Bee D12 -> D15 Bee D22 -> D23 D Gang S4 -> S5 D Gang D7 -> D9 D Gang D17 -> D18 Hello S7 -> S11 Hello S16 -> S17 Beat of the War S5 -> S6 Beat of the War D19 -> D20 Beat of the War D23 -> D24 Come to Me D13 -> D15 Dr. M S8 -> S10 Dr. M S12 -> S14 Dr. M D11 -> D14 Get Your Groove On S6 -> S7 Get Your Groove On D9 -> D10 Love is a Danger Zone S3 -> S4 Love is a Danger Zone S7 -> S8 Love is a Danger Zone S10 -> S11 Love is a Danger Zone D6 -> D11 Maria S6 -> S7 Maria S11 -> S12 Maria S15 -> S16 Maria D15 -> D16 Maria D20 -> D21 My Way S3 -> S4 My Way S5 -> S6 My Way S14 -> S15 My Way D15 -> D16 Point Break S9 -> S8 Point Break D9 -> D7 Street Show Down S7 -> S8 Street Show Down S15 -> S16 Street Show Down D13 -> D16 Street Show Down D18 -> D19 Top City S12 -> S13 Top City D7 -> D9 Top City D20 -> D21 Winter S10 -> S12 Winter S19 -> S20 Winter D12 -> D14 Winter D20 -> D21 Will-O-The-Wisp S11 -> S13 Will-O-The-Wisp S14 -> S16 Will-O-The-Wisp D14 -> D16 Will-O-The-Wisp D13 -> D14 Till the End of Time S2 -> S3 Till the End of Time S9 -> S11 Till the End of Time D8 -> D10 Oy Oy Oy S8 -> S9 Oy Oy Oy S6 -> S8 Oy Oy Oy S13 -> S14 We Will Meet Again S8 -> S9 We Will Meet Again D8 -> D11 Miss S' Story S5 -> S7 Set Me Up S9 -> S10 Set Me Up S13 -> S14 Set Me Up D16 -> D17 Dance With Me S14 -> S15 Vook S4 -> S3 Vook S9 -> S10 Vook S15 -> S16 Vook S17 -> S18 Vook D13 -> D15 Vook D19 -> D21 Csikos Post S11 -> S12 Csikos Post S13 -> S15 Csikos Post D8 -> D12 Pump Jump S4 -> S5 Pump Jump D17 -> D18 All I Want For X-mas S6 -> S5 All I Want For X-mas D7 -> D8 Beethoven Virus S11 -> S12 Beethoven Virus D11 -> D13 Beethoven Virus D23 -> D24 Slam S3 -> S5 Slam S6 -> S7 Slam S19 -> S20 Slam D6 -> D9 Slam D21 -> D22 Slam D23 -> D24 Oh! Rosa! S8 -> S9 Oh! Rosa! S13 -> S14 Oh! Rosa! D7 -> D11 First Love S4 -> S6 First Love S10 -> S12 First Love D14 -> D15 Betrayer S8 -> S9 Solitary S9 -> S11 Solitary D16 -> D17 Mr. Larpus S12 -> S13 Mr. Larpus S14 -> S15 Mr. Larpus D17 -> D18 Final Audition 2 S10 -> S12 Final Audition 2 S9 -> S10 Final Audition 2 S17 -> S18 Final Audition 2 D11 -> D12 Naissance S4 -> S5 Naissance S10 -> S12 Naissance D7 -> D12 Naissance D15 -> D16 Turkey March S16 -> S17 Turkey March S18 -> S19 Turkey March D9 -> D13 Turkey March D17 -> D18 Turkey March D20 -> D21 With My Lover D19 -> D18 A Nightmare S2 -> S3 A Nightmare S4 -> S6 A Nightmare D13 -> D14 Close Your Eye S4 -> S6 Midnight Blue S11 -> S12 Midnight Blue D12 -> D13 She Likes Pizza S8 -> S10 She Likes Pizza D9 -> D11 She Likes Pizza D16 -> D18 Pumping Up S4 -> S5 Pumping Up S9 -> S10 Pumping Up S12 -> S13 Final Audition S9 -> S10 Final Audition S17 -> S18 Final Audition S18 -> S19 Final Audition D15 -> D17 Final Audition D18 -> D19 Extravaganza S10 -> S11 Extravaganza S12 -> S13 Extravaganza S17 -> S19 Extravaganza S21 -> S22 Extravaganza D13 -> D15 Extravaganza D20 -> D21 Another Truth S3 -> S4 Another Truth S5 -> S6 Another Truth D7 -> D9 Another Truth D17 -> D18 Another Truth D18 -> D19 ```
noahm commented 1 year ago

I just now got around to trying to use your newly updated database and it doesn't work out of the box. You didn't update the _derived_versionAncestor table which is part of how I would for which songs are in the latest version of PIU XX.

The core query of my import script uses that ancestry table to look up a larger list of versions that lets me query all songs present in a particular version.

In order to update the version ancestor table for this new mix, I think we can just reuse the ancestor list from XX? And I think the following queries will get the job done if executed right after each new Phoenix version is added the database? (large grain of salt: I'm not all that great at SQL and I find the complex schema of the pumpout database somewhat hard to reason about)

-- Copy previous list of ancestors
INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT MAX(versionId) from version),
    ancestorId,
    (SELECT MAX(sortOrder) from version),
    ancestorSortOrder
FROM _derived_versionAncestor
WHERE versionId = (SELECT MAX(versionId) - 1 from version);

-- Add previous latest version as ancestor too
INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT MAX(versionId) from version),
    (SELECT MAX(versionId) - 1 from version),
    (SELECT MAX(sortOrder) from version),
    (SELECT MAX(sortOrder) - 10 from version);

-- Add latest version as own ancestor
INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT MAX(versionId) from version),
    (SELECT MAX(versionId) from version),
    (SELECT MAX(sortOrder) from version),
    (SELECT MAX(sortOrder) from version);

EDIT: added one more sql query, each version must also be its own ancestor

noahm commented 1 year ago

Besides that previously mentioned issue of the ancestor table, all the other updates worked wonderfully and I have the phoenix data imported into my app as well! https://ddr.tools/#game-pump-phoenix

aaaaaa2493 commented 1 year ago

@noahm I didn't even notice that this table exists... Thank you! In my code, I checked the ancestors by creating parentVersion list and parentMix list using info just from tables version and mix. But I see that this table is useful in a way that you don't need to search deep to find if the 1st mix is parent to XX for example.

So, since every version is its own ancestor then I guess you don't need the second SQL query because the latest version would be added in the first query already.

So, I generated two SQL queries in the following format

INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1'),
    d.ancestorId,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1'),
    d.ancestorSortOrder
FROM _derived_versionAncestor d
    JOIN version v on d.versionId = v.versionId
    JOIN mix m on v.mixId = m.mixId
    WHERE m.internalTitle = 'XX' AND v.internalTitle = 'v2.08.0';

INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1') as versionId,
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1') as ancestorId,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1') as sortOrder,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.00.1') as ancestorSortOrder;

And for the first patch

INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0'),
    d.ancestorId,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0'),
    d.ancestorSortOrder
FROM _derived_versionAncestor d
    JOIN version v on d.versionId = v.versionId
    JOIN mix m on v.mixId = m.mixId
    WHERE m.internalTitle = 'Phoenix' AND v.internalTitle = 'v1.00.1';

INSERT INTO _derived_versionAncestor (versionId, ancestorId, sortOrder, ancestorSortOrder)
SELECT
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0') as versionId,
    (SELECT versionId FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0') as ancestorId,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0') as sortOrder,
    (SELECT sortOrder FROM version
     WHERE mixId = (SELECT mixId FROM mix WHERE internalTitle = 'Phoenix')
     AND internalTitle = 'v1.01.0') as ancestorSortOrder;

Assets: Phoenix v1.00.1.zip Phoenix v1.01.0.zip pumpout.zip

Also, I updated a bit cards paths for new Phoenix songs to be in the following: /img/card/Phoenix_{song_title}.png so they will show in one place in the img folder and not all-over the img folder.

Here's images with updated names (also, already resized): img.zip

Please check if everything works with this database version, to ensure that I didn't mess something up. And then I would be ready to generate the next patch when it will be released.

noahm commented 1 year ago

Also, I can provide my Python script which makes updating database with new patches easy.

@aaaaaa2493 This would come in handy now that we have v1.02.0 as well!

aaaaaa2493 commented 1 year ago

@noahm Hi, sorry for the update being late, here's v1.02.0, that should be applied to v1.01.0 database. I will try to do the subsequent updates as fast as possible

Phoenix v1.02.0.zip pumpout.zip img.zip

For the script though, I will publish it later, in the new repo, but I will still do the updates

noahm commented 1 year ago

Thanks for sticking with it! I managed to manually update my own json data this time, but I know some members of the pump community still like using pumpout for all its deep options. One you publish your scripts I will do my best to help keep up with the updates too.

aaaaaa2493 commented 10 months ago

@noahm Hi, there's new update. Also, I found a bug in the script which led to a Korean titles (from songTitle table) not being added to the songTitleVersion table. I guess this is a minor bug but still, I regenerated SQLs for every Phoenix version.

Phoenix v1.00.1.zip Phoenix v1.01.0.zip Phoenix v1.02.0.zip Phoenix v1.03.0.zip

The resulting database with 1.03 patch included: pumpout.zip

Images for the 1.03 patch: 1.03.imgs.zip

aaaaaa2493 commented 10 months ago

@noahm I've added 1.04 update. I've implemented patchnote parser (from piugame.com) which is one step closer to releasing the script, now it takes 5 minutes to generate SQLs instead of 30. Hopefully, I'll release the script soon, it's kinda messy and unintuitive for now (well, I thought created it just for myself...)

pumpout.zip Phoenix v1.04.0.zip 1.04.imgs.zip

noahm commented 10 months ago

Thanks so much for continuing to keep this thread up to date! I'm keeping my app updated through your work as well!

aaaaaa2493 commented 9 months ago

@noahm Hi, I've added 1.05 patch, in the my repo. There also an instruction, but I will continue to do this on my own, in this thread also https://github.com/aaaaaa2493/pumpout-db-updates