Import recent changes and add cache file for last timestamp
This commit is contained in:
parent
f9fdb28d8b
commit
4ffe86835d
11 changed files with 227 additions and 115 deletions
|
@ -3,8 +3,8 @@ Requires Node.js.
|
|||
|
||||
Generally, you just need these commands:
|
||||
|
||||
* Add all recent changes since a certain number of days ago:
|
||||
* `npm run recent 5`
|
||||
* Add all recent changes (defaults to last 7 days, but then it remembers when you last ran it):
|
||||
* `npm run recent`
|
||||
* Validate the manifest against the schema:
|
||||
* `npm run schema`
|
||||
* List some stats about the data set:
|
||||
|
|
|
@ -40004,6 +40004,11 @@ Cat Quest:
|
|||
- save
|
||||
when:
|
||||
- os: windows
|
||||
<home>/Library/Application Support/com.thegentlebros.catquest:
|
||||
tags:
|
||||
- save
|
||||
when:
|
||||
- os: mac
|
||||
installDir:
|
||||
Cat Quest: {}
|
||||
registry:
|
||||
|
@ -60608,6 +60613,9 @@ Death end re;Quest:
|
|||
Death end reQuest: {}
|
||||
steam:
|
||||
id: 990050
|
||||
Death end re;Quest 2:
|
||||
steam:
|
||||
id: 1266220
|
||||
'Death from Unknown: Survival':
|
||||
steam:
|
||||
id: 809550
|
||||
|
@ -86648,6 +86656,18 @@ Fernz Gate:
|
|||
Fernz Gate: {}
|
||||
steam:
|
||||
id: 860480
|
||||
Ferrari Virtual Race:
|
||||
files:
|
||||
<winProgramData>/Synetic/FerrariVR:
|
||||
tags:
|
||||
- config
|
||||
when:
|
||||
- os: windows
|
||||
<winProgramData>/Synetic/FerrariVR/SavedGame:
|
||||
tags:
|
||||
- save
|
||||
when:
|
||||
- os: windows
|
||||
Ferret Scoundrels:
|
||||
installDir:
|
||||
Ferret Scoundrels: {}
|
||||
|
@ -115660,6 +115680,11 @@ I Hate Santa:
|
|||
I Have Lived:
|
||||
steam:
|
||||
id: 1200700
|
||||
'I Have Low Stats But My Class Is ''Leader'', So I Recruited Everyone I Know To Fight The Dark Lord':
|
||||
installDir:
|
||||
'I Have Low Stats But My Class Is Leader, So I Recruited Everyone I Know To Fight The Dark Lord': {}
|
||||
steam:
|
||||
id: 1176040
|
||||
'I Have No Mouth, and I Must Scream':
|
||||
files:
|
||||
<base>/SCREAM:
|
||||
|
@ -202419,6 +202444,11 @@ Shan Gui:
|
|||
Shan Gui: {}
|
||||
steam:
|
||||
id: 307050
|
||||
'Shan Gui II: Sweet Osmanthus II':
|
||||
installDir:
|
||||
Shan Gui 2: {}
|
||||
steam:
|
||||
id: 952420
|
||||
Shank:
|
||||
files:
|
||||
<root>/userdata/<storeUserId>/6120/remote:
|
||||
|
@ -211001,6 +211031,11 @@ Sonic R (2004):
|
|||
- config
|
||||
when:
|
||||
- os: windows
|
||||
<base>/keys.bin:
|
||||
tags:
|
||||
- config
|
||||
when:
|
||||
- os: windows
|
||||
<base>/save:
|
||||
tags:
|
||||
- save
|
||||
|
@ -212513,12 +212548,12 @@ Space Hulk Ascension:
|
|||
id: 298900
|
||||
'Space Hulk: Deathwing - Enhanced Edition':
|
||||
files:
|
||||
<home>/AppData/Local/SpaceHulkEnhanced/Saved/Config/WindowsNoEditor:
|
||||
<winLocalAppData>/SpaceHulkEnhanced/Saved/Config/WindowsNoEditor:
|
||||
tags:
|
||||
- config
|
||||
when:
|
||||
- os: windows
|
||||
<home>/AppData/Local/SpaceHulkEnhanced/Saved/SaveGames:
|
||||
<winLocalAppData>/SpaceHulkEnhanced/Saved/SaveGames:
|
||||
tags:
|
||||
- save
|
||||
when:
|
||||
|
@ -225122,7 +225157,7 @@ Super Zombie Arcade:
|
|||
Super Zombie Arcade: {}
|
||||
steam:
|
||||
id: 903640
|
||||
Super gamebear with its three girlfriends你想知道关于超级喜欢游戏的一头黑色矮小的游戏熊是如何与它的"三个后宫团女朋友"购买到GBC游戏机的吗?:
|
||||
Super gamebear with its three girlfriends:
|
||||
installDir:
|
||||
SJX: {}
|
||||
steam:
|
||||
|
@ -225814,6 +225849,29 @@ Surge Radio:
|
|||
Surge Radio: {}
|
||||
steam:
|
||||
id: 958190
|
||||
Surgeon Simulator:
|
||||
files:
|
||||
<home>/.config/unity3d/Bossa Studios/Surgeon Simulator 2013:
|
||||
tags:
|
||||
- config
|
||||
- save
|
||||
when:
|
||||
- os: linux
|
||||
<home>/Library/Saved Application State/unity.Bossa Studios.Surgeon Simulator 2013.savedState:
|
||||
tags:
|
||||
- config
|
||||
- save
|
||||
when:
|
||||
- os: mac
|
||||
installDir:
|
||||
Surgeon Simulator: {}
|
||||
registry:
|
||||
HKEY_CURRENT_USER/Software/Bossa Studios/Surgeon Simulator 2013:
|
||||
tags:
|
||||
- config
|
||||
- save
|
||||
steam:
|
||||
id: 233720
|
||||
'Surgeon Simulator VR: Meet The Medic':
|
||||
installDir:
|
||||
Surgeon Simulator VR Meet The Medic: {}
|
||||
|
@ -238880,6 +238938,11 @@ The Journey Back:
|
|||
- save
|
||||
when:
|
||||
- os: windows
|
||||
<winAppData>/SkyGoblin/TheJourneyDown1/settings.cfg:
|
||||
tags:
|
||||
- config
|
||||
when:
|
||||
- os: windows
|
||||
<xdgConfig>/JourneyDownOne:
|
||||
tags:
|
||||
- config
|
||||
|
@ -238892,11 +238955,16 @@ The Journey Back:
|
|||
id: 220090
|
||||
'The Journey Down: Chapter Three':
|
||||
files:
|
||||
'%APPDATA%/SkyGoblin/TheJourneyDown3':
|
||||
<winAppData>/SkyGoblin/TheJourneyDown3:
|
||||
tags:
|
||||
- save
|
||||
when:
|
||||
- os: windows
|
||||
<winAppData>/SkyGoblin/TheJourneyDown3/settings.cfg:
|
||||
tags:
|
||||
- config
|
||||
when:
|
||||
- os: windows
|
||||
installDir:
|
||||
The Journey Down Chapter Three: {}
|
||||
steam:
|
||||
|
|
|
@ -7674,6 +7674,7 @@
|
|||
* [Death Collector](https://www.pcgamingwiki.com/wiki/?curid=123419)
|
||||
* [Death Crown](https://www.pcgamingwiki.com/wiki/?curid=89704)
|
||||
* [Death Dojo](https://www.pcgamingwiki.com/wiki/?curid=53041)
|
||||
* [Death end re;Quest 2](https://www.pcgamingwiki.com/wiki/?curid=161908)
|
||||
* [Death Field: The Battle Royale of Disaster](https://www.pcgamingwiki.com/wiki/?curid=91880)
|
||||
* [Death from Unknown: Survival](https://www.pcgamingwiki.com/wiki/?curid=90324)
|
||||
* [Death Fungeon](https://www.pcgamingwiki.com/wiki/?curid=103979)
|
||||
|
@ -14830,7 +14831,7 @@
|
|||
* [I Hate Santa](https://www.pcgamingwiki.com/wiki/?curid=54343)
|
||||
* [I hate this game](https://www.pcgamingwiki.com/wiki/?curid=126146)
|
||||
* [I Have Lived](https://www.pcgamingwiki.com/wiki/?curid=157108)
|
||||
* [I Have Low Stats But My Class Is "Leader", So I Recruited Everyone I Know To Fight The Dark Lord](https://www.pcgamingwiki.com/wiki/?curid=149987)
|
||||
* [I Have Low Stats But My Class Is 'Leader', So I Recruited Everyone I Know To Fight The Dark Lord](https://www.pcgamingwiki.com/wiki/?curid=149987)
|
||||
* [I Know a Tale](https://www.pcgamingwiki.com/wiki/?curid=40432)
|
||||
* [I Know Everything](https://www.pcgamingwiki.com/wiki/?curid=136828)
|
||||
* [I LIKE THE FLOWERS](https://www.pcgamingwiki.com/wiki/?curid=144620)
|
||||
|
@ -26173,7 +26174,7 @@
|
|||
* [Shallow Space](https://www.pcgamingwiki.com/wiki/?curid=45970)
|
||||
* [Shalnor Legends: Sacred Lands](https://www.pcgamingwiki.com/wiki/?curid=73050)
|
||||
* [Shaman Flower](https://www.pcgamingwiki.com/wiki/?curid=64640)
|
||||
* [Shan Gui 2 山桂贰](https://www.pcgamingwiki.com/wiki/?curid=114976)
|
||||
* [Shan Gui II: Sweet Osmanthus II](https://www.pcgamingwiki.com/wiki/?curid=114976)
|
||||
* [Shank n' Bake](https://www.pcgamingwiki.com/wiki/?curid=65132)
|
||||
* [Shannon Tweed's Attack of the Groupies](https://www.pcgamingwiki.com/wiki/?curid=50496)
|
||||
* [Shaolin vs Wutang](https://www.pcgamingwiki.com/wiki/?curid=38408)
|
||||
|
@ -28830,7 +28831,7 @@
|
|||
* [Super Furi Puzzles](https://www.pcgamingwiki.com/wiki/?curid=112136)
|
||||
* [Super Galaxy Boy](https://www.pcgamingwiki.com/wiki/?curid=68214)
|
||||
* [Super Galaxy Squadron EX](https://www.pcgamingwiki.com/wiki/?curid=38234)
|
||||
* [Super gamebear with its three girlfriends你想知道关于超级喜欢游戏的一头黑色矮小的游戏熊是如何与它的"三个后宫团女朋友"购买到GBC游戏机的吗?](https://www.pcgamingwiki.com/wiki/?curid=123938)
|
||||
* [Super gamebear with its three girlfriends](https://www.pcgamingwiki.com/wiki/?curid=123938)
|
||||
* [Super Gerry](https://www.pcgamingwiki.com/wiki/?curid=125845)
|
||||
* [Super GMA](https://www.pcgamingwiki.com/wiki/?curid=104713)
|
||||
* [Super Golf 2018](https://www.pcgamingwiki.com/wiki/?curid=96579)
|
||||
|
@ -29082,7 +29083,6 @@
|
|||
* [Surge (Campus ADN)](https://www.pcgamingwiki.com/wiki/?curid=137369)
|
||||
* [Surge Radio](https://www.pcgamingwiki.com/wiki/?curid=148785)
|
||||
* [Surgeon Simulator 2](https://www.pcgamingwiki.com/wiki/?curid=154623)
|
||||
* [Surgeon Simulator 2013](https://www.pcgamingwiki.com/wiki/?curid=6579)
|
||||
* [Surgeon Simulator: Experience Reality](https://www.pcgamingwiki.com/wiki/?curid=54493)
|
||||
* [Surgical Study and 3D Skeletons for Medical School Students](https://www.pcgamingwiki.com/wiki/?curid=148501)
|
||||
* [Surprising My Neighbors](https://www.pcgamingwiki.com/wiki/?curid=134687)
|
||||
|
|
|
@ -15420,6 +15420,7 @@
|
|||
'12660':
|
||||
installDir: Miss Popularity
|
||||
'1266100': {}
|
||||
'1266220': {}
|
||||
'1266840': {}
|
||||
'12670':
|
||||
installDir: Mission Runway
|
||||
|
|
|
@ -11281,10 +11281,10 @@ Battlefleet Engineer:
|
|||
revId: 844440
|
||||
'Battlefleet Gothic: Armada':
|
||||
pageId: 23013
|
||||
revId: 979735
|
||||
revId: 983897
|
||||
'Battlefleet Gothic: Armada 2':
|
||||
pageId: 95911
|
||||
revId: 983248
|
||||
revId: 983899
|
||||
Battlegrounds of Eldhelm:
|
||||
pageId: 49474
|
||||
revId: 844443
|
||||
|
@ -12285,7 +12285,7 @@ Beyond Minimalism:
|
|||
revId: 934432
|
||||
Beyond Oasis:
|
||||
pageId: 30866
|
||||
revId: 969214
|
||||
revId: 983792
|
||||
Beyond Power VR:
|
||||
pageId: 40329
|
||||
revId: 844728
|
||||
|
@ -17509,7 +17509,7 @@ Call of Duty 2:
|
|||
revId: 981196
|
||||
'Call of Duty: Black Ops':
|
||||
pageId: 1654
|
||||
revId: 971492
|
||||
revId: 983992
|
||||
'Call of Duty: Black Ops II':
|
||||
pageId: 3457
|
||||
revId: 977652
|
||||
|
@ -18275,7 +18275,7 @@ Carrier Trail:
|
|||
revId: 846619
|
||||
Carrion:
|
||||
pageId: 139686
|
||||
revId: 983245
|
||||
revId: 983793
|
||||
Carrotting Brain:
|
||||
pageId: 45922
|
||||
revId: 846621
|
||||
|
@ -18660,10 +18660,10 @@ Cat Notebook:
|
|||
revId: 884077
|
||||
Cat Quest:
|
||||
pageId: 65118
|
||||
revId: 965422
|
||||
revId: 983778
|
||||
Cat Quest II:
|
||||
pageId: 132805
|
||||
revId: 983751
|
||||
revId: 983784
|
||||
Cat Simulator:
|
||||
pageId: 44629
|
||||
revId: 929846
|
||||
|
@ -24083,7 +24083,7 @@ CreatorCrate:
|
|||
revId: 848332
|
||||
Creatura:
|
||||
pageId: 80711
|
||||
revId: 979568
|
||||
revId: 983973
|
||||
Creature Card Idle:
|
||||
pageId: 153901
|
||||
revId: 916653
|
||||
|
@ -27509,7 +27509,7 @@ Dead Age:
|
|||
revId: 961426
|
||||
Dead Age 2:
|
||||
pageId: 154235
|
||||
revId: 983554
|
||||
revId: 983905
|
||||
Dead Alliance:
|
||||
pageId: 66089
|
||||
revId: 849306
|
||||
|
@ -28187,7 +28187,7 @@ Death Stair:
|
|||
revId: 849517
|
||||
Death Stranding:
|
||||
pageId: 151674
|
||||
revId: 983774
|
||||
revId: 983893
|
||||
Death Sword:
|
||||
pageId: 76506
|
||||
revId: 964739
|
||||
|
@ -28232,7 +28232,10 @@ Death by Game Show:
|
|||
revId: 849527
|
||||
Death end re;Quest:
|
||||
pageId: 130527
|
||||
revId: 983527
|
||||
revId: 983982
|
||||
Death end re;Quest 2:
|
||||
pageId: 161908
|
||||
revId: 983979
|
||||
'Death from Unknown: Survival':
|
||||
pageId: 90324
|
||||
revId: 849529
|
||||
|
@ -34158,7 +34161,7 @@ Dwarflings:
|
|||
revId: 851455
|
||||
Dwarfs!?:
|
||||
pageId: 4762
|
||||
revId: 982201
|
||||
revId: 983915
|
||||
Dwarrows:
|
||||
pageId: 67661
|
||||
revId: 969344
|
||||
|
@ -34244,11 +34247,11 @@ Dynasty Feud:
|
|||
'Dynasty Warriors 4: Hyper':
|
||||
irregularPath: true
|
||||
pageId: 16672
|
||||
revId: 983225
|
||||
revId: 983818
|
||||
Dynasty Warriors 5 Special:
|
||||
irregularPath: true
|
||||
pageId: 111468
|
||||
revId: 983077
|
||||
revId: 983817
|
||||
Dynasty Warriors 6:
|
||||
irregularPath: true
|
||||
pageId: 5157
|
||||
|
@ -35352,7 +35355,7 @@ Eldevin:
|
|||
revId: 851780
|
||||
Eldritch:
|
||||
pageId: 17365
|
||||
revId: 929841
|
||||
revId: 983887
|
||||
Eldritch Academy:
|
||||
pageId: 128515
|
||||
revId: 851782
|
||||
|
@ -35772,7 +35775,7 @@ EmbodyMe:
|
|||
revId: 851905
|
||||
Embr:
|
||||
pageId: 136068
|
||||
revId: 981937
|
||||
revId: 983800
|
||||
'Embrace of Ocean: Story of Hope':
|
||||
pageId: 66428
|
||||
revId: 851907
|
||||
|
@ -37346,10 +37349,10 @@ Euclidean Skies:
|
|||
revId: 852368
|
||||
Eufloria:
|
||||
pageId: 63
|
||||
revId: 934004
|
||||
revId: 983891
|
||||
Eufloria HD:
|
||||
pageId: 38353
|
||||
revId: 934005
|
||||
revId: 983890
|
||||
Eugenics:
|
||||
pageId: 122682
|
||||
revId: 852371
|
||||
|
@ -37376,19 +37379,19 @@ Eurofighter Typhoon:
|
|||
revId: 938031
|
||||
Europa Universalis:
|
||||
pageId: 23215
|
||||
revId: 926304
|
||||
revId: 983876
|
||||
Europa Universalis II:
|
||||
pageId: 25667
|
||||
revId: 926305
|
||||
revId: 983878
|
||||
Europa Universalis III:
|
||||
pageId: 3197
|
||||
revId: 976826
|
||||
revId: 983880
|
||||
Europa Universalis IV:
|
||||
pageId: 9100
|
||||
revId: 977756
|
||||
revId: 983883
|
||||
'Europa Universalis: Rome':
|
||||
pageId: 15539
|
||||
revId: 926307
|
||||
revId: 983885
|
||||
tooBroad: true
|
||||
Europe Racing:
|
||||
pageId: 88291
|
||||
|
@ -38267,19 +38270,19 @@ F-22 Lightning 3:
|
|||
revId: 917592
|
||||
F.E.A.R.:
|
||||
pageId: 1345
|
||||
revId: 960248
|
||||
revId: 983853
|
||||
'F.E.A.R. 2: Project Origin':
|
||||
pageId: 1860
|
||||
revId: 928749
|
||||
revId: 983856
|
||||
F.E.A.R. 3:
|
||||
pageId: 1858
|
||||
revId: 983667
|
||||
revId: 983858
|
||||
F.E.A.R. Online:
|
||||
pageId: 20158
|
||||
revId: 852671
|
||||
revId: 983860
|
||||
F.E.A.R. Perseus Mandate:
|
||||
pageId: 1362
|
||||
revId: 960250
|
||||
revId: 983855
|
||||
F.E.X (Forced Evolution Experiment):
|
||||
pageId: 68136
|
||||
revId: 852673
|
||||
|
@ -38612,7 +38615,7 @@ FSX SpacePort:
|
|||
revId: 852740
|
||||
'FTL: Faster Than Light':
|
||||
pageId: 3559
|
||||
revId: 965390
|
||||
revId: 983941
|
||||
FUBAR:
|
||||
pageId: 138817
|
||||
revId: 852742
|
||||
|
@ -38804,7 +38807,7 @@ Faerie Solitaire Remastered:
|
|||
revId: 905772
|
||||
Fahrenheit:
|
||||
pageId: 4137
|
||||
revId: 970307
|
||||
revId: 983916
|
||||
'Fahrenheit: Indigo Prophecy Remastered':
|
||||
pageId: 22434
|
||||
revId: 960652
|
||||
|
@ -38858,6 +38861,8 @@ Fairy Fencer F:
|
|||
revId: 982514
|
||||
'Fairy Fencer F: Advent Dark Force':
|
||||
pageId: 57452
|
||||
renamedFrom:
|
||||
- Fairy Fencer F Advent Dark Force
|
||||
revId: 982517
|
||||
'Fairy Godmother Stories: Cinderella':
|
||||
pageId: 153042
|
||||
|
@ -39140,7 +39145,7 @@ Fallout 4 VR:
|
|||
revId: 972307
|
||||
Fallout 76:
|
||||
pageId: 95739
|
||||
revId: 981975
|
||||
revId: 983948
|
||||
Fallout Shelter:
|
||||
pageId: 33356
|
||||
revId: 960659
|
||||
|
@ -39906,7 +39911,7 @@ Fatman Simulator:
|
|||
revId: 853142
|
||||
Fatty Bear's Birthday Surprise:
|
||||
pageId: 37638
|
||||
revId: 964797
|
||||
revId: 983917
|
||||
Fatty Bear's Fun Pack:
|
||||
pageId: 147372
|
||||
revId: 964798
|
||||
|
@ -40171,6 +40176,9 @@ Fernbus Simulator:
|
|||
Fernz Gate:
|
||||
pageId: 99914
|
||||
revId: 853222
|
||||
Ferrari Virtual Race:
|
||||
pageId: 161877
|
||||
revId: 983362
|
||||
Ferret Scoundrels:
|
||||
pageId: 135008
|
||||
revId: 853223
|
||||
|
@ -42042,7 +42050,7 @@ For a Better Country:
|
|||
revId: 840692
|
||||
'For the Glory: A Europa Universalis Game':
|
||||
pageId: 22254
|
||||
revId: 926308
|
||||
revId: 983882
|
||||
For the King:
|
||||
pageId: 56288
|
||||
revId: 980721
|
||||
|
@ -42560,7 +42568,7 @@ Foto Flash 2:
|
|||
revId: 853953
|
||||
Fotonica:
|
||||
pageId: 5497
|
||||
revId: 929929
|
||||
revId: 983821
|
||||
Foul Play:
|
||||
pageId: 10228
|
||||
revId: 942107
|
||||
|
@ -42968,10 +42976,10 @@ Freedom Locomotion VR:
|
|||
revId: 854084
|
||||
Freedom Planet:
|
||||
pageId: 18561
|
||||
revId: 933437
|
||||
revId: 983824
|
||||
Freedom Planet 2:
|
||||
pageId: 31119
|
||||
revId: 919766
|
||||
revId: 983823
|
||||
Freedom Poopie:
|
||||
pageId: 46040
|
||||
revId: 854088
|
||||
|
@ -43347,13 +43355,13 @@ Frozen State:
|
|||
revId: 854196
|
||||
Frozen Synapse:
|
||||
pageId: 3030
|
||||
revId: 926501
|
||||
revId: 983862
|
||||
Frozen Synapse 2:
|
||||
pageId: 39436
|
||||
revId: 926500
|
||||
revId: 983864
|
||||
Frozen Synapse Prime:
|
||||
pageId: 20855
|
||||
revId: 926499
|
||||
revId: 983863
|
||||
Frqncy:
|
||||
pageId: 102559
|
||||
revId: 854201
|
||||
|
@ -45200,7 +45208,7 @@ Geometry Boxer:
|
|||
revId: 854733
|
||||
Geometry Dash:
|
||||
pageId: 25652
|
||||
revId: 980327
|
||||
revId: 983866
|
||||
'Geometry Defense: Infinite':
|
||||
pageId: 98700
|
||||
revId: 854735
|
||||
|
@ -46303,7 +46311,7 @@ God Hand:
|
|||
revId: 855072
|
||||
God Mode:
|
||||
pageId: 6316
|
||||
revId: 934129
|
||||
revId: 983870
|
||||
God Monster:
|
||||
pageId: 127379
|
||||
revId: 855074
|
||||
|
@ -47438,7 +47446,7 @@ Greece Defense TD:
|
|||
revId: 855393
|
||||
Greed Corp:
|
||||
pageId: 13415
|
||||
revId: 983770
|
||||
revId: 983820
|
||||
'Greed: Black Border':
|
||||
pageId: 26031
|
||||
revId: 948655
|
||||
|
@ -47541,10 +47549,10 @@ Gregory and the Hot Air Balloon:
|
|||
revId: 855423
|
||||
Gremlins vs Automatons:
|
||||
pageId: 133054
|
||||
revId: 855424
|
||||
revId: 983875
|
||||
'Gremlins, Inc.':
|
||||
pageId: 34833
|
||||
revId: 933425
|
||||
revId: 983874
|
||||
Grenade Madness:
|
||||
pageId: 43588
|
||||
revId: 855426
|
||||
|
@ -48238,7 +48246,7 @@ Gun Road:
|
|||
revId: 855625
|
||||
Gun Rocket:
|
||||
pageId: 35403
|
||||
revId: 855626
|
||||
revId: 983873
|
||||
Gun Wings:
|
||||
pageId: 31214
|
||||
revId: 895279
|
||||
|
@ -48291,7 +48299,7 @@ Gunducky Industries:
|
|||
revId: 855639
|
||||
Gunfire Reborn:
|
||||
pageId: 160987
|
||||
revId: 980326
|
||||
revId: 983947
|
||||
Gunhead:
|
||||
pageId: 77405
|
||||
revId: 920358
|
||||
|
@ -49036,7 +49044,7 @@ Halo 2:
|
|||
revId: 966478
|
||||
'Halo 2: Anniversary':
|
||||
pageId: 129526
|
||||
revId: 981416
|
||||
revId: 983967
|
||||
Halo 3:
|
||||
pageId: 129522
|
||||
revId: 983213
|
||||
|
@ -53962,9 +53970,11 @@ I Hate Santa:
|
|||
I Have Lived:
|
||||
pageId: 157108
|
||||
revId: 932317
|
||||
'I Have Low Stats But My Class Is "Leader", So I Recruited Everyone I Know To Fight The Dark Lord':
|
||||
'I Have Low Stats But My Class Is ''Leader'', So I Recruited Everyone I Know To Fight The Dark Lord':
|
||||
pageId: 149987
|
||||
revId: 983101
|
||||
renamedFrom:
|
||||
- 'I Have Low Stats But My Class Is "Leader", So I Recruited Everyone I Know To Fight The Dark Lord'
|
||||
revId: 983443
|
||||
'I Have No Mouth, and I Must Scream':
|
||||
pageId: 11366
|
||||
revId: 979472
|
||||
|
@ -54033,7 +54043,7 @@ I Will Escape:
|
|||
revId: 857265
|
||||
I am Bread:
|
||||
pageId: 48252
|
||||
revId: 936919
|
||||
revId: 983957
|
||||
'I am Weapon: Revival':
|
||||
pageId: 45910
|
||||
revId: 857267
|
||||
|
@ -55981,10 +55991,10 @@ Insurgence - Second Assault:
|
|||
revId: 857799
|
||||
Insurgency:
|
||||
pageId: 14412
|
||||
revId: 983671
|
||||
revId: 983937
|
||||
'Insurgency: Sandstorm':
|
||||
pageId: 97339
|
||||
revId: 962866
|
||||
revId: 983938
|
||||
Intake:
|
||||
pageId: 12108
|
||||
revId: 960361
|
||||
|
@ -56086,13 +56096,13 @@ Internet Simulator:
|
|||
revId: 857828
|
||||
Interplanetary:
|
||||
pageId: 16966
|
||||
revId: 857829
|
||||
revId: 983928
|
||||
Interplanetary Hunter:
|
||||
pageId: 66613
|
||||
revId: 857830
|
||||
'Interplanetary: Enhanced Edition':
|
||||
pageId: 67113
|
||||
revId: 934189
|
||||
revId: 983927
|
||||
Interplay Solitaire:
|
||||
pageId: 62292
|
||||
revId: 857832
|
||||
|
@ -58565,7 +58575,7 @@ Kamer:
|
|||
revId: 930459
|
||||
Kami:
|
||||
pageId: 18586
|
||||
revId: 933444
|
||||
revId: 984005
|
||||
Kamikaze Cube:
|
||||
pageId: 69675
|
||||
revId: 858521
|
||||
|
@ -62324,7 +62334,7 @@ Lemmings Paintball:
|
|||
revId: 927953
|
||||
Lemmings Revolution:
|
||||
pageId: 56013
|
||||
revId: 927955
|
||||
revId: 983995
|
||||
Lemnis Gate:
|
||||
pageId: 139486
|
||||
revId: 859573
|
||||
|
@ -62800,7 +62810,7 @@ Lifeless Moon:
|
|||
revId: 840775
|
||||
Lifeless Planet:
|
||||
pageId: 15914
|
||||
revId: 981569
|
||||
revId: 983850
|
||||
Lifeless Vanguard:
|
||||
pageId: 132202
|
||||
revId: 886918
|
||||
|
@ -64837,16 +64847,16 @@ Lukewarm Ironclad:
|
|||
revId: 887234
|
||||
Lula 3D:
|
||||
pageId: 90839
|
||||
revId: 963277
|
||||
revId: 983842
|
||||
Lula Flipper:
|
||||
pageId: 92460
|
||||
revId: 929116
|
||||
Lula Virtual Babe:
|
||||
pageId: 92467
|
||||
revId: 929115
|
||||
revId: 983845
|
||||
'Lula: The Sexy Empire':
|
||||
pageId: 131862
|
||||
revId: 938223
|
||||
revId: 983843
|
||||
Lulu & Ennoi - Sacred Suit Girls:
|
||||
pageId: 148789
|
||||
revId: 900444
|
||||
|
@ -65775,7 +65785,7 @@ Mafia Gambling:
|
|||
revId: 860582
|
||||
Mafia II:
|
||||
pageId: 11207
|
||||
revId: 983374
|
||||
revId: 983807
|
||||
'Mafia II: Definitive Edition':
|
||||
pageId: 160506
|
||||
revId: 979565
|
||||
|
@ -66030,7 +66040,7 @@ Magical Brickout:
|
|||
revId: 860658
|
||||
Magical Chase:
|
||||
pageId: 143588
|
||||
revId: 907690
|
||||
revId: 984023
|
||||
unsupportedPath: true
|
||||
Magical Diary:
|
||||
pageId: 18809
|
||||
|
@ -66628,7 +66638,7 @@ Mango Cart:
|
|||
revId: 860829
|
||||
Manhunt:
|
||||
pageId: 3923
|
||||
revId: 982724
|
||||
revId: 983841
|
||||
Manhunt 2:
|
||||
pageId: 16010
|
||||
revId: 983765
|
||||
|
@ -77427,7 +77437,7 @@ One Step Beyond:
|
|||
revId: 964982
|
||||
One Step from Eden:
|
||||
pageId: 122848
|
||||
revId: 962084
|
||||
revId: 984017
|
||||
One Strike:
|
||||
pageId: 74195
|
||||
revId: 921754
|
||||
|
@ -79530,7 +79540,7 @@ Panzer Elite:
|
|||
revId: 928356
|
||||
'Panzer Elite Action: Fields of Glory':
|
||||
pageId: 50254
|
||||
revId: 928357
|
||||
revId: 983960
|
||||
Panzer General 3D Assault:
|
||||
pageId: 131869
|
||||
revId: 926465
|
||||
|
@ -80301,7 +80311,7 @@ Peakvox Route Candle for Steam:
|
|||
revId: 897305
|
||||
'Peaky Blinders: Mastermind':
|
||||
pageId: 159374
|
||||
revId: 981375
|
||||
revId: 983908
|
||||
Peanut:
|
||||
pageId: 135177
|
||||
revId: 977702
|
||||
|
@ -80914,7 +80924,7 @@ Phoenix Tales:
|
|||
revId: 916055
|
||||
'Phoenix Wright: Ace Attorney Trilogy':
|
||||
pageId: 111586
|
||||
revId: 960884
|
||||
revId: 983813
|
||||
Phoning Home:
|
||||
pageId: 56384
|
||||
revId: 976378
|
||||
|
@ -81142,7 +81152,7 @@ Piko Piko:
|
|||
revId: 864843
|
||||
Pikuniku:
|
||||
pageId: 124341
|
||||
revId: 983759
|
||||
revId: 983952
|
||||
Pilam Sky:
|
||||
pageId: 63171
|
||||
revId: 897429
|
||||
|
@ -82085,7 +82095,7 @@ Planet Alcatraz 2:
|
|||
revId: 897580
|
||||
Planet Alpha:
|
||||
pageId: 90400
|
||||
revId: 962844
|
||||
revId: 983932
|
||||
Planet Ancyra Chronicles:
|
||||
pageId: 62833
|
||||
revId: 865102
|
||||
|
@ -84778,7 +84788,7 @@ Protothype:
|
|||
revId: 898023
|
||||
Prototype:
|
||||
pageId: 3861
|
||||
revId: 965703
|
||||
revId: 983825
|
||||
Prototype 2:
|
||||
pageId: 3245
|
||||
revId: 981958
|
||||
|
@ -94628,7 +94638,7 @@ Seeking Dawn:
|
|||
revId: 868673
|
||||
Seen:
|
||||
pageId: 135523
|
||||
revId: 868674
|
||||
revId: 983808
|
||||
Seep Universe:
|
||||
pageId: 47269
|
||||
revId: 868675
|
||||
|
@ -95498,9 +95508,11 @@ Shaman Flower:
|
|||
Shan Gui:
|
||||
pageId: 49745
|
||||
revId: 982423
|
||||
Shan Gui 2 山桂贰:
|
||||
'Shan Gui II: Sweet Osmanthus II':
|
||||
pageId: 114976
|
||||
revId: 982422
|
||||
renamedFrom:
|
||||
- Shan Gui 2 山桂贰
|
||||
revId: 982421
|
||||
Shank:
|
||||
pageId: 4733
|
||||
revId: 926382
|
||||
|
@ -97709,7 +97721,7 @@ Skyhill:
|
|||
revId: 925876
|
||||
'Skyhill: Black Mist':
|
||||
pageId: 135531
|
||||
revId: 975155
|
||||
revId: 983931
|
||||
Skyhook:
|
||||
pageId: 34707
|
||||
revId: 884546
|
||||
|
@ -99456,7 +99468,7 @@ Sonic 3D Blast (2010):
|
|||
revId: 950109
|
||||
Sonic Adventure 2:
|
||||
pageId: 5774
|
||||
revId: 969936
|
||||
revId: 983998
|
||||
Sonic Adventure DX:
|
||||
pageId: 21737
|
||||
revId: 963248
|
||||
|
@ -99501,7 +99513,7 @@ Sonic R (1998):
|
|||
revId: 982490
|
||||
Sonic R (2004):
|
||||
pageId: 76705
|
||||
revId: 982492
|
||||
revId: 983981
|
||||
Sonic Racing:
|
||||
pageId: 148163
|
||||
revId: 950127
|
||||
|
@ -100187,7 +100199,7 @@ Space Hulk Ascension:
|
|||
revId: 969065
|
||||
'Space Hulk: Deathwing - Enhanced Edition':
|
||||
pageId: 95121
|
||||
revId: 983702
|
||||
revId: 983901
|
||||
'Space Hulk: Tactics':
|
||||
pageId: 95887
|
||||
revId: 969063
|
||||
|
@ -103849,7 +103861,7 @@ Story of Monster:
|
|||
revId: 871404
|
||||
'Story of Seasons: Friends of Mineral Town':
|
||||
pageId: 161249
|
||||
revId: 983009
|
||||
revId: 983832
|
||||
Story of a Cube:
|
||||
pageId: 44265
|
||||
revId: 871405
|
||||
|
@ -105819,9 +105831,11 @@ Super X Chess:
|
|||
Super Zombie Arcade:
|
||||
pageId: 113566
|
||||
revId: 978398
|
||||
Super gamebear with its three girlfriends你想知道关于超级喜欢游戏的一头黑色矮小的游戏熊是如何与它的"三个后宫团女朋友"购买到GBC游戏机的吗?:
|
||||
Super gamebear with its three girlfriends:
|
||||
pageId: 123938
|
||||
revId: 871979
|
||||
renamedFrom:
|
||||
- Super gamebear with its three girlfriends你想知道关于超级喜欢游戏的一头黑色矮小的游戏熊是如何与它的"三个后宫团女朋友"购买到GBC游戏机的吗?
|
||||
revId: 983837
|
||||
Super president How to rule the country:
|
||||
pageId: 128328
|
||||
revId: 871980
|
||||
|
@ -105920,7 +105934,7 @@ Superhot VR:
|
|||
revId: 982134
|
||||
'Superhot: Mind Control Delete':
|
||||
pageId: 78066
|
||||
revId: 983732
|
||||
revId: 983907
|
||||
Superior Wizards:
|
||||
pageId: 113818
|
||||
revId: 872007
|
||||
|
@ -106116,12 +106130,14 @@ Surge (Campus ADN):
|
|||
Surge Radio:
|
||||
pageId: 148785
|
||||
revId: 900440
|
||||
Surgeon Simulator:
|
||||
pageId: 6579
|
||||
renamedFrom:
|
||||
- Surgeon Simulator 2013
|
||||
revId: 983656
|
||||
Surgeon Simulator 2:
|
||||
pageId: 154623
|
||||
revId: 983647
|
||||
Surgeon Simulator 2013:
|
||||
pageId: 6579
|
||||
revId: 983649
|
||||
'Surgeon Simulator VR: Meet The Medic':
|
||||
pageId: 43736
|
||||
revId: 928441
|
||||
|
@ -112158,13 +112174,13 @@ The Journey Back:
|
|||
revId: 873779
|
||||
'The Journey Down: Chapter One':
|
||||
pageId: 19711
|
||||
revId: 948642
|
||||
revId: 984001
|
||||
'The Journey Down: Chapter Three':
|
||||
pageId: 58948
|
||||
revId: 948644
|
||||
revId: 983997
|
||||
'The Journey Down: Chapter Two':
|
||||
pageId: 19712
|
||||
revId: 948643
|
||||
revId: 983964
|
||||
The Journey Home:
|
||||
pageId: 36918
|
||||
revId: 873783
|
||||
|
@ -112656,13 +112672,13 @@ The Legend of Three Kingdoms:
|
|||
revId: 983424
|
||||
The Legend of Three Kingdoms 2:
|
||||
pageId: 161503
|
||||
revId: 980014
|
||||
revId: 983833
|
||||
The Legend of Three Kingdoms 3:
|
||||
pageId: 161523
|
||||
revId: 983211
|
||||
revId: 983834
|
||||
The Legend of Three Kingdoms 4:
|
||||
pageId: 161547
|
||||
revId: 983202
|
||||
revId: 983835
|
||||
The Legend of Three Kingdoms 5:
|
||||
pageId: 161555
|
||||
revId: 983204
|
||||
|
@ -115724,7 +115740,7 @@ The Wolf's Bite:
|
|||
revId: 874749
|
||||
'The Wonderful 101: Remastered':
|
||||
pageId: 157799
|
||||
revId: 973574
|
||||
revId: 983806
|
||||
The Wonderful End of the World:
|
||||
pageId: 18328
|
||||
revId: 968998
|
||||
|
@ -117924,7 +117940,7 @@ Torchlight:
|
|||
revId: 980738
|
||||
Torchlight II:
|
||||
pageId: 3587
|
||||
revId: 983625
|
||||
revId: 983879
|
||||
Torchlight III:
|
||||
pageId: 106331
|
||||
revId: 979809
|
||||
|
@ -125401,7 +125417,7 @@ Warhalla:
|
|||
revId: 968498
|
||||
'Warhammer 40,000: Rites of War':
|
||||
pageId: 131754
|
||||
revId: 968504
|
||||
revId: 983911
|
||||
'Warhammer 40,000: Sanctus Reach':
|
||||
pageId: 39380
|
||||
revId: 968491
|
||||
|
@ -125434,7 +125450,7 @@ Warhammer Quest:
|
|||
revId: 961132
|
||||
'Warhammer: Chaosbane':
|
||||
pageId: 124567
|
||||
revId: 961133
|
||||
revId: 983894
|
||||
'Warhammer: Dark Omen':
|
||||
pageId: 26848
|
||||
revId: 961134
|
||||
|
@ -128483,7 +128499,7 @@ Worms 3D:
|
|||
revId: 975355
|
||||
Worms Armageddon:
|
||||
pageId: 1940
|
||||
revId: 983745
|
||||
revId: 983926
|
||||
tooBroad: true
|
||||
Worms Blast:
|
||||
pageId: 12031
|
||||
|
|
1
data/wiki-meta-cache.yaml
Normal file
1
data/wiki-meta-cache.yaml
Normal file
|
@ -0,0 +1 @@
|
|||
lastCheckedRecentChanges: '2020-07-17T19:48:22.752Z'
|
5
package-lock.json
generated
5
package-lock.json
generated
|
@ -800,6 +800,11 @@
|
|||
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
|
||||
"dev": true
|
||||
},
|
||||
"moment": {
|
||||
"version": "2.27.0",
|
||||
"resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz",
|
||||
"integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ=="
|
||||
},
|
||||
"node-version-compare": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/node-version-compare/-/node-version-compare-1.0.2.tgz",
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
"dependencies": {
|
||||
"js-yaml": "^3.14.0",
|
||||
"minimist": "^1.2.5",
|
||||
"moment": "^2.27.0",
|
||||
"nodemw": "^0.13.0",
|
||||
"steam-user": "^4.16.2",
|
||||
"wikiapi": "^1.10.0"
|
||||
|
|
10
src/bin.ts
10
src/bin.ts
|
@ -2,7 +2,7 @@ import * as minimist from "minimist";
|
|||
|
||||
import { ManifestFile } from "./manifest";
|
||||
import { SteamGameCacheFile, getSteamClient } from "./steam";
|
||||
import { WikiGameCacheFile } from "./wiki";
|
||||
import { WikiGameCacheFile, WikiMetaCacheFile } from "./wiki";
|
||||
import { saveMissingGames } from "./missing";
|
||||
|
||||
interface Cli {
|
||||
|
@ -20,7 +20,7 @@ interface Cli {
|
|||
tooBroad?: boolean,
|
||||
tooBroadUntagged?: boolean,
|
||||
skipUntil?: string,
|
||||
recent?: number,
|
||||
recent?: boolean,
|
||||
limit?: number,
|
||||
}
|
||||
|
||||
|
@ -45,6 +45,8 @@ async function main() {
|
|||
|
||||
const wikiCache = new WikiGameCacheFile();
|
||||
wikiCache.load();
|
||||
const wikiMetaCache = new WikiMetaCacheFile();
|
||||
wikiMetaCache.load();
|
||||
const steamCache = new SteamGameCacheFile(await getSteamClient());
|
||||
steamCache.load();
|
||||
const manifest = new ManifestFile();
|
||||
|
@ -61,7 +63,7 @@ async function main() {
|
|||
try {
|
||||
if (args.cache) {
|
||||
if (args.recent) {
|
||||
await wikiCache.flagRecentChanges(args.recent);
|
||||
await wikiCache.flagRecentChanges(wikiMetaCache);
|
||||
} else {
|
||||
await wikiCache.addNewGames();
|
||||
}
|
||||
|
@ -91,6 +93,7 @@ async function main() {
|
|||
}
|
||||
|
||||
wikiCache.save();
|
||||
wikiMetaCache.save();
|
||||
steamCache.save();
|
||||
manifest.save();
|
||||
saveMissingGames(wikiCache.data, manifest.data);
|
||||
|
@ -98,6 +101,7 @@ async function main() {
|
|||
process.exit(0);
|
||||
} catch (e) {
|
||||
wikiCache.save();
|
||||
wikiMetaCache.save();
|
||||
steamCache.save();
|
||||
manifest.save();
|
||||
saveMissingGames(wikiCache.data, manifest.data);
|
||||
|
|
|
@ -57,7 +57,7 @@ export class ManifestFile extends YamlFile<Manifest> {
|
|||
tooBroadUntagged: boolean,
|
||||
skipUntil: string | undefined,
|
||||
games: Array<string> | undefined,
|
||||
recent: number | undefined,
|
||||
recent: boolean | undefined,
|
||||
},
|
||||
limit: number | undefined,
|
||||
steamCache: SteamGameCacheFile,
|
||||
|
|
28
src/wiki.ts
28
src/wiki.ts
|
@ -1,7 +1,8 @@
|
|||
import { REPO, PathType, UnsupportedOsError, UnsupportedPathError, YamlFile } from ".";
|
||||
import { Constraint, Game, Store, Tag, Os } from "./manifest";
|
||||
import * as Wikiapi from "wikiapi";
|
||||
import * as moment from "moment";
|
||||
import * as NodeMw from "nodemw";
|
||||
import * as Wikiapi from "wikiapi";
|
||||
|
||||
export type WikiGameCache = {
|
||||
[title: string]: {
|
||||
|
@ -19,6 +20,10 @@ export type WikiGameCache = {
|
|||
};
|
||||
};
|
||||
|
||||
export type WikiMetaCache = {
|
||||
lastCheckedRecentChanges: string;
|
||||
};
|
||||
|
||||
export class WikiGameCacheFile extends YamlFile<WikiGameCache> {
|
||||
path = `${REPO}/data/wiki-game-cache.yaml`;
|
||||
defaultData = {};
|
||||
|
@ -36,9 +41,11 @@ export class WikiGameCacheFile extends YamlFile<WikiGameCache> {
|
|||
};
|
||||
}
|
||||
|
||||
async flagRecentChanges(days: number): Promise<void> {
|
||||
const changes = await getRecentChanges(days);
|
||||
async flagRecentChanges(metaCache: WikiMetaCacheFile): Promise<void> {
|
||||
const now = moment();
|
||||
const changes = await getRecentChanges(now.toDate(), moment(metaCache.data.lastCheckedRecentChanges).subtract(1, "minute").toDate());
|
||||
const client = makeApiClient2();
|
||||
|
||||
for (const [recentName, recentInfo] of Object.entries(changes).sort((x, y) => x[0].localeCompare(y[0]))) {
|
||||
if (this.data[recentName] !== undefined) {
|
||||
// Existing entry has been edited.
|
||||
|
@ -73,9 +80,18 @@ export class WikiGameCacheFile extends YamlFile<WikiGameCache> {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
metaCache.data.lastCheckedRecentChanges = now.toISOString();
|
||||
}
|
||||
}
|
||||
|
||||
export class WikiMetaCacheFile extends YamlFile<WikiMetaCache> {
|
||||
path = `${REPO}/data/wiki-meta-cache.yaml`;
|
||||
defaultData = {
|
||||
lastCheckedRecentChanges: moment().subtract(7, "days").toISOString(),
|
||||
};
|
||||
}
|
||||
|
||||
interface RecentChanges {
|
||||
[article: string]: {
|
||||
pageId: number;
|
||||
|
@ -418,11 +434,11 @@ function callMw<T = any>(client, method: string, ...args: Array<any>): Promise<[
|
|||
});
|
||||
}
|
||||
|
||||
export async function getRecentChanges(days: number): Promise<RecentChanges> {
|
||||
export async function getRecentChanges(newest: Date, oldest: Date): Promise<RecentChanges> {
|
||||
const changes: RecentChanges = {};
|
||||
const client = makeApiClient2();
|
||||
const startTimestamp = new Date().toISOString();
|
||||
const endTimestamp = new Date(new Date().setDate(new Date().getDate() - days)).toISOString();
|
||||
const startTimestamp = newest.toISOString();
|
||||
const endTimestamp = oldest.toISOString();
|
||||
let rccontinue: string | undefined = undefined;
|
||||
|
||||
while (true) {
|
||||
|
|
Reference in a new issue