@nekosuneprojects/gaming-infos 2.4.0 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (729) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +62 -334
  3. package/index.js +3 -225
  4. package/package.json +53 -58
  5. package/src/providers/vrchat.js +11 -0
  6. package/src/providers/warframe.js +7 -0
  7. package/src/registry.js +23 -0
  8. package/.github/workflows/npm-publish-github-packages.yml +0 -56
  9. package/.github/workflows/npm-publish.yml +0 -71
  10. package/.github/workflows/sync-api-cache.yml +0 -73
  11. package/CACHE_SYNC.md +0 -202
  12. package/CONTRIBUTING.md +0 -217
  13. package/DATA.md +0 -292
  14. package/data/.cache-manifest.json +0 -112
  15. package/data/arknightsendfield/characters/akekuri.json +0 -75
  16. package/data/arknightsendfield/characters/alesh.json +0 -75
  17. package/data/arknightsendfield/characters/antal.json +0 -75
  18. package/data/arknightsendfield/characters/arcane.json +0 -75
  19. package/data/arknightsendfield/characters/arclight.json +0 -75
  20. package/data/arknightsendfield/characters/ardelia.json +0 -75
  21. package/data/arknightsendfield/characters/avywenna.json +0 -76
  22. package/data/arknightsendfield/characters/camille.json +0 -77
  23. package/data/arknightsendfield/characters/catcher.json +0 -76
  24. package/data/arknightsendfield/characters/chenqianyu.json +0 -76
  25. package/data/arknightsendfield/characters/dapan.json +0 -76
  26. package/data/arknightsendfield/characters/ember.json +0 -76
  27. package/data/arknightsendfield/characters/endministrator.json +0 -63
  28. package/data/arknightsendfield/characters/estella.json +0 -76
  29. package/data/arknightsendfield/characters/fluorite.json +0 -75
  30. package/data/arknightsendfield/characters/gilberta.json +0 -76
  31. package/data/arknightsendfield/characters/laevatain.json +0 -76
  32. package/data/arknightsendfield/characters/lastrite.json +0 -76
  33. package/data/arknightsendfield/characters/lifeng.json +0 -75
  34. package/data/arknightsendfield/characters/liino.json +0 -76
  35. package/data/arknightsendfield/characters/mifu.json +0 -75
  36. package/data/arknightsendfield/characters/perlica.json +0 -76
  37. package/data/arknightsendfield/characters/pogranichnik.json +0 -75
  38. package/data/arknightsendfield/characters/purrchena.json +0 -50
  39. package/data/arknightsendfield/characters/rossi.json +0 -77
  40. package/data/arknightsendfield/characters/snowshine.json +0 -75
  41. package/data/arknightsendfield/characters/tangtang.json +0 -76
  42. package/data/arknightsendfield/characters/typhoeus.json +0 -57
  43. package/data/arknightsendfield/characters/wulfgard.json +0 -77
  44. package/data/arknightsendfield/characters/xaihi.json +0 -76
  45. package/data/arknightsendfield/characters/yvonne.json +0 -76
  46. package/data/arknightsendfield/characters/zhuangfangyi.json +0 -76
  47. package/data/arknightsendfield/meta.json +0 -14
  48. package/data/fortnite/characters/agentjones.json +0 -43
  49. package/data/fortnite/characters/agentpeely.json +0 -43
  50. package/data/fortnite/characters/andyfangerson.json +0 -42
  51. package/data/fortnite/characters/antonia.json +0 -43
  52. package/data/fortnite/characters/anwar.json +0 -44
  53. package/data/fortnite/characters/aphrodite.json +0 -43
  54. package/data/fortnite/characters/apollo.json +0 -36
  55. package/data/fortnite/characters/arcticassassin.json +0 -43
  56. package/data/fortnite/characters/artemis.json +0 -36
  57. package/data/fortnite/characters/battlewoodboulevard.json +0 -43
  58. package/data/fortnite/characters/beastmode.json +0 -45
  59. package/data/fortnite/characters/bogstick.json +0 -43
  60. package/data/fortnite/characters/boxy.json +0 -44
  61. package/data/fortnite/characters/bravoleader.json +0 -44
  62. package/data/fortnite/characters/briteraider.json +0 -43
  63. package/data/fortnite/characters/brutalboxcars.json +0 -46
  64. package/data/fortnite/characters/bryne.json +0 -44
  65. package/data/fortnite/characters/buildersbarracks.json +0 -38
  66. package/data/fortnite/characters/bullshark.json +0 -43
  67. package/data/fortnite/characters/bumpybay.json +0 -44
  68. package/data/fortnite/characters/burd.json +0 -44
  69. package/data/fortnite/characters/burdemart.json +0 -39
  70. package/data/fortnite/characters/burdtogo.json +0 -42
  71. package/data/fortnite/characters/busansanctuary.json +0 -39
  72. package/data/fortnite/characters/calamaricanyon.json +0 -41
  73. package/data/fortnite/characters/canyoncrossing.json +0 -45
  74. package/data/fortnite/characters/captainjones.json +0 -40
  75. package/data/fortnite/characters/centurion.json +0 -44
  76. package/data/fortnite/characters/cerberus.json +0 -43
  77. package/data/fortnite/characters/charon.json +0 -43
  78. package/data/fortnite/characters/chiara.json +0 -43
  79. package/data/fortnite/characters/clara.json +0 -43
  80. package/data/fortnite/characters/classifiedcanyon.json +0 -43
  81. package/data/fortnite/characters/clawsylodge.json +0 -41
  82. package/data/fortnite/characters/cletuscornhole.json +0 -43
  83. package/data/fortnite/characters/contractgiller.json +0 -44
  84. package/data/fortnite/characters/corruptioncorners.json +0 -42
  85. package/data/fortnite/characters/countessdaraku.json +0 -45
  86. package/data/fortnite/characters/crackshotscabin.json +0 -40
  87. package/data/fortnite/characters/creepycamps.json +0 -36
  88. package/data/fortnite/characters/crimecity.json +0 -47
  89. package/data/fortnite/characters/dara.json +0 -42
  90. package/data/fortnite/characters/darkruby.json +0 -43
  91. package/data/fortnite/characters/demonsdojo.json +0 -46
  92. package/data/fortnite/characters/diamonddiva.json +0 -43
  93. package/data/fortnite/characters/donutdistrict.json +0 -43
  94. package/data/fortnite/characters/drakonsteelrider.json +0 -43
  95. package/data/fortnite/characters/dummy.json +0 -45
  96. package/data/fortnite/characters/edwardscissorhands.json +0 -39
  97. package/data/fortnite/characters/etheria.json +0 -43
  98. package/data/fortnite/characters/evergreenterrace.json +0 -41
  99. package/data/fortnite/characters/fishmarket.json +0 -39
  100. package/data/fortnite/characters/fishstick.json +0 -45
  101. package/data/fortnite/characters/fishthicc.json +0 -43
  102. package/data/fortnite/characters/fortressofsolitude.json +0 -37
  103. package/data/fortnite/characters/foxyfloodgate.json +0 -43
  104. package/data/fortnite/characters/freakyfields.json +0 -38
  105. package/data/fortnite/characters/goldengrove.json +0 -41
  106. package/data/fortnite/characters/graveheart.json +0 -43
  107. package/data/fortnite/characters/grievouscampsite.json +0 -38
  108. package/data/fortnite/characters/guardianamara.json +0 -44
  109. package/data/fortnite/characters/gwenpool.json +0 -41
  110. package/data/fortnite/characters/hanamuracourtyard.json +0 -27
  111. package/data/fortnite/characters/heartbreakranger.json +0 -42
  112. package/data/fortnite/characters/heatwaveharbor.json +0 -41
  113. package/data/fortnite/characters/heroichope.json +0 -44
  114. package/data/fortnite/characters/hope.json +0 -43
  115. package/data/fortnite/characters/hopefulheights.json +0 -46
  116. package/data/fortnite/characters/humblehills.json +0 -41
  117. package/data/fortnite/characters/innovatorslone.json +0 -43
  118. package/data/fortnite/characters/insight.json +0 -43
  119. package/data/fortnite/characters/ironman.json +0 -40
  120. package/data/fortnite/characters/jittershock.json +0 -44
  121. package/data/fortnite/characters/joeycaliente.json +0 -44
  122. package/data/fortnite/characters/jonithescarlet.json +0 -43
  123. package/data/fortnite/characters/khabylame.json +0 -40
  124. package/data/fortnite/characters/khari.json +0 -44
  125. package/data/fortnite/characters/kitbash.json +0 -44
  126. package/data/fortnite/characters/kitesflight.json +0 -41
  127. package/data/fortnite/characters/knightmare.json +0 -43
  128. package/data/fortnite/characters/laguna.json +0 -43
  129. package/data/fortnite/characters/lakespringfield.json +0 -35
  130. package/data/fortnite/characters/lakespringfieldgasstation.json +0 -39
  131. package/data/fortnite/characters/lanallane.json +0 -42
  132. package/data/fortnite/characters/lattelanding.json +0 -41
  133. package/data/fortnite/characters/lavendra.json +0 -44
  134. package/data/fortnite/characters/leelah.json +0 -45
  135. package/data/fortnite/characters/liftylodge.json +0 -42
  136. package/data/fortnite/characters/lonewolflair.json +0 -42
  137. package/data/fortnite/characters/longshot.json +0 -41
  138. package/data/fortnite/characters/lostlake.json +0 -44
  139. package/data/fortnite/characters/loveranger.json +0 -44
  140. package/data/fortnite/characters/mae.json +0 -43
  141. package/data/fortnite/characters/magicmosses.json +0 -42
  142. package/data/fortnite/characters/maskedmeadows.json +0 -48
  143. package/data/fortnite/characters/mechateamshadow.json +0 -44
  144. package/data/fortnite/characters/medusa.json +0 -43
  145. package/data/fortnite/characters/meowscles.json +0 -42
  146. package/data/fortnite/characters/mephisto.json +0 -41
  147. package/data/fortnite/characters/metalmouth.json +0 -44
  148. package/data/fortnite/characters/mincemeat.json +0 -43
  149. package/data/fortnite/characters/munitionsexpert.json +0 -42
  150. package/data/fortnite/characters/myna.json +0 -42
  151. package/data/fortnite/characters/newsanctuary.json +0 -43
  152. package/data/fortnite/characters/nia.json +0 -42
  153. package/data/fortnite/characters/nightshiftforest.json +0 -43
  154. package/data/fortnite/characters/nisha.json +0 -42
  155. package/data/fortnite/characters/nolanchance.json +0 -43
  156. package/data/fortnite/characters/noorah.json +0 -44
  157. package/data/fortnite/characters/odyssey.json +0 -43
  158. package/data/fortnite/characters/openaironsen.json +0 -40
  159. package/data/fortnite/characters/oscar.json +0 -42
  160. package/data/fortnite/characters/outlawoasis.json +0 -40
  161. package/data/fortnite/characters/outpostenclave.json +0 -27
  162. package/data/fortnite/characters/oxrhq.json +0 -37
  163. package/data/fortnite/characters/paintedpalms.json +0 -41
  164. package/data/fortnite/characters/peabody.json +0 -42
  165. package/data/fortnite/characters/peelosopherbananocrates.json +0 -43
  166. package/data/fortnite/characters/peely.json +0 -41
  167. package/data/fortnite/characters/peelybone.json +0 -43
  168. package/data/fortnite/characters/persephone.json +0 -42
  169. package/data/fortnite/characters/phaedra.json +0 -42
  170. package/data/fortnite/characters/phantommeowscles.json +0 -43
  171. package/data/fortnite/characters/piperpace.json +0 -43
  172. package/data/fortnite/characters/poseidon.json +0 -42
  173. package/data/fortnite/characters/pumpedpower.json +0 -40
  174. package/data/fortnite/characters/pumpinpipes.json +0 -39
  175. package/data/fortnite/characters/pumpkinking.json +0 -40
  176. package/data/fortnite/characters/purradisemeowscles.json +0 -43
  177. package/data/fortnite/characters/rangersrest.json +0 -36
  178. package/data/fortnite/characters/rebeloutpost.json +0 -37
  179. package/data/fortnite/characters/renegadeshadow.json +0 -44
  180. package/data/fortnite/characters/resistancebase.json +0 -27
  181. package/data/fortnite/characters/rippedtides.json +0 -43
  182. package/data/fortnite/characters/rollingblossomsfarm.json +0 -41
  183. package/data/fortnite/characters/royalebomber.json +0 -38
  184. package/data/fortnite/characters/ruckus.json +0 -42
  185. package/data/fortnite/characters/rust.json +0 -41
  186. package/data/fortnite/characters/sakuracircle.json +0 -36
  187. package/data/fortnite/characters/sandystrip.json +0 -44
  188. package/data/fortnite/characters/saskia.json +0 -45
  189. package/data/fortnite/characters/seaportcity.json +0 -48
  190. package/data/fortnite/characters/shakensanctuary.json +0 -42
  191. package/data/fortnite/characters/shimmerdusk.json +0 -41
  192. package/data/fortnite/characters/shinyshafts.json +0 -38
  193. package/data/fortnite/characters/shogunssolitude.json +0 -46
  194. package/data/fortnite/characters/shuri.json +0 -39
  195. package/data/fortnite/characters/silashesk.json +0 -42
  196. package/data/fortnite/characters/slurproom.json +0 -40
  197. package/data/fortnite/characters/snowheart.json +0 -44
  198. package/data/fortnite/characters/snowstriker.json +0 -43
  199. package/data/fortnite/characters/solidsnake.json +0 -39
  200. package/data/fortnite/characters/sonor.json +0 -46
  201. package/data/fortnite/characters/spartanassassin.json +0 -43
  202. package/data/fortnite/characters/spirithuntersaeko.json +0 -41
  203. package/data/fortnite/characters/springfieldnationalparkstore.json +0 -38
  204. package/data/fortnite/characters/springfieldnuclearpowerplant.json +0 -39
  205. package/data/fortnite/characters/springfieldslurpworks.json +0 -40
  206. package/data/fortnite/characters/squibblyshores.json +0 -42
  207. package/data/fortnite/characters/squibblyspointlighthouse.json +0 -37
  208. package/data/fortnite/characters/starroakley.json +0 -45
  209. package/data/fortnite/characters/steelsight.json +0 -43
  210. package/data/fortnite/characters/sticks.json +0 -35
  211. package/data/fortnite/characters/sunkenshores.json +0 -42
  212. package/data/fortnite/characters/sunstrider.json +0 -42
  213. package/data/fortnite/characters/suntanspecialist.json +0 -43
  214. package/data/fortnite/characters/supernovaacademy.json +0 -27
  215. package/data/fortnite/characters/t60powerarmor.json +0 -39
  216. package/data/fortnite/characters/thebattlewoods.json +0 -44
  217. package/data/fortnite/characters/thegreatturtle.json +0 -37
  218. package/data/fortnite/characters/theoperator.json +0 -42
  219. package/data/fortnite/characters/thequackaway.json +0 -39
  220. package/data/fortnite/characters/thestabilizer.json +0 -38
  221. package/data/fortnite/characters/theunderwriter.json +0 -36
  222. package/data/fortnite/characters/toyboxdocks.json +0 -40
  223. package/data/fortnite/characters/trace.json +0 -43
  224. package/data/fortnite/characters/triagetrooper.json +0 -43
  225. package/data/fortnite/characters/triggerfish.json +0 -44
  226. package/data/fortnite/characters/trogscave.json +0 -38
  227. package/data/fortnite/characters/utopiacity.json +0 -27
  228. package/data/fortnite/characters/vengeancejones.json +0 -42
  229. package/data/fortnite/characters/victoriasaint.json +0 -43
  230. package/data/fortnite/characters/vineyshafts.json +0 -35
  231. package/data/fortnite/characters/volpez.json +0 -41
  232. package/data/fortnite/characters/warmachine.json +0 -40
  233. package/data/fortnite/characters/wastelandermagneto.json +0 -40
  234. package/data/fortnite/characters/wonkeeland.json +0 -41
  235. package/data/fortnite/meta.json +0 -14
  236. package/data/game-codes/.cache-manifest.json +0 -148
  237. package/data/game-codes/directory.json +0 -1196
  238. package/data/game-codes/games/arknights-endfield.json +0 -958
  239. package/data/game-codes/games/borderlands-1.json +0 -414
  240. package/data/game-codes/games/borderlands-2.json +0 -340
  241. package/data/game-codes/games/borderlands-3.json +0 -1025
  242. package/data/game-codes/games/borderlands-4.json +0 -3128
  243. package/data/game-codes/games/borderlands-the-pre-sequel.json +0 -599
  244. package/data/game-codes/games/brawl-stars.json +0 -4766
  245. package/data/game-codes/games/clash-of-clans.json +0 -4766
  246. package/data/game-codes/games/clash-royale.json +0 -5
  247. package/data/game-codes/games/cookie-run-kingdom.json +0 -5366
  248. package/data/game-codes/games/fortnite.json +0 -897
  249. package/data/game-codes/games/genshin-impact.json +0 -8520
  250. package/data/game-codes/games/honkai-impact-3rd.json +0 -405
  251. package/data/game-codes/games/honkai-star-rail.json +0 -9863
  252. package/data/game-codes/games/neverness-to-everness.json +0 -1695
  253. package/data/game-codes/games/roblox-doors.json +0 -1842
  254. package/data/game-codes/games/roblox-rivals.json +0 -2919
  255. package/data/game-codes/games/tower-of-fantasy.json +0 -2839
  256. package/data/game-codes/games/warframe.json +0 -20824
  257. package/data/game-codes/games/wuthering-waves.json +0 -2477
  258. package/data/game-codes/games/zenless-zone-zero.json +0 -3681
  259. package/data/game-codes/status.json +0 -580
  260. package/data/genshinimpact/characters/aino.json +0 -34
  261. package/data/genshinimpact/characters/albedo.json +0 -12
  262. package/data/genshinimpact/characters/alhaitham.json +0 -13
  263. package/data/genshinimpact/characters/aloy.json +0 -12
  264. package/data/genshinimpact/characters/alyosha.json +0 -34
  265. package/data/genshinimpact/characters/amber.json +0 -13
  266. package/data/genshinimpact/characters/aratakiitto.json +0 -13
  267. package/data/genshinimpact/characters/arlecchino.json +0 -13
  268. package/data/genshinimpact/characters/baizhu.json +0 -13
  269. package/data/genshinimpact/characters/barbara.json +0 -12
  270. package/data/genshinimpact/characters/beidou.json +0 -13
  271. package/data/genshinimpact/characters/bennett.json +0 -12
  272. package/data/genshinimpact/characters/candace.json +0 -13
  273. package/data/genshinimpact/characters/charlotte.json +0 -12
  274. package/data/genshinimpact/characters/chasca.json +0 -12
  275. package/data/genshinimpact/characters/chevreuse.json +0 -12
  276. package/data/genshinimpact/characters/chiori.json +0 -12
  277. package/data/genshinimpact/characters/chongyun.json +0 -13
  278. package/data/genshinimpact/characters/citlali.json +0 -12
  279. package/data/genshinimpact/characters/clorinde.json +0 -12
  280. package/data/genshinimpact/characters/collei.json +0 -13
  281. package/data/genshinimpact/characters/columbina.json +0 -34
  282. package/data/genshinimpact/characters/cyno.json +0 -13
  283. package/data/genshinimpact/characters/dahlia.json +0 -11
  284. package/data/genshinimpact/characters/dehya.json +0 -12
  285. package/data/genshinimpact/characters/diluc.json +0 -12
  286. package/data/genshinimpact/characters/diona.json +0 -12
  287. package/data/genshinimpact/characters/dori.json +0 -12
  288. package/data/genshinimpact/characters/durin.json +0 -12
  289. package/data/genshinimpact/characters/emilie.json +0 -12
  290. package/data/genshinimpact/characters/escoffier.json +0 -13
  291. package/data/genshinimpact/characters/eula.json +0 -12
  292. package/data/genshinimpact/characters/faruzan.json +0 -13
  293. package/data/genshinimpact/characters/fischl.json +0 -13
  294. package/data/genshinimpact/characters/flins.json +0 -34
  295. package/data/genshinimpact/characters/freminet.json +0 -12
  296. package/data/genshinimpact/characters/furina.json +0 -13
  297. package/data/genshinimpact/characters/gaming.json +0 -12
  298. package/data/genshinimpact/characters/ganyu.json +0 -12
  299. package/data/genshinimpact/characters/gorou.json +0 -13
  300. package/data/genshinimpact/characters/hutao.json +0 -13
  301. package/data/genshinimpact/characters/iansan.json +0 -12
  302. package/data/genshinimpact/characters/ifa.json +0 -34
  303. package/data/genshinimpact/characters/illuga.json +0 -34
  304. package/data/genshinimpact/characters/ineffa.json +0 -12
  305. package/data/genshinimpact/characters/jahoda.json +0 -34
  306. package/data/genshinimpact/characters/jean.json +0 -12
  307. package/data/genshinimpact/characters/kachina.json +0 -12
  308. package/data/genshinimpact/characters/kaedeharakazuha.json +0 -13
  309. package/data/genshinimpact/characters/kaeya.json +0 -12
  310. package/data/genshinimpact/characters/kamisatoayaka.json +0 -12
  311. package/data/genshinimpact/characters/kamisatoayato.json +0 -12
  312. package/data/genshinimpact/characters/kaveh.json +0 -13
  313. package/data/genshinimpact/characters/keqing.json +0 -12
  314. package/data/genshinimpact/characters/kinich.json +0 -12
  315. package/data/genshinimpact/characters/kirara.json +0 -12
  316. package/data/genshinimpact/characters/klee.json +0 -12
  317. package/data/genshinimpact/characters/kujousara.json +0 -12
  318. package/data/genshinimpact/characters/kukishinobu.json +0 -13
  319. package/data/genshinimpact/characters/lanyan.json +0 -12
  320. package/data/genshinimpact/characters/lauma.json +0 -34
  321. package/data/genshinimpact/characters/layla.json +0 -12
  322. package/data/genshinimpact/characters/linnea.json +0 -34
  323. package/data/genshinimpact/characters/lisa.json +0 -13
  324. package/data/genshinimpact/characters/lohen.json +0 -12
  325. package/data/genshinimpact/characters/lynette.json +0 -12
  326. package/data/genshinimpact/characters/lyney.json +0 -12
  327. package/data/genshinimpact/characters/mavuika.json +0 -12
  328. package/data/genshinimpact/characters/mika.json +0 -34
  329. package/data/genshinimpact/characters/mikaschmidt.json +0 -12
  330. package/data/genshinimpact/characters/mona.json +0 -13
  331. package/data/genshinimpact/characters/mualani.json +0 -12
  332. package/data/genshinimpact/characters/nahida.json +0 -13
  333. package/data/genshinimpact/characters/navia.json +0 -12
  334. package/data/genshinimpact/characters/nefer.json +0 -34
  335. package/data/genshinimpact/characters/neuvillette.json +0 -12
  336. package/data/genshinimpact/characters/nicole.json +0 -34
  337. package/data/genshinimpact/characters/nilou.json +0 -12
  338. package/data/genshinimpact/characters/ningguang.json +0 -12
  339. package/data/genshinimpact/characters/noelle.json +0 -13
  340. package/data/genshinimpact/characters/odette.json +0 -34
  341. package/data/genshinimpact/characters/ororon.json +0 -12
  342. package/data/genshinimpact/characters/prune.json +0 -11
  343. package/data/genshinimpact/characters/qiqi.json +0 -13
  344. package/data/genshinimpact/characters/raidenshogun.json +0 -13
  345. package/data/genshinimpact/characters/razor.json +0 -12
  346. package/data/genshinimpact/characters/rosaria.json +0 -13
  347. package/data/genshinimpact/characters/sandrone.json +0 -34
  348. package/data/genshinimpact/characters/sangonomiyakokomi.json +0 -13
  349. package/data/genshinimpact/characters/sayu.json +0 -12
  350. package/data/genshinimpact/characters/sethos.json +0 -12
  351. package/data/genshinimpact/characters/shenhe.json +0 -13
  352. package/data/genshinimpact/characters/shikanoinheizou.json +0 -13
  353. package/data/genshinimpact/characters/sigewinne.json +0 -12
  354. package/data/genshinimpact/characters/skirk.json +0 -12
  355. package/data/genshinimpact/characters/sucrose.json +0 -13
  356. package/data/genshinimpact/characters/tartaglia.json +0 -34
  357. package/data/genshinimpact/characters/thoma.json +0 -12
  358. package/data/genshinimpact/characters/tighnari.json +0 -13
  359. package/data/genshinimpact/characters/traveler.json +0 -34
  360. package/data/genshinimpact/characters/varesa.json +0 -12
  361. package/data/genshinimpact/characters/varka.json +0 -11
  362. package/data/genshinimpact/characters/venti.json +0 -13
  363. package/data/genshinimpact/characters/wanderer.json +0 -12
  364. package/data/genshinimpact/characters/wonderlandmanekin.json +0 -34
  365. package/data/genshinimpact/characters/wriothesley.json +0 -13
  366. package/data/genshinimpact/characters/xiangling.json +0 -13
  367. package/data/genshinimpact/characters/xianyun.json +0 -12
  368. package/data/genshinimpact/characters/xiao.json +0 -12
  369. package/data/genshinimpact/characters/xilonen.json +0 -12
  370. package/data/genshinimpact/characters/xingqiu.json +0 -13
  371. package/data/genshinimpact/characters/xinyan.json +0 -13
  372. package/data/genshinimpact/characters/yaemiko.json +0 -13
  373. package/data/genshinimpact/characters/yanfei.json +0 -13
  374. package/data/genshinimpact/characters/yaoyao.json +0 -13
  375. package/data/genshinimpact/characters/yelan.json +0 -12
  376. package/data/genshinimpact/characters/yoimiya.json +0 -13
  377. package/data/genshinimpact/characters/yumemizukimizuki.json +0 -12
  378. package/data/genshinimpact/characters/yunjin.json +0 -12
  379. package/data/genshinimpact/characters/zhongli.json +0 -12
  380. package/data/genshinimpact/characters/zibai.json +0 -12
  381. package/data/genshinimpact/meta.json +0 -14
  382. package/data/honkaistarrail/characters/acheron.json +0 -13
  383. package/data/honkaistarrail/characters/aglaea.json +0 -13
  384. package/data/honkaistarrail/characters/anaxa.json +0 -13
  385. package/data/honkaistarrail/characters/archer.json +0 -29
  386. package/data/honkaistarrail/characters/argenti.json +0 -13
  387. package/data/honkaistarrail/characters/arlan.json +0 -13
  388. package/data/honkaistarrail/characters/ashveil.json +0 -13
  389. package/data/honkaistarrail/characters/asta.json +0 -13
  390. package/data/honkaistarrail/characters/aventurine.json +0 -13
  391. package/data/honkaistarrail/characters/bailu.json +0 -13
  392. package/data/honkaistarrail/characters/blackswan.json +0 -13
  393. package/data/honkaistarrail/characters/blade.json +0 -13
  394. package/data/honkaistarrail/characters/boothill.json +0 -13
  395. package/data/honkaistarrail/characters/bronya.json +0 -13
  396. package/data/honkaistarrail/characters/castorice.json +0 -13
  397. package/data/honkaistarrail/characters/cerydra.json +0 -13
  398. package/data/honkaistarrail/characters/cipher.json +0 -13
  399. package/data/honkaistarrail/characters/clara.json +0 -13
  400. package/data/honkaistarrail/characters/constance.json +0 -13
  401. package/data/honkaistarrail/characters/cyrene.json +0 -13
  402. package/data/honkaistarrail/characters/danheng.json +0 -13
  403. package/data/honkaistarrail/characters/danhengimbibitorlunae.json +0 -29
  404. package/data/honkaistarrail/characters/danhengpermansorterrae.json +0 -29
  405. package/data/honkaistarrail/characters/drratio.json +0 -13
  406. package/data/honkaistarrail/characters/evanescia.json +0 -29
  407. package/data/honkaistarrail/characters/evernight.json +0 -29
  408. package/data/honkaistarrail/characters/feixiao.json +0 -13
  409. package/data/honkaistarrail/characters/firefly.json +0 -13
  410. package/data/honkaistarrail/characters/fugue.json +0 -29
  411. package/data/honkaistarrail/characters/fuxuan.json +0 -13
  412. package/data/honkaistarrail/characters/gallagher.json +0 -13
  413. package/data/honkaistarrail/characters/gepard.json +0 -13
  414. package/data/honkaistarrail/characters/gilgamesh.json +0 -29
  415. package/data/honkaistarrail/characters/guinaifen.json +0 -13
  416. package/data/honkaistarrail/characters/hanya.json +0 -13
  417. package/data/honkaistarrail/characters/herta.json +0 -13
  418. package/data/honkaistarrail/characters/himeko.json +0 -14
  419. package/data/honkaistarrail/characters/himekonova.json +0 -29
  420. package/data/honkaistarrail/characters/hook.json +0 -13
  421. package/data/honkaistarrail/characters/huohuo.json +0 -13
  422. package/data/honkaistarrail/characters/hyacine.json +0 -13
  423. package/data/honkaistarrail/characters/hysilens.json +0 -13
  424. package/data/honkaistarrail/characters/jade.json +0 -13
  425. package/data/honkaistarrail/characters/jiaoqiu.json +0 -13
  426. package/data/honkaistarrail/characters/jingliu.json +0 -13
  427. package/data/honkaistarrail/characters/jingyuan.json +0 -13
  428. package/data/honkaistarrail/characters/kafka.json +0 -13
  429. package/data/honkaistarrail/characters/lingsha.json +0 -13
  430. package/data/honkaistarrail/characters/lisushang.json +0 -13
  431. package/data/honkaistarrail/characters/luka.json +0 -13
  432. package/data/honkaistarrail/characters/luocha.json +0 -13
  433. package/data/honkaistarrail/characters/lynx.json +0 -13
  434. package/data/honkaistarrail/characters/march7th.json +0 -13
  435. package/data/honkaistarrail/characters/misha.json +0 -13
  436. package/data/honkaistarrail/characters/mortenaxblade.json +0 -29
  437. package/data/honkaistarrail/characters/moze.json +0 -13
  438. package/data/honkaistarrail/characters/mydei.json +0 -13
  439. package/data/honkaistarrail/characters/natasha.json +0 -13
  440. package/data/honkaistarrail/characters/pela.json +0 -13
  441. package/data/honkaistarrail/characters/phainon.json +0 -13
  442. package/data/honkaistarrail/characters/qingque.json +0 -13
  443. package/data/honkaistarrail/characters/rappa.json +0 -13
  444. package/data/honkaistarrail/characters/rintohsaka.json +0 -29
  445. package/data/honkaistarrail/characters/robin.json +0 -13
  446. package/data/honkaistarrail/characters/ruanmei.json +0 -13
  447. package/data/honkaistarrail/characters/saber.json +0 -29
  448. package/data/honkaistarrail/characters/sampo.json +0 -13
  449. package/data/honkaistarrail/characters/seele.json +0 -13
  450. package/data/honkaistarrail/characters/serval.json +0 -13
  451. package/data/honkaistarrail/characters/silverwolf.json +0 -13
  452. package/data/honkaistarrail/characters/silverwolflv999.json +0 -29
  453. package/data/honkaistarrail/characters/sparkle.json +0 -13
  454. package/data/honkaistarrail/characters/sparxie.json +0 -29
  455. package/data/honkaistarrail/characters/sunday.json +0 -29
  456. package/data/honkaistarrail/characters/thedahlia.json +0 -29
  457. package/data/honkaistarrail/characters/theherta.json +0 -29
  458. package/data/honkaistarrail/characters/tingyun.json +0 -13
  459. package/data/honkaistarrail/characters/topaz.json +0 -13
  460. package/data/honkaistarrail/characters/topaznumby.json +0 -29
  461. package/data/honkaistarrail/characters/trailblazer.json +0 -29
  462. package/data/honkaistarrail/characters/tribbie.json +0 -13
  463. package/data/honkaistarrail/characters/welt.json +0 -29
  464. package/data/honkaistarrail/characters/weltyang.json +0 -13
  465. package/data/honkaistarrail/characters/xueyi.json +0 -13
  466. package/data/honkaistarrail/characters/yanqing.json +0 -13
  467. package/data/honkaistarrail/characters/yaoguang.json +0 -13
  468. package/data/honkaistarrail/characters/yukong.json +0 -13
  469. package/data/honkaistarrail/characters/yunli.json +0 -13
  470. package/data/honkaistarrail/meta.json +0 -14
  471. package/data/nte/characters/adler.json +0 -15
  472. package/data/nte/characters/aurelia.json +0 -15
  473. package/data/nte/characters/baicang.json +0 -15
  474. package/data/nte/characters/chaos.json +0 -15
  475. package/data/nte/characters/chiz.json +0 -15
  476. package/data/nte/characters/daffodill.json +0 -15
  477. package/data/nte/characters/edgar.json +0 -15
  478. package/data/nte/characters/esperzero.json +0 -15
  479. package/data/nte/characters/fadia.json +0 -15
  480. package/data/nte/characters/haniel.json +0 -15
  481. package/data/nte/characters/hathor.json +0 -15
  482. package/data/nte/characters/hotori.json +0 -15
  483. package/data/nte/characters/iroi.json +0 -15
  484. package/data/nte/characters/jiuyuan.json +0 -15
  485. package/data/nte/characters/lacrimosa.json +0 -15
  486. package/data/nte/characters/mint.json +0 -15
  487. package/data/nte/characters/nanally.json +0 -15
  488. package/data/nte/characters/sakiri.json +0 -15
  489. package/data/nte/characters/shinku.json +0 -15
  490. package/data/nte/characters/skia.json +0 -15
  491. package/data/nte/characters/zankou.json +0 -51
  492. package/data/nte/meta.json +0 -14
  493. package/data/toweroffantasy/characters/alyss.json +0 -27
  494. package/data/toweroffantasy/characters/annabella.json +0 -23
  495. package/data/toweroffantasy/characters/asuka.json +0 -23
  496. package/data/toweroffantasy/characters/bailing.json +0 -23
  497. package/data/toweroffantasy/characters/brevey.json +0 -23
  498. package/data/toweroffantasy/characters/claudia.json +0 -23
  499. package/data/toweroffantasy/characters/cobaltb.json +0 -23
  500. package/data/toweroffantasy/characters/cocoritter.json +0 -23
  501. package/data/toweroffantasy/characters/crow.json +0 -23
  502. package/data/toweroffantasy/characters/echo.json +0 -23
  503. package/data/toweroffantasy/characters/ene.json +0 -23
  504. package/data/toweroffantasy/characters/feise.json +0 -25
  505. package/data/toweroffantasy/characters/fenrir.json +0 -23
  506. package/data/toweroffantasy/characters/fiona.json +0 -25
  507. package/data/toweroffantasy/characters/frigg.json +0 -23
  508. package/data/toweroffantasy/characters/gnonno.json +0 -23
  509. package/data/toweroffantasy/characters/hilda.json +0 -23
  510. package/data/toweroffantasy/characters/huang.json +0 -25
  511. package/data/toweroffantasy/characters/huma.json +0 -25
  512. package/data/toweroffantasy/characters/icarus.json +0 -23
  513. package/data/toweroffantasy/characters/jiyu.json +0 -25
  514. package/data/toweroffantasy/characters/king.json +0 -23
  515. package/data/toweroffantasy/characters/lan.json +0 -25
  516. package/data/toweroffantasy/characters/lin.json +0 -23
  517. package/data/toweroffantasy/characters/linghan.json +0 -23
  518. package/data/toweroffantasy/characters/liuhuo.json +0 -23
  519. package/data/toweroffantasy/characters/lyra.json +0 -23
  520. package/data/toweroffantasy/characters/meryl.json +0 -23
  521. package/data/toweroffantasy/characters/mingjing.json +0 -27
  522. package/data/toweroffantasy/characters/nanyin.json +0 -25
  523. package/data/toweroffantasy/characters/nemesis.json +0 -25
  524. package/data/toweroffantasy/characters/pepper.json +0 -23
  525. package/data/toweroffantasy/characters/plotti.json +0 -25
  526. package/data/toweroffantasy/characters/roslyn.json +0 -23
  527. package/data/toweroffantasy/characters/rubilia.json +0 -25
  528. package/data/toweroffantasy/characters/ruby.json +0 -25
  529. package/data/toweroffantasy/characters/sakifuwa.json +0 -23
  530. package/data/toweroffantasy/characters/samir.json +0 -23
  531. package/data/toweroffantasy/characters/shiro.json +0 -25
  532. package/data/toweroffantasy/characters/tianlang.json +0 -25
  533. package/data/toweroffantasy/characters/tsubasa.json +0 -23
  534. package/data/toweroffantasy/characters/umi.json +0 -23
  535. package/data/toweroffantasy/characters/yanmiao.json +0 -25
  536. package/data/toweroffantasy/characters/yanuo.json +0 -23
  537. package/data/toweroffantasy/characters/yulan.json +0 -23
  538. package/data/toweroffantasy/characters/zero.json +0 -23
  539. package/data/toweroffantasy/meta.json +0 -14
  540. package/data/vrchat/groups/clubzodiac.json +0 -8
  541. package/data/vrchat/groups/dirtydancers.json +0 -8
  542. package/data/vrchat/groups/drumsynews.json +0 -8
  543. package/data/vrchat/groups/ebola20.json +0 -8
  544. package/data/vrchat/groups/internationaldancersassociation.json +0 -8
  545. package/data/vrchat/groups/kannagang.json +0 -7
  546. package/data/vrchat/groups/lolisquad.json +0 -8
  547. package/data/vrchat/groups/nekonightsnightclub.json +0 -8
  548. package/data/vrchat/groups/nekostudios.json +0 -8
  549. package/data/vrchat/groups/nekosunecommunity.json +0 -8
  550. package/data/vrchat/groups/voidclub.json +0 -8
  551. package/data/vrchat/groups/voltdanceclub.json +0 -8
  552. package/data/vrchat/groups/vrceventsgroup.json +0 -8
  553. package/data/vrchat/groups/vrchatcommunitydiscord.json +0 -7
  554. package/data/vrchat/meta.json +0 -13
  555. package/data/vrchat/players/alto.json +0 -10
  556. package/data/vrchat/players/arcadum.json +0 -11
  557. package/data/vrchat/players/chairhandler.json +0 -10
  558. package/data/vrchat/players/chipz.json +0 -10
  559. package/data/vrchat/players/hikarivr.json +0 -11
  560. package/data/vrchat/players/kimple.json +0 -11
  561. package/data/vrchat/players/linkzr.json +0 -9
  562. package/data/vrchat/players/nagzz21.json +0 -10
  563. package/data/vrchat/players/nebride.json +0 -11
  564. package/data/vrchat/players/nekosunevr.json +0 -11
  565. package/data/vrchat/players/pokelawls.json +0 -10
  566. package/data/vrchat/players/qwonk.json +0 -9
  567. package/data/vrchat/players/roflgator.json +0 -11
  568. package/data/vrchat/players/scifri.json +0 -8
  569. package/data/vrchat/players/sodapoppin.json +0 -10
  570. package/data/vrchat/players/woops.json +0 -10
  571. package/data/vrchat/players/zentreya.json +0 -11
  572. package/data/vrchat/worlds/ascensionacademy.json +0 -8
  573. package/data/vrchat/worlds/clubvgl.json +0 -9
  574. package/data/vrchat/worlds/fightfinder.json +0 -9
  575. package/data/vrchat/worlds/hangouthouse.json +0 -8
  576. package/data/vrchat/worlds/nekostudioshalloween.json +0 -10
  577. package/data/vrchat/worlds/nekostudiosnewyear.json +0 -10
  578. package/data/vrchat/worlds/nekostudiosxmas.json +0 -10
  579. package/data/vrchat/worlds/nekosunevranimations2023.json +0 -10
  580. package/data/vrchat/worlds/nekosunevranimations20232024.json +0 -10
  581. package/data/vrchat/worlds/nekosunevranimations2024.json +0 -10
  582. package/data/vrchat/worlds/nekosunevranimations2025.json +0 -10
  583. package/data/vrchat/worlds/rumhamsavatarworld.json +0 -8
  584. package/data/vrchat/worlds/smewsranch.json +0 -8
  585. package/data/vrchat/worlds/smewsroom.json +0 -8
  586. package/data/vrchat/worlds/sunsetbar.json +0 -8
  587. package/data/vrchat/worlds/theblackcat.json +0 -10
  588. package/data/vrchat/worlds/thegreatpug.json +0 -9
  589. package/data/vrchat/worlds/themidnightbar.json +0 -8
  590. package/data/vrchat/worlds/voidclub.json +0 -8
  591. package/data/vrchat/worlds/voltdanceclub.json +0 -8
  592. package/data/vrchat/worlds/vrchathome.json +0 -9
  593. package/data/vrchat/worlds/whatalegend.json +0 -7
  594. package/data/warframe/characters/amesha.json +0 -226
  595. package/data/warframe/characters/ash.json +0 -1354
  596. package/data/warframe/characters/ashprime.json +0 -1994
  597. package/data/warframe/characters/atlas.json +0 -916
  598. package/data/warframe/characters/atlasprime.json +0 -1632
  599. package/data/warframe/characters/banshee.json +0 -1036
  600. package/data/warframe/characters/bansheeprime.json +0 -1750
  601. package/data/warframe/characters/baruuk.json +0 -555
  602. package/data/warframe/characters/baruukprime.json +0 -1298
  603. package/data/warframe/characters/bonewidow.json +0 -354
  604. package/data/warframe/characters/caliban.json +0 -434
  605. package/data/warframe/characters/calibanprime.json +0 -683
  606. package/data/warframe/characters/chroma.json +0 -1344
  607. package/data/warframe/characters/chromaprime.json +0 -1977
  608. package/data/warframe/characters/citrine.json +0 -220
  609. package/data/warframe/characters/cyte09.json +0 -218
  610. package/data/warframe/characters/dagath.json +0 -194
  611. package/data/warframe/characters/dante.json +0 -223
  612. package/data/warframe/characters/elytron.json +0 -300
  613. package/data/warframe/characters/ember.json +0 -1209
  614. package/data/warframe/characters/emberprime.json +0 -1678
  615. package/data/warframe/characters/equinox.json +0 -958
  616. package/data/warframe/characters/equinoxprime.json +0 -1644
  617. package/data/warframe/characters/excalibur.json +0 -1603
  618. package/data/warframe/characters/excaliburprime.json +0 -1524
  619. package/data/warframe/characters/excaliburumbra.json +0 -397
  620. package/data/warframe/characters/follie.json +0 -246
  621. package/data/warframe/characters/frost.json +0 -1330
  622. package/data/warframe/characters/frostprime.json +0 -1686
  623. package/data/warframe/characters/gara.json +0 -925
  624. package/data/warframe/characters/garaprime.json +0 -1494
  625. package/data/warframe/characters/garuda.json +0 -851
  626. package/data/warframe/characters/garudaprime.json +0 -1449
  627. package/data/warframe/characters/gauss.json +0 -506
  628. package/data/warframe/characters/gaussprime.json +0 -1077
  629. package/data/warframe/characters/grendel.json +0 -463
  630. package/data/warframe/characters/grendelprime.json +0 -772
  631. package/data/warframe/characters/gyre.json +0 -381
  632. package/data/warframe/characters/gyreprime.json +0 -403
  633. package/data/warframe/characters/harrow.json +0 -916
  634. package/data/warframe/characters/harrowprime.json +0 -1700
  635. package/data/warframe/characters/helminth.json +0 -220
  636. package/data/warframe/characters/hildryn.json +0 -627
  637. package/data/warframe/characters/hildrynprime.json +0 -996
  638. package/data/warframe/characters/hydroid.json +0 -1028
  639. package/data/warframe/characters/hydroidprime.json +0 -1621
  640. package/data/warframe/characters/inaros.json +0 -976
  641. package/data/warframe/characters/inarosprime.json +0 -1721
  642. package/data/warframe/characters/itzal.json +0 -465
  643. package/data/warframe/characters/ivara.json +0 -1349
  644. package/data/warframe/characters/ivaraprime.json +0 -1921
  645. package/data/warframe/characters/jade.json +0 -240
  646. package/data/warframe/characters/khora.json +0 -804
  647. package/data/warframe/characters/khoraprime.json +0 -1403
  648. package/data/warframe/characters/koumei.json +0 -221
  649. package/data/warframe/characters/kullervo.json +0 -191
  650. package/data/warframe/characters/lavos.json +0 -511
  651. package/data/warframe/characters/lavosprime.json +0 -711
  652. package/data/warframe/characters/limbo.json +0 -1363
  653. package/data/warframe/characters/limboprime.json +0 -2084
  654. package/data/warframe/characters/loki.json +0 -1209
  655. package/data/warframe/characters/lokiprime.json +0 -1457
  656. package/data/warframe/characters/mag.json +0 -2089
  657. package/data/warframe/characters/magprime.json +0 -2532
  658. package/data/warframe/characters/mesa.json +0 -1195
  659. package/data/warframe/characters/mesaprime.json +0 -2059
  660. package/data/warframe/characters/mirage.json +0 -1561
  661. package/data/warframe/characters/mirageprime.json +0 -2257
  662. package/data/warframe/characters/nekros.json +0 -1235
  663. package/data/warframe/characters/nekrosprime.json +0 -1882
  664. package/data/warframe/characters/nezha.json +0 -868
  665. package/data/warframe/characters/nezhaprime.json +0 -1695
  666. package/data/warframe/characters/nidus.json +0 -1027
  667. package/data/warframe/characters/nidusprime.json +0 -1706
  668. package/data/warframe/characters/nokko.json +0 -308
  669. package/data/warframe/characters/nova.json +0 -1226
  670. package/data/warframe/characters/novaprime.json +0 -1667
  671. package/data/warframe/characters/nyx.json +0 -1610
  672. package/data/warframe/characters/nyxprime.json +0 -1967
  673. package/data/warframe/characters/oberon.json +0 -1249
  674. package/data/warframe/characters/oberonprime.json +0 -1872
  675. package/data/warframe/characters/octavia.json +0 -1049
  676. package/data/warframe/characters/octaviaprime.json +0 -1735
  677. package/data/warframe/characters/odonata.json +0 -336
  678. package/data/warframe/characters/odonataprime.json +0 -787
  679. package/data/warframe/characters/oraxia.json +0 -246
  680. package/data/warframe/characters/orionsirius.json +0 -134
  681. package/data/warframe/characters/protea.json +0 -521
  682. package/data/warframe/characters/proteaprime.json +0 -992
  683. package/data/warframe/characters/qorvex.json +0 -214
  684. package/data/warframe/characters/revenant.json +0 -931
  685. package/data/warframe/characters/revenantprime.json +0 -1494
  686. package/data/warframe/characters/rhino.json +0 -1344
  687. package/data/warframe/characters/rhinoprime.json +0 -1675
  688. package/data/warframe/characters/saryn.json +0 -1210
  689. package/data/warframe/characters/sarynprime.json +0 -2042
  690. package/data/warframe/characters/sevagoth.json +0 -478
  691. package/data/warframe/characters/sevagothprime.json +0 -910
  692. package/data/warframe/characters/siriusorion.json +0 -247
  693. package/data/warframe/characters/styanax.json +0 -320
  694. package/data/warframe/characters/styanaxprime.json +0 -321
  695. package/data/warframe/characters/temple.json +0 -271
  696. package/data/warframe/characters/titania.json +0 -1227
  697. package/data/warframe/characters/titaniaprime.json +0 -2000
  698. package/data/warframe/characters/trinity.json +0 -1097
  699. package/data/warframe/characters/trinityprime.json +0 -1849
  700. package/data/warframe/characters/uriel.json +0 -215
  701. package/data/warframe/characters/valkyr.json +0 -1165
  702. package/data/warframe/characters/valkyrprime.json +0 -1969
  703. package/data/warframe/characters/vauban.json +0 -1067
  704. package/data/warframe/characters/vaubanprime.json +0 -1614
  705. package/data/warframe/characters/voidrig.json +0 -355
  706. package/data/warframe/characters/volt.json +0 -1324
  707. package/data/warframe/characters/voltprime.json +0 -1843
  708. package/data/warframe/characters/voruna.json +0 -293
  709. package/data/warframe/characters/vorunaprime.json +0 -431
  710. package/data/warframe/characters/wisp.json +0 -824
  711. package/data/warframe/characters/wispprime.json +0 -908
  712. package/data/warframe/characters/wukong.json +0 -927
  713. package/data/warframe/characters/wukongprime.json +0 -1754
  714. package/data/warframe/characters/xaku.json +0 -620
  715. package/data/warframe/characters/xakuprime.json +0 -879
  716. package/data/warframe/characters/yareli.json +0 -409
  717. package/data/warframe/characters/yareliprime.json +0 -683
  718. package/data/warframe/characters/zephyr.json +0 -1149
  719. package/data/warframe/characters/zephyrprime.json +0 -1864
  720. package/data/warframe/meta.json +0 -14
  721. package/data/wutheringwaves/meta.json +0 -14
  722. package/data/zenlesszonezero/meta.json +0 -14
  723. package/gamecodes.js +0 -204
  724. package/scripts/cache-sync-smoke.js +0 -139
  725. package/scripts/game-code-cache-smoke.js +0 -125
  726. package/scripts/sync-all-cache.js +0 -18
  727. package/scripts/sync-api-cache.js +0 -368
  728. package/scripts/sync-game-code-cache.js +0 -283
  729. package/scripts/sync-gaming-info-cache.js +0 -46
