diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ae20dca2..13e1907d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -28,6 +28,8 @@ There are some lower-level commands for finer control or full imports: * Games that had an unusable path: `npm run manifest -- --unsupportedPath` * Games with paths that are too broad and are tagged as such in the wiki cache: `npm run manifest -- --tooBroad` * Games with paths that are too broad and aren't already tagged as such in the wiki cache: `npm run manifest -- --tooBroadUntagged` + * Games with paths that look invalid are tagged as such in the wiki cache: `npm run manifest -- --irregularPath` + * Games with paths that look invalid and aren't already tagged as such in the wiki cache: `npm run manifest -- --irregularPathUntagged` * A specific game: `npm run manifest -- "Game 1" "Game 2"` ## API etiquette diff --git a/data/manifest.yaml b/data/manifest.yaml index 75dca24c..4adc9668 100644 --- a/data/manifest.yaml +++ b/data/manifest.yaml @@ -7490,12 +7490,17 @@ Alice in CyberCity: id: 1072000 Alice in Stardom: files: + /game/saves/*.save: + tags: + - save + when: + - os: windows /renpy/config.py: tags: - config when: - os: windows - /renpy/AliceinStardom-1551500018/*.save: + /renpy/AliceinStardom-1551500018/*.save: tags: - save when: @@ -8033,12 +8038,12 @@ Alien Swarm: id: 563560 Alien Trilogy: files: - '/{{file|TRIL.SG*}}': + /TRIL.SG*: tags: - save when: - os: dos - '/{{file|TRILOGY.CFG}}': + /TRILOGY.CFG: tags: - config when: @@ -9926,12 +9931,12 @@ Amulet Zero 零物语 - Optimize: id: 907330 Amulet of Dreams: files: - '/MysteryTag/Amulet of Dreams/Player_{{code|#}}/session.dat': + /MysteryTag/Amulet of Dreams/Player_*/session.dat: tags: - save when: - os: windows - '/MysteryTag/Amulet of Dreams/Player_{{code|#}}/settings.ini': + /MysteryTag/Amulet of Dreams/Player_*/settings.ini: tags: - config when: @@ -13518,7 +13523,7 @@ Arkane Rush Multiverse Mayhem: id: 1005250 Arkanoid: files: - '{{Path|Game}}/{{File|ARKANOID.SCR}}': + /ARKANOID.SCR: tags: - save when: @@ -13528,12 +13533,12 @@ Arkanoid For Painters: id: 912130 'Arkanoid: Revenge of Doh': files: - '{{Path|Game}}/DOH.CFG': + /DOH.CFG: tags: - config when: - os: dos - '{{Path|Game}}/REVOFDOH.SCR': + /REVOFDOH.SCR: tags: - save when: @@ -14274,12 +14279,12 @@ Art of Horology: id: 1033860 Art of Murder - Cards of Destiny: files: - '/{{LocalizedPath|Art of Murder - Cards of Destiny}}': + /Art of Murder - Cards of Destiny: tags: - save when: - os: windows - '/{{LocalizedPath|Art of Murder - Cards of Destiny}}/game.setup': + /Art of Murder - Cards of Destiny/game.setup: tags: - config when: @@ -14310,12 +14315,12 @@ Art of Murder - FBI Confidential: id: 809000 Art of Murder - Hunt for the Puppeteer: files: - '/{{LocalizedPath|Art of Murder - The Hunt for the Puppeteer}}': + /Art of Murder - The Hunt for the Puppeteer: tags: - save when: - os: windows - '/{{LocalizedPath|Art of Murder - The Hunt for the Puppeteer}}/game.setup': + /Art of Murder - The Hunt for the Puppeteer/game.setup: tags: - config when: @@ -19038,12 +19043,12 @@ Bad Thoughts: id: 661260 Bad Toys 3D: files: - '/{{file|GAME_*.SVG}}': + /GAME_*.SVG: tags: - save when: - os: windows - '/{{file|bt3d.cfg}}': + /bt3d.cfg: tags: - config when: @@ -22139,16 +22144,16 @@ Beach Head 2000: id: 509610 Beach Head 2002: files: - '{{Path|localappdata}}/VirtualStore/Infogrames Interactive/Beach Head 2002/Save/{{File|000000**.sav}}': - tags: - - save - when: - - os: windows - '{{Path|localappdata}}/VirtualStore/Infogrames Interactive/Beach Head 2002/{{File|BH2002.ini}}': + /VirtualStore/Infogrames Interactive/Beach Head 2002/BH2002.ini: tags: - config when: - os: windows + /VirtualStore/Infogrames Interactive/Beach Head 2002/Save/000000*.sav: + tags: + - save + when: + - os: windows installDir: Beachhead 2002: {} steam: @@ -27559,12 +27564,12 @@ Bloo Kid 2: id: 379640 Blood: files: - '/{{file|*.SAV}}': + /*.SAV: tags: - save when: - os: dos - '/{{file|BLOOD.CFG}}': + /BLOOD.CFG: tags: - config when: @@ -29686,12 +29691,12 @@ Boozy Dwarf: id: 562560 Boppin': files: - '{{Path|Game}}/{{File|BOPPIN.CFG}}': + /BOPPIN.CFG: tags: - config when: - os: dos - '{{Path|Game}}/{{File|Bopsave?.bin}}': + /Bopsave*.bin: tags: - save when: @@ -30402,7 +30407,7 @@ Box Out!: id: 356110 Box PC3: files: - 'C:/pc3/drakssen/boxeo/{{File|keywiz.cfg}}': + 'C:/pc3/drakssen/boxeo/keywiz.cfg': tags: - config when: @@ -30910,7 +30915,7 @@ Breach & Clear: when: - os: mac - os: linux - '/Library/Preferences/{{file|unity.Mighty Rabbit Studios.Breach _ Clear.plist}}': + /Library/Preferences/unity.Mighty Rabbit Studios.Breach _ Clear.plist: tags: - config when: @@ -37280,16 +37285,16 @@ Cateau: id: 949370 Catechumen: files: + /catechumen.ini: + tags: + - config + when: + - os: windows /save: tags: - save when: - os: windows - '/{{file|catechumen.ini}}': - tags: - - config - when: - - os: windows Caterpillar Royale: installDir: Caterpillar Wars DX: {} @@ -41842,7 +41847,7 @@ Clean VR: id: 1071090 Clean'Em Up: files: - '{{Path|Game}}/{{File|CleanEmUp.exe.config}}': + /CleanEmUp.exe.config: tags: - config when: @@ -47047,7 +47052,7 @@ Counter Terrorist Agency: - save when: - os: mac - '/Library/Preferences/{{file|pl.play2chill.cta.plist}}': + /Library/Preferences/pl.play2chill.cta.plist: tags: - config when: @@ -57633,7 +57638,7 @@ Deep Rock Galactic: when: - os: windows store: steam - '/FSD/Saved/SaveGames/{{file|Player.sav}}': + /FSD/Saved/SaveGames/Player.sav: tags: - save when: @@ -62095,12 +62100,12 @@ Disc League: id: 591140 Disc Room (2016): files: - '{{Path|game}}/{{File|options.ini}}': + /options.ini: tags: - config when: - os: windows - '{{Path|localappdata}}/disc_room': + /disc_room: tags: - save when: @@ -63163,7 +63168,7 @@ Diving Trunks: id: 435150 Divinoids: files: - '/AppData/LocalLow/Weltall Zero/Divinoids/{{File|saveGame.sav}}': + /AppData/LocalLow/Weltall Zero/Divinoids/saveGame.sav: tags: - save when: @@ -71270,7 +71275,7 @@ Eat All the Things: id: 730290 Eat My Dust: files: - '{{Path|game}}/{{File|SIERRA.INF}}': + /SIERRA.INF: tags: - config when: @@ -74486,16 +74491,16 @@ Engram: id: 930360 Enigma: files: - '{{Path|Game}}/savedata': - tags: - - save - when: - - os: windows - '{{Path|Game}}/{{File|ENIGMA.cf}}': + /ENIGMA.cf: tags: - config when: - os: windows + /savedata: + tags: + - save + when: + - os: windows installDir: ENIGMA: {} steam: @@ -78809,14 +78814,14 @@ F18 Carrier Landing: id: 1049370 FAITH: files: - '/FAITH_v1_4_0_spriteOptimizationTest/{{file|SAV_FAITH_DX_itch_v1-4.dat}}': + /FAITH_v1_4_0_spriteOptimizationTest/SAV_FAITH_DX_itch_v1-4.dat: tags: - save when: - os: windows 'FAITH: Chapter II': files: - '/FAITH_CHII_v1_2_2019_07_23/{{file|sav_FAITHchII_v1-2.dat}}': + /FAITH_CHII_v1_2_2019_07_23/sav_FAITHchII_v1-2.dat: tags: - save when: @@ -82674,16 +82679,16 @@ Fields of Battle: id: 370800 Fiend: files: - '/save/{{file|save*.sav}}': - tags: - - save - when: - - os: windows - '/{{file|config.dat}}': + /config.dat: tags: - config when: - os: windows + /save/save*.sav: + tags: + - save + when: + - os: windows Fiends of Imprisonment: steam: id: 410590 @@ -119144,7 +119149,7 @@ Jumplord: id: 1214130 Jumpman Lives!: files: - '{{Path|Game}}/{{File|JMLIVES!.HIS}}': + /JMLIVES!.HIS: tags: - save when: @@ -119669,16 +119674,16 @@ K-pop VR: id: 744020 'K. Hawk: Survival Instinct': files: + /KHSI.INI: + tags: + - config + when: + - os: windows /savegame: tags: - save when: - os: windows - '/{{file|KHSI.INI}}': - tags: - - config - when: - - os: windows K.O.M.A: installDir: K.O.M.A: {} @@ -125761,7 +125766,7 @@ Last Resort Island: id: 820910 Last Rites: files: - '/{{file|LASTRITE.CFG}}': + /LASTRITE.CFG: tags: - config when: @@ -128894,7 +128899,7 @@ Lifeblood: id: 796340 Lifeforce Tenka: files: - '/save/{{file|tenka.sav}}': + /save/tenka.sav: tags: - save when: @@ -135937,12 +135942,12 @@ Mainland: id: 366800 Mainlining: files: - '/MainliningGame/{{file|Profile_*.sav}}': + /MainliningGame/Profile_*.sav: tags: - save when: - os: windows - '/MainliningGame/{{file|System.sav}}': + /MainliningGame/System.sav: tags: - config when: @@ -136477,14 +136482,14 @@ Manhunter: id: 302250 'Manhunter 2: San Francisco': files: - '/{{file|MH2SG.*}}': + /MH2SG.*: tags: - save when: - os: dos 'Manhunter: New York': files: - '/{{file|sg.*}}': + /sg.*: tags: - save when: @@ -138359,7 +138364,7 @@ Max Payne: id: 12140 'Max Payne 2: The Fall of Max Payne': files: - '/{{file|MP2_Init.ras}}': + /MP2_Init.ras: tags: - config when: @@ -138371,6 +138376,10 @@ Max Payne: - os: windows installDir: Max Payne 2 The Fall of Max Payne: {} + registry: + HKEY_CURRENT_USER/Software/Remedy Entertainment/Max Payne 2: + tags: + - config steam: id: 12150 Max Payne 3: @@ -141628,16 +141637,16 @@ Microsoft Flight Simulator X: id: 314160 Microsoft Flight Simulator for Windows 95: files: - '{{Path|game}}/Pilots': - tags: - - save - when: - - os: windows - '{{Path|game}}/{{File|FltSim95.CFG}}': + /FltSim95.CFG: tags: - config when: - os: windows + /Pilots: + tags: + - save + when: + - os: windows Microsoft Golf: files: /*.PIN: @@ -143211,16 +143220,16 @@ Miniature - The Story Puzzle: id: 536680 Miniature Garden: files: - '{{Path|Game}}/savedata': - tags: - - save - when: - - os: windows - '{{Path|Game}}/{{File|Miniature Garden.cf}}': + /Miniature Garden.cf: tags: - config when: - os: windows + /savedata: + tags: + - save + when: + - os: windows installDir: Miniature Garden: {} steam: @@ -149658,12 +149667,12 @@ NALOGI: id: 810670 NAM: files: - '/{{file|GAME*.SAV}}': + /GAME*.SAV: tags: - save when: - os: dos - '/{{file|NAM.CFG}}': + /NAM.CFG: tags: - config when: @@ -158110,16 +158119,16 @@ Omina Mortis: id: 644340 'Ominous Horizons: A Paladin''s Calling': files: + /ominous.ini: + tags: + - config + when: + - os: windows /save: tags: - save when: - os: windows - '/{{file|ominous.ini}}': - tags: - - config - when: - - os: windows 'Ominous Objects: Family Portrait Collector''s Edition': installDir: Ominous Objects Family Portrait Collector's Edition: {} @@ -165829,12 +165838,12 @@ Phantasmagoria: id: 501990 'Phantasmagoria 2: A Puzzle of Flesh': files: - '/{{file|P2SG.*}}': + /P2SG.*: tags: - save when: - os: dos - '/{{file|RESOURCE.CFG}}': + /RESOURCE.CFG: tags: - config when: @@ -166868,31 +166877,36 @@ Pinball 2018: id: 678310 Pinball Dreams: files: - '{{Path|game}}/{{File|HISCORES}}': + /HISCORES: tags: - save when: - os: dos Pinball Dreams 2: files: - '{{Path|Game}}/{{File|HISCORES}}': + /HISCORES: tags: - save when: - os: dos - '{{Path|Game}}/{{File|SOUND.CFG}}': + /SOUND.CFG: tags: - config when: - os: dos Pinball Dreams Deluxe: files: - '{{Path|Game}}/{{File|DDPCOPTN.BIN}}': + /DDPCOPTN.BIN: tags: - config when: - os: dos - '{{Path|Game}}/{{File|HISCORES.PD1}}
{{Path|Game}}/{{File|HISCORES.PD2}}': + /HISCORES.PD1: + tags: + - save + when: + - os: dos + /HISCORES.PD2: tags: - save when: @@ -166940,12 +166954,17 @@ Pinball FX3: id: 442120 Pinball Fantasies: files: - '{{Path|Game}}/{{File|SOUND.CFG}}
{{Path|Game}}/{{File|PINBALL.CFG}}': + /PINBALL.CFG: tags: - config when: - os: dos - '{{Path|Game}}/{{File|TABLE?.HI}}': + /SOUND.CFG: + tags: + - config + when: + - os: dos + /TABLE*.HI: tags: - save when: @@ -166962,12 +166981,12 @@ Pinball HD Collection: id: 605850 Pinball Mania: files: - '{{Path|Game}}/{{File|HISCORES}}': + /HISCORES: tags: - save when: - os: dos - '{{Path|Game}}/{{File|SOUND.CFG}}': + /SOUND.CFG: tags: - config when: @@ -169450,12 +169469,12 @@ Pleasure in Dream: id: 538950 'Pleurghburg: Dark Ages': files: - '/{{file|acsetup.cfg}}': + /acsetup.cfg: tags: - save when: - os: windows - '/{{file|agssave.*}}': + /agssave.*: tags: - config when: @@ -195548,12 +195567,12 @@ Shadow Uprising: id: 987000 Shadow Warrior (1997): files: - '/{{file|GAME*.SAV}}': + /GAME*.SAV: tags: - save when: - os: dos - '/{{file|SW.CFG}}': + /SW.CFG: tags: - config when: @@ -196167,16 +196186,20 @@ Shadwen: id: 545850 Shady Knight: files: - '{{Path|userprofile}}/AppData/LocalLow/cptnsigh/Shady Knight/{{File|savefile}}': - tags: - - save - when: - - os: windows - '{{Path|userprofile}}/AppData/LocalLow/cptnsigh/Shady Knight
{{Path|hkcu}}/SOFTWARE/cptnsigh/Shady Knight': + /AppData/LocalLow/cptnsigh/Shady Knight: tags: - config when: - os: windows + /AppData/LocalLow/cptnsigh/Shady Knight/savefile: + tags: + - save + when: + - os: windows + registry: + HKEY_CURRENT_USER/SOFTWARE/cptnsigh/Shady Knight: + tags: + - config Shady Part of Me: steam: id: 1116580 @@ -196590,12 +196613,12 @@ Sharp X Mind: id: 1039650 SharpShooter3D: files: - '/{{file|*.zds}}': + /*.zds: tags: - save when: - os: windows - '/{{file|gzdoom-.ini}}': + /gzdoom-*.ini: tags: - config when: @@ -199281,12 +199304,12 @@ SilverFrame(纯白星原): id: 333380 Silverball: files: - '{{Path|Game}}/{{File|CONFIG.PIN}}': + /CONFIG.PIN: tags: - config when: - os: dos - '{{Path|Game}}/{{File|HISCORE.PIN}}': + /HISCORE.PIN: tags: - save when: @@ -201499,16 +201522,16 @@ Sleepwalker: id: 814640 Sleepwalker's Journey: files: - '{{Path|appdata}}/11bitstudios/Sleepwalker`s Journey/iPhoneDefUser': - tags: - - save - when: - - os: windows - '{{Path|appdata}}/11bitstudios/Sleepwalker`s Journey/{{File|config.bin}}': + /11bitstudios/Sleepwalker`s Journey/config.bin: tags: - config when: - os: windows + /11bitstudios/Sleepwalker`s Journey/iPhoneDefUser: + tags: + - save + when: + - os: windows Sleigh Runner: installDir: Sleigh Runner: {} @@ -207865,16 +207888,26 @@ SpellForce 3: id: 311290 'SpellForce 3: Soul Harvest': files: - /My Games/SpellForce 3 SH/save: + /My Games/SpellForce 3 SH/characters: tags: - save when: - os: windows - '/My Games/SpellForce 3 SH/{{file|config_system.txt}}, {{file|config_user.txt}}': + /My Games/SpellForce 3 SH/config_system.txt: tags: - config when: - os: windows + /My Games/SpellForce 3 SH/config_user.txt: + tags: + - config + when: + - os: windows + /My Games/SpellForce 3 SH/save: + tags: + - save + when: + - os: windows installDir: SpellForce3_2019: {} steam: @@ -208920,12 +208953,12 @@ Sponchies: - config 'SpongeBob SquarePants: Operation Krabby Patty': files: - '{{Path|game}}/{{File|options.dat}}': + /options.dat: tags: - config when: - os: windows - '{{Path|game}}/{{File|users.dat}}': + /users.dat: tags: - save when: @@ -209285,7 +209318,7 @@ SpyParty: id: 329070 'Spycraft: The Great Game': files: - '/{{file|GAME_*.SGM}}': + /GAME_*.SGM: tags: - save when: @@ -216663,7 +216696,7 @@ Super Blood Hockey: - save when: - os: windows - '/{{file|SubparBloopHokeyCon.fig}}': + /SubparBloopHokeyCon.fig: tags: - config when: @@ -224131,7 +224164,7 @@ Tengutana: id: 630070 Tenis PC3: files: - 'C:/pc3/drakssen/tennis/{{File|keywiz.cfg}}': + 'C:/pc3/drakssen/tennis/keywiz.cfg': tags: - config when: @@ -224901,7 +224934,7 @@ Tetripank: id: 832550 Tetris (AcademySoft): files: - '{{Path|Game}}/{{File|TETRIS.RES}}': + /TETRIS.RES: tags: - save when: @@ -237409,21 +237442,21 @@ The Snowboard Game: id: 803830 The Software Toolworks' Star Wars Chess: files: - '/{{File|STARWARS.CMG}}': + /STARWARS.CMG: tags: - save when: - os: windows - '/{{File|SWCHESS.SAV}}': - tags: - - save - when: - - os: dos - '{{Path|Game}}/{{File|SWCHESS.CFG}}': + /SWCHESS.CFG: tags: - config when: - os: dos + /SWCHESS.SAV: + tags: + - save + when: + - os: dos The Sojourn: files: /TheSojourn/Saved/SaveGames/Settings.sav: @@ -239906,7 +239939,7 @@ The Wranglers: id: 533770 The X-Files Game: files: - '/{{file|*.x}}': + /*.x: tags: - save when: @@ -244239,12 +244272,12 @@ Tony Slopes: id: 835770 Tony Tough and the Night of Roasted Moths: files: - '/SAVE/{{file|*.sav}}': + /SAVE/*.sav: tags: - save when: - os: windows - '/Saves/{{file|tony.*}}': + /Saves/tony.*: tags: - save when: @@ -253186,16 +253219,16 @@ Urban Cards: id: 1126890 Urban Chaos: files: + /config.ini: + tags: + - config + when: + - os: windows /saves: tags: - save when: - os: windows - '/{{file|config.ini}}': - tags: - - config - when: - - os: windows installDir: Urban Chaos: {} steam: @@ -265808,12 +265841,12 @@ World War I: id: 361380 World War II GI: files: - '/{{file|GAME*.SAV}}': + /GAME*.SAV: tags: - save when: - os: dos - '/{{file|WW2GI.CFG}}': + /WW2GI.CFG: tags: - config when: diff --git a/data/steam-game-cache.yaml b/data/steam-game-cache.yaml index 9c399317..84e90aed 100644 --- a/data/steam-game-cache.yaml +++ b/data/steam-game-cache.yaml @@ -14850,6 +14850,7 @@ installDir: Flash Snooker Game '12510': installDir: Prison Tycoon 3 +'1251670': {} '12520': installDir: 18 Wheels of Steel American Long Haul '12530': diff --git a/data/wiki-game-cache.yaml b/data/wiki-game-cache.yaml index b1c07fba..6b978e20 100644 --- a/data/wiki-game-cache.yaml +++ b/data/wiki-game-cache.yaml @@ -4658,7 +4658,7 @@ Alice in CyberCity: revId: 842443 Alice in Stardom: pageId: 132216 - revId: 884069 + revId: 983376 Alice in Wonderland: pageId: 33992 revId: 967024 @@ -4887,7 +4887,7 @@ Alien Syndrome: revId: 964556 Alien Trilogy: pageId: 61902 - revId: 965676 + revId: 983377 Alien Worms Invasion: pageId: 88019 revId: 842511 @@ -5743,6 +5743,7 @@ Amulet Zero 零物语 - Optimize: pageId: 103919 revId: 842790 Amulet of Dreams: + irregularPath: true pageId: 42710 revId: 956472 Amulet of the Seven Souls: @@ -7422,7 +7423,7 @@ Arkane Rush Multiverse Mayhem: revId: 843298 Arkanoid: pageId: 159395 - revId: 981550 + revId: 983378 Arkanoid For Painters: pageId: 104179 revId: 843299 @@ -7760,6 +7761,7 @@ Art of Horology: pageId: 132008 revId: 843387 Art of Murder - Cards of Destiny: + irregularPath: true pageId: 103377 revId: 960464 Art of Murder - Deadly Secrets: @@ -7769,6 +7771,7 @@ Art of Murder - FBI Confidential: pageId: 103385 revId: 960466 Art of Murder - Hunt for the Puppeteer: + irregularPath: true pageId: 103381 revId: 960467 Art of Murder - The Secret Files: @@ -10015,7 +10018,7 @@ Bad Thoughts: revId: 844053 Bad Toys 3D: pageId: 68729 - revId: 964657 + revId: 983379 Bad birthday: pageId: 53073 revId: 844055 @@ -11461,7 +11464,7 @@ Beach Head 2000: revId: 923955 Beach Head 2002: pageId: 61990 - revId: 908782 + revId: 983380 'Beach Head: Desert War': pageId: 61988 revId: 844495 @@ -13951,7 +13954,7 @@ Bloo Kid 2: revId: 845208 Blood: pageId: 13918 - revId: 966820 + revId: 983381 'Blood & Gold: Caribbean!': pageId: 34288 revId: 845210 @@ -15020,7 +15023,7 @@ Boozy Dwarf: revId: 845494 Boppin': pageId: 148099 - revId: 967180 + revId: 983382 Boratium Wars: pageId: 73258 revId: 845495 @@ -15347,7 +15350,7 @@ Box Out!: revId: 845596 Box PC3: pageId: 151969 - revId: 906835 + revId: 983383 'Box: The Game': pageId: 98664 revId: 845597 @@ -15623,7 +15626,7 @@ Breach: revId: 845681 Breach & Clear: pageId: 17523 - revId: 963241 + revId: 983384 'Breach & Clear: Deadline': pageId: 22518 revId: 918468 @@ -18811,7 +18814,7 @@ Cateau: revId: 846781 Catechumen: pageId: 91641 - revId: 953214 + revId: 983385 'Category:Free-to-play': pageId: 159098 revId: 956562 @@ -21117,7 +21120,7 @@ Clean VR: revId: 847450 Clean'Em Up: pageId: 36179 - revId: 946114 + revId: 983386 Cleaner: pageId: 138558 revId: 847452 @@ -23461,7 +23464,7 @@ Counter Terrorism - Minesweeper: revId: 900622 Counter Terrorist Agency: pageId: 122854 - revId: 957712 + revId: 983387 Counter-Fall: pageId: 156893 revId: 977944 @@ -28519,7 +28522,7 @@ Deep Rest: revId: 849627 Deep Rock Galactic: pageId: 55221 - revId: 979976 + revId: 983388 Deep Sea Endurance: pageId: 127345 revId: 849629 @@ -30617,7 +30620,7 @@ Disc League: revId: 850249 Disc Room (2016): pageId: 159132 - revId: 963380 + revId: 983389 Disc Room (2020): pageId: 159141 revId: 980071 @@ -31056,7 +31059,7 @@ Diving Trunks: revId: 978240 Divinoids: pageId: 159902 - revId: 963608 + revId: 983390 Divinum: pageId: 151513 revId: 903263 @@ -34784,7 +34787,7 @@ Eat All the Things: revId: 891108 Eat My Dust: pageId: 146902 - revId: 923391 + revId: 983391 Eat Your Words: pageId: 99772 revId: 851630 @@ -36309,7 +36312,7 @@ Engram: revId: 852073 Enigma: pageId: 39785 - revId: 944954 + revId: 983392 Enigma Prison: pageId: 39654 revId: 852075 @@ -38319,10 +38322,10 @@ F29 Retaliator: tooBroad: true FAITH: pageId: 146578 - revId: 923265 + revId: 983393 'FAITH: Chapter II': pageId: 148340 - revId: 923266 + revId: 983394 'FAITH: The Unholy Trinity': pageId: 151868 revId: 906071 @@ -40253,7 +40256,7 @@ Fields of Glory: revId: 964799 Fiend: pageId: 101851 - revId: 923090 + revId: 983395 Fiends of Imprisonment: pageId: 45988 revId: 853256 @@ -58066,7 +58069,7 @@ Jumplord: revId: 931458 Jumpman Lives!: pageId: 147147 - revId: 964886 + revId: 983396 Jumpo Joe: pageId: 98426 revId: 886514 @@ -58342,7 +58345,7 @@ K-pop VR: revId: 858469 'K. Hawk: Survival Instinct': pageId: 157705 - revId: 935731 + revId: 983397 K.O.M.A: pageId: 129879 revId: 858470 @@ -61371,7 +61374,7 @@ Last Resort Island: revId: 859322 Last Rites: pageId: 88158 - revId: 964901 + revId: 983398 tooBroad: true Last Salvo: pageId: 78298 @@ -62757,7 +62760,7 @@ Lifeblood: revId: 886916 Lifeforce Tenka: pageId: 123043 - revId: 966111 + revId: 983399 Lifeless: pageId: 33512 revId: 910591 @@ -66333,7 +66336,7 @@ Mainland: revId: 860751 Mainlining: pageId: 39280 - revId: 962867 + revId: 983400 Maitetsu: pageId: 97404 revId: 887692 @@ -66601,10 +66604,10 @@ Manhunter: revId: 952269 'Manhunter 2: San Francisco': pageId: 17079 - revId: 964929 + revId: 983401 'Manhunter: New York': pageId: 147113 - revId: 964930 + revId: 983402 Maniac GO: pageId: 64749 revId: 887733 @@ -67465,7 +67468,7 @@ Max Payne: unsupportedOs: true 'Max Payne 2: The Fall of Max Payne': pageId: 3397 - revId: 981660 + revId: 983403 Max Payne 3: pageId: 2846 revId: 974341 @@ -68976,7 +68979,7 @@ Microsoft Flight Simulator X: revId: 938558 Microsoft Flight Simulator for Windows 95: pageId: 152533 - revId: 951241 + revId: 983404 Microsoft Golf: pageId: 7343 revId: 964953 @@ -69742,7 +69745,7 @@ Miniature - The Story Puzzle: revId: 888217 Miniature Garden: pageId: 39791 - revId: 945576 + revId: 983405 Miniature TD - VR: pageId: 67555 revId: 888219 @@ -72931,7 +72934,7 @@ NALOGI: revId: 894091 NAM: pageId: 25285 - revId: 967858 + revId: 983406 NAMELESS: pageId: 121355 revId: 894092 @@ -77023,7 +77026,7 @@ Omina Mortis: revId: 863742 'Ominous Horizons: A Paladin''s Calling': pageId: 91644 - revId: 938751 + revId: 983407 'Ominous Objects: Family Portrait Collector''s Edition': pageId: 58451 revId: 896828 @@ -80707,7 +80710,7 @@ Phantasmagoria: revId: 964108 'Phantasmagoria 2: A Puzzle of Flesh': pageId: 36560 - revId: 967581 + revId: 983408 Phantasmagoria of Flower View: pageId: 30995 revId: 897367 @@ -81195,13 +81198,13 @@ Pinball 3: revId: 864868 Pinball Dreams: pageId: 131950 - revId: 967172 + revId: 983409 Pinball Dreams 2: pageId: 131955 - revId: 967171 + revId: 983410 Pinball Dreams Deluxe: pageId: 154686 - revId: 965461 + revId: 983411 Pinball Dreams HD: pageId: 147647 revId: 891890 @@ -81216,7 +81219,7 @@ Pinball FX3: revId: 967057 Pinball Fantasies: pageId: 26166 - revId: 965001 + revId: 983412 Pinball HD Collection: pageId: 41876 revId: 897443 @@ -81228,7 +81231,7 @@ Pinball Illusions: revId: 897444 Pinball Mania: pageId: 131959 - revId: 965003 + revId: 983413 Pinball Parlor: pageId: 55720 revId: 897445 @@ -82482,7 +82485,7 @@ Pleasure in Dream: revId: 897657 'Pleurghburg: Dark Ages': pageId: 147240 - revId: 964113 + revId: 983414 'Plexarium: Mega Maze Crawler': pageId: 68984 revId: 897658 @@ -95213,7 +95216,7 @@ Shadow Uprising: revId: 868838 Shadow Warrior (1997): pageId: 9487 - revId: 981826 + revId: 983415 Shadow Warrior (2013): pageId: 10160 revId: 966908 @@ -95412,7 +95415,7 @@ Shadwen: revId: 868898 Shady Knight: pageId: 151852 - revId: 905987 + revId: 983416 Shady Part of Me: pageId: 145441 revId: 840813 @@ -95616,7 +95619,7 @@ Sharp X Mind: revId: 868958 SharpShooter3D: pageId: 96729 - revId: 952435 + revId: 983417 'Sharpe Investigations: Death on the Seine': pageId: 49931 revId: 868960 @@ -96806,7 +96809,7 @@ SilverFrame(纯白星原): revId: 953806 Silverball: pageId: 154872 - revId: 967170 + revId: 983418 Silverfall: pageId: 41393 revId: 869317 @@ -97940,7 +97943,7 @@ Sleepwalker: revId: 965119 Sleepwalker's Journey: pageId: 8035 - revId: 899182 + revId: 983419 Sleigh Runner: pageId: 124046 revId: 869630 @@ -101064,7 +101067,7 @@ SpellForce 3: revId: 908052 'SpellForce 3: Soul Harvest': pageId: 124855 - revId: 973183 + revId: 983420 'SpellForce: The Order of Dawn': pageId: 4483 revId: 966978 @@ -101573,7 +101576,7 @@ Sponchies: revId: 947210 'SpongeBob SquarePants: Operation Krabby Patty': pageId: 152323 - revId: 923384 + revId: 983421 'SpongeBob: Patty Pursuit': pageId: 160743 revId: 971198 @@ -101744,7 +101747,7 @@ SpyParty: revId: 919163 'Spycraft: The Great Game': pageId: 21136 - revId: 967626 + revId: 983422 Spyder: pageId: 158655 revId: 976586 @@ -104947,7 +104950,7 @@ Super Blockbreak 3D: revId: 871736 Super Blood Hockey: pageId: 56152 - revId: 963132 + revId: 983423 Super Blue Boy Planet: pageId: 55127 revId: 871738 @@ -108569,7 +108572,7 @@ Tengutana: revId: 872788 Tenis PC3: pageId: 151895 - revId: 906238 + revId: 983425 Tenkyu: pageId: 90052 revId: 872789 @@ -108935,7 +108938,7 @@ Tetripank: revId: 872886 Tetris (AcademySoft): pageId: 152573 - revId: 965192 + revId: 983426 Tetris Effect: pageId: 140550 revId: 962944 @@ -114647,7 +114650,7 @@ The Snowboard Game: revId: 874483 The Software Toolworks' Star Wars Chess: pageId: 147946 - revId: 964160 + revId: 983427 The Sojourn: pageId: 105615 revId: 969477 @@ -115713,7 +115716,7 @@ The Wranglers: revId: 874765 The X-Files Game: pageId: 3889 - revId: 967162 + revId: 983428 The Yawhg: pageId: 7534 revId: 929938 @@ -117742,7 +117745,7 @@ Tony Slopes: revId: 875328 Tony Tough and the Night of Roasted Moths: pageId: 47978 - revId: 963261 + revId: 983429 Too Angry to Space: pageId: 41751 revId: 875330 @@ -121918,7 +121921,7 @@ Urban Cards: revId: 840706 Urban Chaos: pageId: 19490 - revId: 963329 + revId: 983430 Urban Empire: pageId: 35573 revId: 876515 @@ -128172,7 +128175,7 @@ World War I: revId: 948653 World War II GI: pageId: 25290 - revId: 967159 + revId: 983431 World War II Online: pageId: 62464 revId: 878298 diff --git a/src/bin.ts b/src/bin.ts index beb4c557..aba1e110 100644 --- a/src/bin.ts +++ b/src/bin.ts @@ -16,6 +16,7 @@ interface Cli { unsupportedOs?: boolean, unsupportedPath?: boolean, irregularPath?: boolean, + irregularPathUntagged?: boolean, tooBroad?: boolean, tooBroadUntagged?: boolean, recent?: number, @@ -35,6 +36,7 @@ async function main() { "unsupportedOs", "unsupportedPath", "irregularPath", + "irregularPathUntagged", "tooBroad", "tooBroadUntagged", ] @@ -77,6 +79,7 @@ async function main() { tooBroad: args.tooBroad ?? false, tooBroadUntagged: args.tooBroadUntagged ?? false, irregularPath: args.irregularPath ?? false, + irregularPathUntagged: args.irregularPathUntagged ?? false, games: args._, recent: args.recent, }, diff --git a/src/manifest.ts b/src/manifest.ts index cc134620..b823f4b2 100644 --- a/src/manifest.ts +++ b/src/manifest.ts @@ -52,6 +52,7 @@ export class ManifestFile extends YamlFile { unsupportedOs: boolean, unsupportedPath: boolean, irregularPath: boolean, + irregularPathUntagged: boolean, tooBroad: boolean, tooBroadUntagged: boolean, games: Array | undefined, @@ -81,7 +82,10 @@ export class ManifestFile extends YamlFile { if (filter.unsupportedPath && info.unsupportedPath) { check = true; } - if (filter.irregularPath && (wikiCache[title].irregularPath || Object.keys(this.data[title]?.files ?? []).some(x => x.includes("{{") || x.includes("") || x.includes("
")))) { + if (filter.irregularPath && wikiCache[title].irregularPath) { + check = true; + } + if (filter.irregularPathUntagged && !wikiCache[title].irregularPath && Object.keys(this.data[title]?.files ?? []).some(x => x.includes("{{") || x.includes("") || x.includes("
"))) { check = true; } if (filter.games && filter.games.includes(title)) { @@ -90,7 +94,7 @@ export class ManifestFile extends YamlFile { if (filter.tooBroad && info.tooBroad) { check = true; } - if (filter.tooBroadUntagged && Object.keys(this.data[title]?.files ?? []).some(x => pathIsTooBroad(x))) { + if (filter.tooBroadUntagged && !info.tooBroad && Object.keys(this.data[title]?.files ?? []).some(x => pathIsTooBroad(x))) { check = true; } if (filter.recent && wikiCache[title].recentlyChanged) { diff --git a/src/wiki.ts b/src/wiki.ts index 6c49499d..2f5ca222 100644 --- a/src/wiki.ts +++ b/src/wiki.ts @@ -466,12 +466,18 @@ export async function getGame(pageTitle: string, cache: WikiGameCache): Promise< game.steam = { id: steamId }; } } else if (template.name === "Game data/saves" || template.name === "Game data/config") { + // console.log("\n\n\n\n\n\n--------------------------------------------------------------------------") + // console.log(template); for (const cellKey of Object.getOwnPropertyNames(template.parameters)) { if (cellKey === "0" || cellKey === "1") { continue; } const cell = template.parameters[cellKey]; + // console.log("======================================") + // console.log(cell) const [rawPath, regular] = getRawPathFromCell(cell); + // console.log("-----------------"); + // console.log(`${regular} : ${rawPath}`); if (!regular) { irregularPath += 1;