package/CHANGELOG.md CHANGED
@@ -7,6 +7,49 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## Unreleased
9
9
 
10
+ ### Fixed
11
+ - Fixed npmjs publishing from automatic GitHub Actions runs to use Trusted Publisher OIDC instead of selecting an npm token that was rejected with `EOTP` (interactive two-factor authentication required).
12
+ - Clarified the required npmjs Trusted Publisher configuration for `NekoSuneProjectsNPM/gaming-infos` and workflow `build-publish.yml`.
13
+
14
+ ### Fixed
15
+ - Corrected the publishing workflow so successful `main` push builds can publish to npmjs and GitHub Packages; previously both registry jobs were skipped because they required `workflow_dispatch`.
16
+ - Added a published-version check to skip existing versions instead of reattempting immutable releases.
17
+ - Preserved manual registry selection and npm token/Trusted Publisher authentication.
18
+
19
+ ### Fixed
20
+ - Fixed npm installation error E404 by aligning the VRChat dependency and lockfile with the published `@nekosuneprojects/vrchat-api@1.0.0` release. The unreleased `1.0.1` tarball was previously referenced incorrectly.
21
+
22
+ ## 3.0.1 - 2026-11-07
23
+
24
+ ### Added
25
+ - Integrated `@nekosuneprojects/vrchat-api@1.0.0` as the second independent game provider alongside Warframe.
26
+ - Added `createVRChat()` and `createClient('vrchat')` for local VRChat JSON, worlds search/browse, groups search and avatar provider searches.
27
+ - Added GitHub Actions validation, Node.js checks, unit tests and package packing on main pushes and pull requests.
28
+ - Added manual npmjs and GitHub Packages publishing with selectable registries and npm token/Trusted Publisher authentication.
29
+
30
+ ### Changed
31
+ - Bumped the gaming-infos package version from `3.0.0` to `3.0.1` for the next release.
32
+ - Consolidated publishing into one workflow, removing duplicate release-triggered publish workflows.
33
+ - Retained `@nekosuneprojects/warframe-api@1.0.1` and exact package dependency locking.
34
+
35
+
36
+ ### Added
37
+ - Added `@nekosuneprojects/vrchat-api@1.0.0` as the second modular provider alongside Warframe.
38
+ - Added `createVRChat()` / `createClient('vrchat')` with bundled VRChat JSON lookups, online world search and browsing, group search, and external avatar search.
39
+ - Extended provider smoke tests and documentation for VRChat.
40
+
41
+ ### Changed
42
+ - Started the 3.0.0 major-version modular rebuild.
43
+ - Removed legacy multi-game JSON cache, scripts and synchronisation workflows.
44
+ - Added the standalone `@nekosuneprojects/warframe-api@1.0.1` dependency as the first provider.
45
+ - Preserved package publishing workflows and switched them to GitHub-hosted runners.
46
+
47
+ ## 3.0.0 - Unreleased
48
+
49
+ ### Breaking changes
50
+ - Replaced the 2.x monolithic API and bundled game data with a small modular provider registry. Only Warframe is included initially.
51
+ - Old `gamecodes`, data mirrors and cache sync commands were removed.
52
+
10
53
  ## 2.4.0 - 2026-08-24
11
54
 
12
55
  ### Added
package/README.md CHANGED
@@ -1,14 +1,8 @@
1
- # 🌐 @nekosuneprojects/gaming-infos
1
+ # @nekosuneprojects/gaming-infos
2
2
 
3
- [![npm version](https://img.shields.io/npm/v/@nekosuneprojects/gaming-infos.svg)](https://www.npmjs.com/package/@nekosuneprojects/gaming-infos)
3
+ Modular multi-game information toolkit for Node.js 18+. **Version 3.0.1 continues the clean-break 3.x rebuild** of the old monolithic data-mirror package, using independent npm packages for each game. The previous embedded datasets, API cache syncs and legacy add-on implementation have been removed.
4
4
 
5
- A Node.js data package for **multi-game information, Fortnite skins/NPCs/maps, Call of Duty characters/NPCs/maps, VRChat community data, redeem codes, and creator codes**.
6
-
7
- The package is **API-first**: it reads from the NekoSuneVR V5 API whenever possible, then automatically falls back to bundled JSON when the API is unavailable. The fallback repository checks APINODE every hour and only commits real add/change/remove data updates.
8
-
9
- Current package source version: **2.4.0**
10
-
11
- > Published npm releases are immutable. The GitHub source can be ahead of the version currently available from the npm registry until a new package release is published.
5
+ The rebuilt package now includes **Warframe and VRChat**, backed by `@nekosuneprojects/warframe-api@1.0.1` and `@nekosuneprojects/vrchat-api@1.0.0` respectively. Additional games can be added later without reintroducing the old monolithic cache.
12
6
 
13
7
  ## Installation
14
8
 
@@ -16,359 +10,93 @@ Current package source version: **2.4.0**
16
10
  npm install @nekosuneprojects/gaming-infos
17
11
  ```
18
12
 
19
- Requires Node.js 18+.
20
-
21
- ## Gaming Infos coverage
22
-
23
- | Game / franchise | Slug | Datasets |
24
- |---|---|---|
25
- | VRChat | `vrchat` | `players`, `groups`, `worlds`, `avatars` |
26
- | Genshin Impact | `genshinimpact` | `characters` |
27
- | Honkai: Star Rail | `honkaistarrail` | `characters` |
28
- | Neverness to Everness | `nte` | `characters` |
29
- | Wuthering Waves | `wutheringwaves` | `characters` (Resonators) |
30
- | Warframe | `warframe` | `characters` (Warframes) |
31
- | **Fortnite** | `fortnite` | `characters` = released skins/Outfits, `npcs` = Battle Royale NPCs, `maps` = Named Locations/maps |
32
- | **Call of Duty mainline** | see table below | `characters`, `npcs`, `maps` per title |
33
- | Zenless Zone Zero | `zenlesszonezero` | `characters` (Agents) |
34
- | Tower of Fantasy | `toweroffantasy` | `characters` (Simulacra) |
35
- | Arknights: Endfield | `arknightsendfield` | `characters` (Operators) |
36
-
37
- ## Call of Duty mainline coverage
38
-
39
- Version 2.4.0 adds the mainline PC/console Call of Duty series from the original **Call of Duty (2003)** through **Black Ops 7**, plus **Modern Warfare 4 (2026)** public beta/official announcement data.
40
-
41
- | Title | Slug | Year/status |
42
- |---|---|---:|
43
- | Call of Duty | `cod2003` | 2003 |
44
- | Call of Duty 2 | `cod2` | 2005 |
45
- | Call of Duty 3 | `cod3` | 2006 |
46
- | Call of Duty 4: Modern Warfare | `cod4modernwarfare` | 2007 |
47
- | Call of Duty: World at War | `codworldatwar` | 2008 |
48
- | Call of Duty: Modern Warfare 2 | `codmodernwarfare2` | 2009 |
49
- | Call of Duty: Black Ops | `codblackops` | 2010 |
50
- | Call of Duty: Modern Warfare 3 | `codmodernwarfare3` | 2011 |
51
- | Call of Duty: Black Ops II | `codblackops2` | 2012 |
52
- | Call of Duty: Ghosts | `codghosts` | 2013 |
53
- | Call of Duty: Advanced Warfare | `codadvancedwarfare` | 2014 |
54
- | Call of Duty: Black Ops III | `codblackops3` | 2015 |
55
- | Call of Duty: Infinite Warfare | `codinfinitewarfare` | 2016 |
56
- | Call of Duty: WWII | `codwwii` | 2017 |
57
- | Call of Duty: Black Ops 4 | `codblackops4` | 2018 |
58
- | Call of Duty: Modern Warfare (2019) | `codmodernwarfare2019` | 2019 |
59
- | Call of Duty: Black Ops Cold War | `codblackopscoldwar` | 2020 |
60
- | Call of Duty: Vanguard | `codvanguard` | 2021 |
61
- | Call of Duty: Modern Warfare II | `codmodernwarfareii2022` | 2022 |
62
- | Call of Duty: Modern Warfare III | `codmodernwarfareiii2023` | 2023 |
63
- | Call of Duty: Black Ops 6 | `codblackops6` | 2024 |
64
- | Call of Duty: Black Ops 7 | `codblackops7` | 2025 |
65
- | Call of Duty: Modern Warfare 4 | `codmodernwarfare4` | 2026 beta / announced launch |
66
-
67
- ### Call of Duty dataset rules
68
-
69
- Each Call of Duty title uses the same three public datasets:
70
-
71
- ```text
72
- <cod-slug>/characters → playable/main characters, protagonists, Operators and Specialists
73
- <cod-slug>/npcs → other campaign/game character and NPC records
74
- <cod-slug>/maps → multiplayer, Zombies, Warzone and other public map/mission records
75
- ```
76
-
77
- Historical released titles are populated from public Call of Duty Wiki game-specific categories. APINODE excludes categories marked cut, unused, cancelled, unreleased, non-canon, prototype/concept, screenshot/image-only, or file-only.
78
-
79
- `codmodernwarfare4` is handled more strictly while the game is pre-release: only **officially published Activision beta/public announcement information** is accepted. Leaks, datamines, hidden APIs, and unofficial unreleased lists are not imported. Campaign NPCs are not invented; they only appear once publicly identified by an allowed source.
80
-
81
- Examples:
82
-
83
- ```js
84
- const bo2Characters = await info.List('codblackops2', 'characters');
85
- const mw2CampaignNpcs = await info.List('codmodernwarfare2', 'npcs');
86
- const cod4Maps = await info.List('cod4modernwarfare', 'maps');
87
- const mw4PublicMaps = await info.List('codmodernwarfare4', 'maps');
88
-
89
- const oneCharacter = await info.Characters('codblackops2', 'character-slug');
90
- const oneNpc = await info.NPCs('codblackops2', 'npc-slug');
91
- const oneMap = await info.Maps('codblackops2', 'map-slug');
92
- ```
93
-
94
- ## Fortnite dataset rules
13
+ To use an individual game package directly:
95
14
 
96
- Fortnite is deliberately separated into three API/package datasets:
97
-
98
- ```text
99
- fortnite/characters → released Outfit cosmetics / skins
100
- fortnite/npcs → Battle Royale NPCs / Characters
101
- fortnite/maps → Named Locations / map locations
15
+ ```bash
16
+ npm install @nekosuneprojects/warframe-api@1.0.1
17
+ npm install @nekosuneprojects/vrchat-api@1.0.0
102
18
  ```
103
19
 
104
- A map/location should never appear in the skins dataset. APINODE also removes legacy NPC duplicates when a title is confirmed by the Fortnite Named Locations catalog.
20
+ Node.js 18+ is required. Pushes to `main` run build/tests and attempt to publish the package to npmjs and GitHub Packages when the exact version is not already available. Pull requests build/test only.
105
21
 
106
- ## Quick start
22
+ ## Warframe
107
23
 
108
24
  ```js
109
- const info = require('@nekosuneprojects/gaming-infos');
110
-
111
- async function main() {
112
- const games = await info.Games();
113
-
114
- const fortniteSkins = await info.List('fortnite', 'characters');
115
- const fortniteNpcs = await info.List('fortnite', 'npcs');
116
- const fortniteMaps = await info.List('fortnite', 'maps');
117
-
118
- const blackOps2Characters = await info.List('codblackops2', 'characters');
119
- const blackOps2Npcs = await info.List('codblackops2', 'npcs');
120
- const blackOps2Maps = await info.List('codblackops2', 'maps');
121
-
122
- const vrchatWorlds = await info.List('vrchat', 'worlds');
123
-
124
- console.log({
125
- games: games.length,
126
- fortniteSkins: fortniteSkins.length,
127
- blackOps2Characters: blackOps2Characters.length,
128
- blackOps2Npcs: blackOps2Npcs.length,
129
- blackOps2Maps: blackOps2Maps.length,
130
- vrchatWorlds: vrchatWorlds.length,
131
- });
132
- }
133
-
134
- main();
135
- ```
136
-
137
- ## Gaming Infos API
25
+ const gaming = require('@nekosuneprojects/gaming-infos');
138
26
 
139
- Live APINODE endpoints:
140
-
141
- ```http
142
- GET /v5/games/api/gaming-infos
143
- GET /v5/games/api/gaming-infos/:game/:type
144
- GET /v5/games/api/gaming-infos/:game/:type/:name
145
- ```
146
-
147
- The root endpoint publishes each game's stable `slug` and available `types`. Type-list responses publish stable entity `slug` values for detail lookups.
148
-
149
- Examples:
150
-
151
- ```http
152
- GET /v5/games/api/gaming-infos/codblackops2/characters
153
- GET /v5/games/api/gaming-infos/codblackops2/npcs
154
- GET /v5/games/api/gaming-infos/codblackops2/maps
155
- GET /v5/games/api/gaming-infos/codmodernwarfare4/characters
156
- GET /v5/games/api/gaming-infos/codmodernwarfare4/maps
27
+ const warframe = gaming.createClient('warframe', { platform: 'pc', language: 'en' });
28
+ const about = await warframe.About();
29
+ const matches = await warframe.search('Ash');
30
+ const codes = await warframe.codes.active({ hasCode: true });
31
+ const alerts = await warframe.api.alerts();
32
+ console.log(about.name, matches.total, codes.length, alerts.length);
157
33
  ```
158
34
 
159
- ### Main helpers
35
+ ## VRChat
160
36
 
161
37
  ```js
162
- await info.Games();
163
- await info.Game('codblackops2');
38
+ const gaming = require('@nekosuneprojects/gaming-infos');
164
39
 
165
- await info.List('codblackops2', 'characters');
166
- await info.List('codblackops2', 'npcs');
167
- await info.List('codblackops2', 'maps');
40
+ // Local-first bundled VRChat JSON, no VRChat login needed:
41
+ const vrchat = gaming.createClient('vrchat', {
42
+ cacheDir: './storage/vrchat'
43
+ });
44
+ const game = await vrchat.About();
45
+ const localWorld = await vrchat.world('theblackcat');
46
+ const localGroups = await vrchat.groups.search('club');
168
47
 
169
- await info.Characters('codblackops2', 'character-slug');
170
- await info.NPCs('codblackops2', 'npc-slug');
171
- await info.Maps('codblackops2', 'map-slug');
48
+ // Live online NekoSune APIs:
49
+ const worlds = await vrchat.worlds.browse({sort:'popular',page:1});
50
+ const foundWorlds = await vrchat.worlds.searchOnline('Mirror',{platform:'pc'});
51
+ const groups = await vrchat.groups.searchOnline('Dance',{page:1});
172
52
 
173
- await info.Worlds('vrchat', 'world-slug');
174
- await info.Groups('vrchat', 'group-slug');
175
- await info.Players('vrchat', 'player-slug');
176
- await info.Avatars('vrchat', 'avatar-slug');
53
+ // Public third-party avatar-search providers (availability varies):
54
+ const avatars = await vrchat.avatars.searchOnline('Rindo');
177
55
 
178
- await info.Get('codblackops2', 'maps', 'map-slug');
179
- await info.CacheInfo();
56
+ console.log(game.name, localWorld.name, localGroups.total);
57
+ console.log(worlds.meta, foundWorlds.meta, groups.meta, avatars.successful);
180
58
  ```
181
59
 
182
- ## Game Codes API
60
+ The `vrchat-api` provider bundles local JSON for worlds, groups, players and game metadata; online methods make on-demand HTTP calls. It does **not** fetch private VRChat account data or bypass authentication. The upstream JSON currently contains no local avatar catalog, so `avatars.searchOnline` uses external providers.
183
61
 
184
- Game Codes are separate from Gaming Infos and are discovered dynamically from APINODE.
62
+ ### World browsing
185
63
 
186
- ```http
187
- GET /v5/games/api/codes
188
- GET /v5/games/api/codes/status
189
- GET /v5/games/api/codes/:game
190
- GET /v5/games/api/codes/:game/:code
191
- ```
192
-
193
- Package helpers:
64
+ The online world browser supports `updated`, `newest`, `oldest` and `popular`, using the remote API's 24-world pagination:
194
65
 
195
66
  ```js
196
- const directory = await info.Codes();
197
- const status = await info.CodesStatus();
198
-
199
- const codes = await info.GameCodes('fortnite');
200
- const allCodes = await info.GameCodes('fortnite', { includeUnknown: true });
201
- const oneCode = await info.GameCode('fortnite', 'SOME-CODE');
202
- const codeCache = await info.CodeCacheInfo();
203
- ```
204
-
205
- Default per-game shape:
206
-
207
- ```json
208
- {
209
- "Active": [],
210
- "Expired": []
211
- }
212
- ```
213
-
214
- With `includeUnknown: true`:
215
-
216
- ```json
217
- {
218
- "Active": [],
219
- "Expired": [],
220
- "Unknown": []
221
- }
222
- ```
223
-
224
- `GameCodes()` also supports `category`, `claimType`, and `timezone` options.
225
-
226
- ## Function reference
227
-
228
- | Function | Purpose |
229
- |---|---|
230
- | `Games()` | List Gaming Infos games |
231
- | `Game(game)` | Get game metadata |
232
- | `List(game, type)` | List a complete dataset |
233
- | `Characters(game, name)` | Get one character/skin/Operator/roster entity |
234
- | `NPCs(game, name)` | Get one NPC |
235
- | `Maps(game, name)` | Get one map/location |
236
- | `Worlds(game, name)` | Get one world |
237
- | `Groups(game, name)` | Get one group |
238
- | `Players(game, name)` | Get one player |
239
- | `Avatars(game, name)` | Get one avatar |
240
- | `Get(game, type, name)` | Generic Gaming Infos detail lookup |
241
- | `CacheInfo()` | Gaming Infos fallback manifest |
242
- | `Codes()` | Game Codes directory |
243
- | `CodesStatus()` | Game Codes source/sync status |
244
- | `GameCodes(game, options)` | Active/Expired/Unknown code lists |
245
- | `GameCode(game, code, options)` | One redeem/creator code |
246
- | `CodeCacheInfo()` | Game Codes fallback manifest |
247
-
248
- ## API-first fallback behavior
249
-
250
- ```text
251
- application
252
- ↓
253
- live APINODE
254
- ├─ success → use current live data
255
- └─ unavailable/error
256
- ↓
257
- bundled data/
258
- ↓
259
- last-good fallback
260
- ```
261
-
262
- Set this to force local-only reads:
263
-
264
- ```bash
265
- GAMING_INFOS_DISABLE_API=1
266
- ```
267
-
268
- Useful runtime variables:
269
-
270
- | Variable | Default |
271
- |---|---|
272
- | `GAMING_INFOS_API_BASE` | `https://api.nekosunevr.co.uk` |
273
- | `GAMING_INFOS_API_PATH` | `/v5/games/api/gaming-infos` |
274
- | `GAME_CODES_API_PATH` | `/v5/games/api/codes` |
275
- | `GAMING_INFOS_TIMEOUT_MS` | `4000` |
276
-
277
- ## Hourly fallback mirror
278
-
279
- The GitHub Action checks APINODE **every hour at minute 23**.
280
-
281
- ```bash
282
- npm run sync:cache
283
- ```
284
-
285
- This mirrors both:
286
-
287
- ```bash
288
- npm run sync:gaming-infos-cache
289
- npm run sync:game-codes-cache
290
- ```
291
-
292
- Gaming Infos now **auto-discovers games and dataset types** from the APINODE root response. The built-in manifest remains a compatibility/safety baseline for older APINODE deployments, but when the API reports:
293
-
294
- ```json
295
- {
296
- "slug": "codblackops2",
297
- "types": ["characters", "npcs", "maps"]
298
- }
299
- ```
300
-
301
- the mirror automatically includes all three datasets. This is how all Call of Duty titles are picked up without hard-coding 23 package mirror entries, and it also makes future public game/type additions easier to propagate.
302
-
303
- The mirror is atomic and last-good-safe:
304
-
305
- 1. Download the root Gaming Infos directory and merge its `slug`/`types` declarations into the effective mirror manifest.
306
- 2. Download every game meta + every discovered/configured dataset to a temporary tree.
307
- 3. Validate all required endpoints and entity slugs.
308
- 4. Calculate hashes and add/change/remove statistics.
309
- 5. Replace the old snapshot only after the new one succeeds completely.
310
- 6. Keep the previous snapshot if APINODE is unavailable or any required dataset fails.
311
- 7. Commit only when stable content actually changed.
312
-
313
- Game-code countdown seconds are not stored as meaningful repository changes; fallback countdowns are recalculated from stable expiry dates when read.
314
-
315
- See [CACHE_SYNC.md](CACHE_SYNC.md) for the detailed mirror design.
316
-
317
- ## Cache tests
318
-
319
- ```bash
320
- npm run test:all-cache
321
- npm run test:cache-sync
322
- npm run test:game-code-cache
67
+ const { createVRChat } = require('@nekosuneprojects/gaming-infos');
68
+ const vrchat = createVRChat();
69
+ const page2 = await vrchat.worlds.browse({sort:'updated',page:2});
70
+ console.log(page2.data, page2.meta);
323
71
  ```
324
72
 
325
- Tests cover additions, updates, removals, duplicate/invalid data, dynamic APINODE dataset discovery, partial HTTP failures, and last-good snapshot preservation.
326
-
327
- ## Fallback structure
73
+ ## Module layout
328
74
 
329
- After APINODE has populated a title and the hourly mirror has completed successfully, the repository structure includes entries like:
330
-
331
- ```text
332
- data/
333
- ├── fortnite/
334
- │ ├── meta.json
335
- │ ├── characters/
336
- │ ├── npcs/
337
- │ └── maps/
338
- ├── codblackops2/
339
- │ ├── meta.json
340
- │ ├── characters/
341
- │ ├── npcs/
342
- │ └── maps/
343
- ├── codmodernwarfare4/
344
- │ ├── meta.json
345
- │ ├── characters/
346
- │ ├── npcs/
347
- │ └── maps/
348
- ├── ...
349
- ├── vrchat/
350
- │ ├── players/
351
- │ ├── groups/
352
- │ ├── worlds/
353
- │ └── avatars/
354
- ├── .cache-manifest.json
355
- └── game-codes/
356
- ├── directory.json
357
- ├── status.json
358
- ├── .cache-manifest.json
359
- └── games/
360
- ```
75
+ - `index.js` — public entrypoint
76
+ - `src/registry.js` — provider registry and selection
77
+ - `src/providers/warframe.js` — Warframe npm adapter
78
+ - `src/providers/vrchat.js` — VRChat npm adapter
79
+ - `test/registry.test.js` — provider smoke tests
80
+ - `.github/workflows/npm-publish.yml` — npmjs release publishing
81
+ - `.github/workflows/npm-publish-github-packages.yml` — GitHub Packages release publishing
361
82
 
362
- ## Data policy
83
+ ## API surface
363
84
 
364
- Only add publicly available released data, or clearly official public beta/announcement information for a currently pre-release title. Do not add private profiles, private messages, authentication data, leaks, unofficial unreleased lists, datamined content, hidden APIs, or client-memory extraction.
85
+ | Export | Purpose |
86
+ | --- | --- |
87
+ | `createClient(game, options)` | Instantiate the game provider |
88
+ | `createWarframe(options)` | Shortcut to the Warframe provider |
89
+ | `createVRChat(options)` | Shortcut to the VRChat provider |
90
+ | `listProviders()` | List installed game IDs |
91
+ | `providers.warframe` | Warframe provider adapter |
92
+ | `providers.vrchat` | VRChat provider adapter |
365
93
 
366
- ## npm fallback note
94
+ Read the standalone packages' documentation for complete features: [Warframe API](https://www.npmjs.com/package/@nekosuneprojects/warframe-api) and [VRChat API](https://www.npmjs.com/package/@nekosuneprojects/vrchat-api).
367
95
 
368
- Published npm releases are immutable. The GitHub repository fallback can update hourly, but an already-installed npm release keeps the files bundled with that release until upgraded. Normal package reads still use live APINODE first when it is available.
96
+ ## Migration from 2.x
369
97
 
370
- ## Disclaimer
98
+ The 2.x `gaming-infos` API-first caches, embedded JSON catalogs, `gamecodes`, and sync scripts are **not available** in 3.0.0. Previous consumers must migrate explicitly. Old releases remain accessible through Git history and npm.
371
99
 
372
- This project is not affiliated with or endorsed by Activision, Epic Games, VRChat Inc., HoYoverse, Kuro Games, Digital Extremes, Hotta Studio, Hypergryph/GRYPHLINE, or other publishers represented by the data. Game names, logos, characters, and related trademarks belong to their respective owners.
100
+ ## Publishing
373
101
 
374
- Maintained by **NekoSune Projects**.
102
+ The source version is `3.0.1`; package publication is manual through GitHub Actions. Before publishing, confirm both exact dependency versions exist on npmjs.org, run `npm ci`, `npm run check`, `npm test`, and `npm pack --dry-run`. The consolidated `Build and publish gaming-infos` workflow builds/tests on every `main` push and pull request. After a successful build on `main`, it also attempts **both** registry publications, skipping any version already published. The manual **Run workflow** action still supports `registry=both`, `npmjs`, or `github`. On automatic pushes, npmjs uses **Trusted Publisher OIDC only**, not the existing `npm_token` (which caused EOTP). Configure npm's Trusted Publisher for the exact `NekoSuneProjectsNPM/gaming-infos` repository and `build-publish.yml` workflow, and enable direct `npm publish`. Manual dispatch still permits a token if it is eligible to publish without an interactive OTP (which must be configured for repository `NekoSuneProjectsNPM/gaming-infos`, workflow `build-publish.yml`). Manual dispatch uses the selected `npm_auth` setting. GitHub Packages publishes as `@nekosuneprojectsnpm/gaming-infos`. Each new npm release still requires incrementing the package version in both package files.