From b212dee4e4b591cb5682f20a623a0811fcadcf67 Mon Sep 17 00:00:00 2001 From: Sivert Date: Fri, 25 Sep 2026 12:21:26 +0200 Subject: [PATCH] feat(packs): IGDB ids on every pack, and app icons for the last four `igdbId` names the game's numeric IGDB id (read off its igdb.com page), so Auto Tournament links a game a player picked from IGDB search to its pack even where IGDB's slug is not the pack's (`trackmania--2`, `deadlock--2`). 32 packs carry one, in the pack and in index.json / catalog.json; Call of Duty (a franchise) and Chess (a board game) have no single IGDB entry. App icons for the four packs that had none, versions bumped to 1.0.2: - Battlefield 6: Steam client icon (app 2807960), from the shared.fastly.steamstatic.com path; the old Cloudflare path 404s for it. - League of Legends: the "L" crest from leagueoflegends.com's own site icon, on League's dark blue. - StarCraft II: the Battle.net shop's game icon, on dark blue. - Chess: our own knight, in the pack tile's faceted style and orange. Sources in app-icons/SOURCES.md; README documents `igdbId`. Co-Authored-By: Claude Opus 5.5 --- README.md | 12 ++++--- app-icons/SOURCES.md | 33 ++++++++--------- app-icons/battlefield-6.webp | Bin 0 -> 7506 bytes app-icons/chess.webp | Bin 0 -> 1460 bytes app-icons/league-of-legends.webp | Bin 0 -> 1340 bytes app-icons/starcraft-ii.webp | Bin 0 -> 2096 bytes catalog.json | 52 ++++++++++++++++++++++----- index.json | 52 ++++++++++++++++++++++----- packs/age-of-empires-ii.json | 1 + packs/apex-legends.json | 1 + packs/battlefield-6.json | 4 ++- packs/brawl-stars.json | 1 + packs/chess.json | 3 +- packs/clash-royale.json | 1 + packs/deadlock.json | 1 + packs/dota-2.json | 1 + packs/ea-sports-fc-25.json | 1 + packs/fortnite.json | 1 + packs/guilty-gear-strive.json | 1 + packs/halo-infinite.json | 1 + packs/hearthstone.json | 1 + packs/league-of-legends.json | 4 ++- packs/mario-kart-8-deluxe.json | 1 + packs/marvel-rivals.json | 1 + packs/minecraft.json | 1 + packs/mobile-legends-bang-bang.json | 1 + packs/mortal-kombat-1.json | 1 + packs/osu.json | 1 + packs/overwatch-2.json | 1 + packs/pubg-battlegrounds.json | 1 + packs/rainbow-six-siege.json | 1 + packs/rocket-league.json | 1 + packs/splatoon-3.json | 1 + packs/starcraft-ii.json | 4 ++- packs/street-fighter-6.json | 1 + packs/super-smash-bros-ultimate.json | 1 + packs/team-fortress-2.json | 1 + packs/teamfight-tactics.json | 1 + packs/tekken-8.json | 1 + packs/trackmania.json | 1 + packs/valorant.json | 1 + 41 files changed, 152 insertions(+), 41 deletions(-) create mode 100644 app-icons/battlefield-6.webp create mode 100644 app-icons/chess.webp create mode 100644 app-icons/league-of-legends.webp create mode 100644 app-icons/starcraft-ii.webp diff --git a/README.md b/README.md index 4c18b03..cebe34f 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ different kind of module. | `schema` | yes | `1`. An instance refuses a schema it does not read. | | `slug` | yes | `lower-case-with-hyphens`. An IGDB slug where one exists, so search enriches the same row instead of adding a second. | | `name` | yes | What people call the game. | +| `igdbId` | no | The game's numeric IGDB id — the "IGDB ID" on its igdb.com page. A game a player picks from IGDB search is matched to this pack by it first, so the pill draws this pack's app icon even where IGDB's slug is not the pack's (`trackmania--2`, `deadlock--2`). Leave it out for a franchise pack or a game IGDB has no single entry for. Needs an instance that knows the field (older 3.0 betas refuse it). | | `engine` | yes | The module that runs it. `manual-report` today. | | `aliases` | no | Extra search terms. | | `version` | no | Your own version string. Re-importing the same slug updates it. | @@ -118,9 +119,10 @@ person can read and a reviewer can diff. ### index.json Each entry repeats just enough for the app to draw a card before it downloads -anything: the slug, name, version, engine, a one-line description, the pack's -path, the tile's path *relative to this file* (`icons/.svg`, without -the `../`), and the app icon's the same way (`app-icons/.webp`). +anything: the slug, name, IGDB id (when the pack has one), version, engine, a +one-line description, the pack's path, the tile's path *relative to this file* +(`icons/.svg`, without the `../`), and the app icon's the same way +(`app-icons/.webp`). ```json { @@ -180,10 +182,10 @@ downloads only from `https://github.com/Auto-Tournament/`. ## Adding a game -1. Write `packs/.json`. +1. Write `packs/.json`, with the game's `igdbId` from its igdb.com page when IGDB has one entry for it. 2. Put its tile at `icons/.svg` and point `icon` at `../icons/.svg`. 3. If the game has a square app icon, put it at `app-icons/.webp` (128 × 128, at most 25 KB), point `appIcon` at `../app-icons/.webp`, and add a row to `app-icons/SOURCES.md`. -4. Add the game to `index.json` and to `packs` in `catalog.json`, with `icon` as `icons/.svg` (and `appIcon` as `app-icons/.webp`). +4. Add the game to `index.json` and to `packs` in `catalog.json`, with its `igdbId`, `icon` as `icons/.svg` (and `appIcon` as `app-icons/.webp`). 5. Open a pull request. Please only add a game you would actually run a tournament for, with a tile diff --git a/app-icons/SOURCES.md b/app-icons/SOURCES.md index 89799dd..6c0ae5f 100644 --- a/app-icons/SOURCES.md +++ b/app-icons/SOURCES.md @@ -13,16 +13,24 @@ Sources, in order of preference — all public, no API key, nothing behind a login: 1. **Steam client icon.** `https://api.steamcmd.net/v1/info/` → - `common.clienticon` → `https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/apps//.ico`; - the largest frame (256 or 512 px). The small `common.icon` JPEG is 32 px and - not used. Where the `.ico` is gone, `common.linuxclienticon` (a zip of PNGs). + `common.clienticon` → `https://shared.fastly.steamstatic.com/community_assets/images/apps//.ico` + (the older `https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/apps//.ico` + path still answers for older games but 404s for newer ones, such as + Battlefield 6); the largest frame (256 or 512 px). The small `common.icon` + JPEG is 32 px and not used. Where the `.ico` is gone, + `common.linuxclienticon` (a zip of PNGs). 2. **App Store icon** for mobile-first games. `https://itunes.apple.com/lookup?id=` → `artworkUrl512` (requested at 256 px, PNG). 3. **Nintendo eShop square image** for Nintendo-only games — the square picture the Switch shows for the game. Nintendo of Europe's game search (`searching.nintendo-europe.com`), field `image_url_sq_s`. -4. Otherwise, a square icon published by the game's own store page or - Wikimedia Commons, noted per game below. +4. Otherwise, a square icon published by the game's own store page, its + launcher or Wikimedia Commons, noted per game below. Where that is a mark + on a transparent background, it is set on the colour the game's launcher + tile uses, the way the launcher shows it. +5. **Chess** has no brand — it is a game, not a product — so its icon is ours: + a knight drawn in the same flat, faceted style and palette as the pack's + tile (`icons/chess.svg`). Wikidata has no square-icon statement (P2910) for any of these games, and its logo (P154) is the wide wordmark, so it is not a source except where the logo @@ -32,8 +40,10 @@ is itself the square icon (osu!). | --- | --- | --- | --- | | age-of-empires-ii | `age-of-empires-ii.webp` | Steam client icon (app 813780, 256px frame of `common.clienticon`) | | | apex-legends | `apex-legends.webp` | Steam client icon (app 1172470, 256px frame of `common.clienticon`) | | +| battlefield-6 | `battlefield-6.webp` | Steam client icon (app 2807960, 256px frame of `common.clienticon`; the old Cloudflare path 404s for it) | | | brawl-stars | `brawl-stars.webp` | App Store icon, "Brawl Stars" by Supercell Oy (iTunes Lookup id 1229016807) | | | call-of-duty | `call-of-duty.webp` | Steam client icon (app 1938090, 256px frame of `common.clienticon`) | | +| chess | `chess.webp` | Our own: a chess knight in the pack tile's flat, faceted style, on the tile's orange #FA632A | — | | clash-royale | `clash-royale.webp` | App Store icon, "Clash Royale" by Supercell Oy (iTunes Lookup id 1053012308) | | | counter-strike-2 | `counter-strike-2.webp` | Steam client icon (app 730, 512px frame of `common.clienticon`) | | | deadlock | `deadlock.webp` | Steam client icon (app 1422450, 256px frame of `common.clienticon`) | | @@ -43,6 +53,7 @@ is itself the square icon (osu!). | guilty-gear-strive | `guilty-gear-strive.webp` | Steam client icon (app 1384160, 256px frame of `common.clienticon`) | | | halo-infinite | `halo-infinite.webp` | Steam client icon (app 1240440, 256px frame of `common.clienticon`) | | | hearthstone | `hearthstone.webp` | App Store icon, "Hearthstone" by Blizzard Entertainment, Inc. (iTunes Lookup id 625257520) | | +| league-of-legends | `league-of-legends.webp` | The League "L" crest from leagueoflegends.com's own site icon (SVG), set on League's dark blue #0A1428 — the tile the Riot Client shows. Not on Steam or the App Store; the Epic Games Store listing has only box art and the wordmark | | | mario-kart-8-deluxe | `mario-kart-8-deluxe.webp` | Nintendo eShop square image (Nintendo of Europe game search, `image_url_sq_s`) | | | marvel-rivals | `marvel-rivals.webp` | Steam client icon (app 2767030, 256px frame of `common.clienticon`) | | | minecraft | `minecraft.webp` | App Store icon, "Minecraft: Play with Friends!" by Mojang AB (iTunes Lookup id 479516143) | | @@ -54,6 +65,7 @@ is itself the square icon (osu!). | rainbow-six-siege | `rainbow-six-siege.webp` | Steam client icon (app 359550, 256px frame of `common.clienticon`) | | | rocket-league | `rocket-league.webp` | Steam client icon (app 252950, 256px frame of `common.clienticon`) | | | splatoon-3 | `splatoon-3.webp` | Nintendo eShop square image (Nintendo of Europe game search, `image_url_sq_s`) | | +| starcraft-ii | `starcraft-ii.webp` | Battle.net shop game icon (SVG, the SC mark the Battle.net launcher lists the game with), set on dark blue #0C1524. Battle.net only, not on Steam | | | street-fighter-6 | `street-fighter-6.webp` | Steam client icon (app 1364780, 256px frame of `common.clienticon`) | | | super-smash-bros-ultimate | `super-smash-bros-ultimate.webp` | Nintendo eShop square image (Nintendo of Europe game search, `image_url_sq_s`) | | | team-fortress-2 | `team-fortress-2.webp` | Steam client icon (app 440, 512px frame of `common.clienticon`) | | @@ -65,14 +77,3 @@ is itself the square icon (osu!). `counter-strike-2.webp` is here for the record; the platform ships it with the CS2 module (`client/public/games/counter-strike-2-app-icon.webp`), since CS2 is a code module, not a pack. - -## Games without an app icon - -No public, key-free source has a square icon for these, so their packs have no -`appIcon` and the app falls back to the IGDB cover (when IGDB is set up), then -the game's initials: - -- **Battlefield 6** — no Steam `.ico` (404), no App Store app; the Epic icon is the wordmark. -- **Chess** — a game, not a product; no one icon to use. -- **League of Legends** — not on Steam or the App Store; store listings only carry box art. -- **StarCraft II** — Battle.net only; store listings only carry box art. diff --git a/app-icons/battlefield-6.webp b/app-icons/battlefield-6.webp new file mode 100644 index 0000000000000000000000000000000000000000..146760ea054c1983d6d67f6475a2c44b5ec53ac6 GIT binary patch literal 7506 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 literal 0 HcmV?d00001 diff --git a/app-icons/chess.webp b/app-icons/chess.webp new file mode 100644 index 0000000000000000000000000000000000000000..d90f48053bedd8382d2fe906c0bd7582e174f9a1 GIT binary patch literal 1460 zcmV;l1xxx;Nk&Gj1pok7MM6+kP&go<1pol>9{`;JDu4ih06sAmi9;eGAr*-n^dJKS zpbbGC@8^G$I{keY@mKce{a0M}+4gt$EBdcjk>lw%>|bwvpgh1oLBGU(wD&jj0sBk( ztJurX1ND>9SJ;2h1NhJO?@J%qZ-U?0zx&_k{i8ql>o0jbv0v~Q^gAp1ULR#i!0jy) zL-L~e<3^m4l!e8c=OTG6-yRw#$7-A3nVFyQ>$S!YQJDaxA=*K!P=0$Ry$sM&-RBvP z!}b<#TjDvP*w%WKH&9s-_-MCokf>fu_j~Fr-)_o^*`g_6c-{A6LDQ;}jXVwTeU(>G z1Xb*-S2l%GY|xxM6O zfR8|yDifdrZm6ilFQ=1a2X&?7ZZJQW^Y>#5(SIyaZnFk?&YB^p&o^64ae2L0_``#^ zAprsFii=mqZN#g5*AuR6xNytpC6Vzu-B?Y*EMXE`Odj5Ba%DHX&RY$!w*imBL~Shy zn%^wA@K5;uUAysi>~mr9*0pc8RFC=(JtIC3P}SB8nt=nlP5A6`(D#+}=0#@-SAw5l zt!b(6(Sm@EOBF<+EQLp-C0KZ}GGZ~&%QRhvODl6vPgr)%Ccs61C><|V(LfSciwX8A z)4JP-pjy`h91>q}B}6fqd7}e5cxpLD3szHZS6Q9TlFoEGBWb%6)))Ewu>Vl}rHPlR z_XBgeLoWfw`Gx=fl~*h4L&jGSw`mZ*v5wuOg42D-YLaMo+3}i^4_+|P{I0Y9(Pv5o z3ql{;qozaZkY!{HOc9Pxeg^5GZPd>ma8ms6FMojjX0WhuA-LRqe4y>o@#z-Ecgh9A z36VJM)+nl@BtRmdoBN)9_c-oy0IJDwBA&kdj^&$LLeZdM4URX1o$_3{(8q&tn}e6* z2!Z2hJ(FN_e19q^EZX3soH1HIiATUrw~+}-D!&URw?xr00%!SlM^SEpyDr?%B3QC7 zX_jXi&uRBv3?jl>hNgc7Qza^U_Zbh|)!*<{%+5&3dC7Hqq+O~KZgxOw;KIkr!jt=J zzC)775=;w?pZv!>z1b$@q#QoaZ9S?;nz! zg`i#fOsj@w-d!qh<>a+@j(Nx zuNV6`kFCrdkq4_rMby8cw*cilDdo> z8-s*H(NY`Y5_Oj^zHq=7)%lT@j~9_4F%ozj)yR5SZ`TfgpCf1v$0!-0%y0@kb*tiw zV1V?j&PqY4M3-gZP0x-YTMSX6=bNG->f`Q|4_`C;hh3U89^D`(=f`saFuGsj6U?P! zpYtiu>;ad110awWs{jg=eei%8=*QRvm+;u+i)c<@(Yd;SCMRR5Kn`u7Wa{@KG%ejs zdlZfoK2x;5c+WwD^ZA=!rOtEm;?co4c$Vz#)!13yy3N)+7Nv_9(=q~MV{=Z#Bzv{PTg zY=U@nf*_*AEcD&eg<#X1+B!tZx+{AzWGH5su;5giH5j@cN^POT4ieVZhhZP$N4h^) z%4Ge)=m_g8V62an(!KagSLjdxenMHA`y{$)4LQx9uY`XtlFS#ut!DHEk=okfv(>B$ z0a*1E1D!4y_y<&&-$+fsC@v6hdymSx7mns8TXF)cIHfn?`Y&J4?SNUHAgOVk-t$@s z3Dxe+STvCOy{r!lbk#D)Y;a^lj7`RWep3H%SttZi4`7MqoE0IpY_PI%b;0lm^v-d; O+TnGTFp6D(0001cmEg_* literal 0 HcmV?d00001 diff --git a/app-icons/league-of-legends.webp b/app-icons/league-of-legends.webp new file mode 100644 index 0000000000000000000000000000000000000000..aafdbf200d847c35f51d52341ed148c144a30333 GIT binary patch literal 1340 zcmV-C1;hGMNk&FA1pok7MM6+kP&gnc1pojr9RQsHDu4ih06sAmibJ9yAr**Z+#mx4 zpbcLdck8;Wox}30pr?GJ_Vce3{S*Ap+&^f)Fb~zQFb`B-U_9HuzU5f?myotx)z8-jWQ_92BA^;$_M*_(^C3o5OV;ypFoC^rW?Nekb8OlHc<8 z&6N!hCH|l)5CH!EZGMdK2hrCyQqwIQK1>t}?5n{))vfBRef!OG#2LeEc;f^U>aV56 zl&_Slb`5;U<8_n1q_c2nbi4Q$_mJ6MHjBl4zmE|7>@JIvc!n-1;2D-L#0!WyI4QK8SjN3aAJ^;Jpu$ufbU6S9&J>jFz@@YS5o49#B-^lm> z8PN{Uqo$W(W8tbrSgJY&uy@?aJM;Hs3srIQh>fBaU*Y@Io7xc>^?uE44YANiyV=E) z{qIr1K#+diN!_(Vy@>ulZ{?n>L$t^U8oPdphsV_1D;I4YN8;FDycmG5mx=8(+I#{E zT#Qv8VjEd~Dg){=y@AsK+aHjdHzKxUlQLLSff~(K-g-E|>TJpGMIe?+c{9|s{ zb9Hfe_Qb6f#!-sUhl=#AboexL$8tINeZSX)mKA}I;2sxzBda)Or|a9s22|gftBk=< zEjXUxCfp5 z<>^uVb2s->pJhB_RS$Q_TAdOIJlz06&UHgm`S&L8#o_+ssBS%d#4lHHXgc!klg9bC zPVlomeHz+;c9n!p)uL}=yWLfQG{9}V*fU3PM-1a*tdPPIT zE1!mLZHdaU4#P!tmD6Nr)19zRNr)zNct|1jCm*l_Ouytoy2hc?(C!d{%%mVg8vkM6 zh+CH&&Vk$~k4zBy@j)>>kS{V{$IjwvM8P*Ky7=6#@|L*QK8?TrZTyJUXCp;dOTNU` zM?bf(2C~o>6!yc$p!?+i_0Qb>8B}eB;9fpax;+B@kMW7* z;)%4^)$i0}=XPMRzMH2$q0VSf$gVb2LJ(ZRin;ALGb<25!>@b5lddN-2w3~h9enUp zEuS7y6LwTeU>d5i`03Ak;oHj<4bI`Be}c>x y?S0lLLn&?9ragPxs^s29QI6|G9JU%{{I$G@&FCi#l1&XI&8_cTnS=lU0002>P_PXE literal 0 HcmV?d00001 diff --git a/app-icons/starcraft-ii.webp b/app-icons/starcraft-ii.webp new file mode 100644 index 0000000000000000000000000000000000000000..96d13131ce8f9eeea850e7c72c3ba3f5f743656b GIT binary patch literal 2096 zcmV-02+#LYNk&E}2mkO)hiowiegt7{bRbc zT;|VhDU8Lf-V@?-k7DL$zW!PA1@NX<=7a(c%N1&gG`#N8nOZu#RIvn(lx!Y-Vq1lt z(A8a=qqMXJ`@_)VcgXd)~9> z1u+34pYY@uyFF$}`3;{9@#{=9#t#%?b#=9Hj8^b8oY=djqD1crB1nfZL->vRl}XuP zB@?>m7*Y@gkA*qijZ7vI zkgZ^S!1TX7S~(ciaagW+6SB4prQ$Fk^z3}DrN$GO!={z;1!F=j5&i=k-DU4f)}tOy zRN3;<&n@Q|G|XTRhT+so>BdJsDpjXyn|LL+1p|)UX z|0oUWJMmnHW@qf*tLpds%;8ySJH3Yz?EdzkaV@@ItMmnhcpm9NyBDgbr=RqNh4y}K z8j8F7luO>5N-p338p&9YP@QwkV)nC9*rv}fzJOT!AvQ-u9c{|Yw2j`kAa|?U)k^$% z?*BHs@z6oa+Q_zUcxY(<-FBl`R4IXoP;xg)qCtrKwf4QQ6F zXW&BsBnx}-OD{YD_WHo~Xs#YopqTCpDm4zlNez<%+kQN88}aT30ssHA?JiX9+xvG~ zBdbe)gMfoNyTQ5tkz@CpoMG)Yb$&1N%;Fru)(Q{qDovPN&C7a5eu9%PooYMzTudLS86s>GjtKzL94;5VA#II(z1V z;Kst+EqByqJn{?M66e?Pak`4glrZE|G9&4TMgcu>H_?)`_TPgMFrtN0dFb}D7N}7R z^Vij8!wZ??R7-z1E}&J08s~*nT+Y9=h>U1c>vv*zB>-fO3%sjc%sS$?Svy;x0IVu6 zaA*?letCU$8kwAl7sB~=Co9?2YT>o!xmw<<9f7FGGKnQJ7~tYrtS0TyUC&#-trY30 zq_RD}N17x5h*kZ$i;!&~LdvH#t%Q)f$0Sm;&2Iwp zI7#SnYZz@7-o<6I=yN^w!MX5oPgjeN?^Y8(j6QbV$SZ3&5C8BwzizKALf?UulrD>v z@Fqpc1TDU`r)!UV@4bHOF<5%5OJMqSy}IhlnAwzs*~;eE@;ongN@OIe1E|K>Tubb= z@BB4IsolJGYgc7juplKP@!;@qJv2598Fx%(qgTrxt^yX-+==n{1S@h%HoD)^beerS zF{ixI?7w@uuKuO!YlSaao1Cgad1q5}hTOIZh8qUU3~IACiv`N#ihdooe$m85xbNF~ zOh*-ZJfYT*n&TzJdQ_fSpj~-cQ|Z>#`Wmxx?E&c#K7nDK7v)9*GOO!=xs(u~{7G*; z94f2p8V2)`@KCAe#2Q@?`?KAvLd z{8T_xS}5&om{!_EC+5>%4pGLFerT>@9-V4*TIF8f6Mk;c^yOG+7nE}~KZhO&ln<#d zM-MAe@bt7k;)Jh8xhGyPr}kiQz9iqoe{|@BA5nf9l2R1nPd4P_+NN>655kl31xg37 z(qQl+VFL_9vf(%b_O%<$32Bn2gs!sxV?bfv466$A6e_xAN)dtt*sm%~m+yIn`*9H1 zKC0a9Y}X;%iOED};)16~^?!&CAFzMwXJiUPM?dLp3}W;gVXIHm=plw~vo7j2o9_|; zumM#f@3w7d4DwB}W(>6FO>W0d4@D$@b>s^wW&TdwUJ`gpd4K=_0002?vN!wy literal 0 HcmV?d00001 diff --git a/catalog.json b/catalog.json index 367e2ae..73783bd 100644 --- a/catalog.json +++ b/catalog.json @@ -4,6 +4,7 @@ { "slug": "age-of-empires-ii", "name": "Age of Empires II", + "igdbId": 55056, "version": "1.0.2", "engine": "manual-report", "description": "Real-time strategy. Report games won.", @@ -14,6 +15,7 @@ { "slug": "apex-legends", "name": "Apex Legends", + "igdbId": 114795, "version": "1.0.2", "engine": "manual-report", "description": "Three-a-side battle royale. Placement and kills each match.", @@ -24,15 +26,18 @@ { "slug": "battlefield-6", "name": "Battlefield 6", - "version": "1.0.1", + "igdbId": 317407, + "version": "1.0.2", "engine": "manual-report", "description": "Squad shooter, reported by the result of each map.", "file": "packs/battlefield-6.json", - "icon": "icons/battlefield-6.svg" + "icon": "icons/battlefield-6.svg", + "appIcon": "app-icons/battlefield-6.webp" }, { "slug": "brawl-stars", "name": "Brawl Stars", + "igdbId": 55945, "version": "1.0.2", "engine": "manual-report", "description": "Three-a-side mobile brawler, reported by the events played.", @@ -53,15 +58,17 @@ { "slug": "chess", "name": "Chess", - "version": "1.0.1", + "version": "1.0.2", "engine": "manual-report", "description": "One board, two players. A win is 1, a draw is a half each.", "file": "packs/chess.json", - "icon": "icons/chess.svg" + "icon": "icons/chess.svg", + "appIcon": "app-icons/chess.webp" }, { "slug": "clash-royale", "name": "Clash Royale", + "igdbId": 15707, "version": "1.0.2", "engine": "manual-report", "description": "One-on-one mobile card battler. Report games won in the set.", @@ -72,6 +79,7 @@ { "slug": "deadlock", "name": "Deadlock", + "igdbId": 301298, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side hero shooter MOBA.", @@ -82,6 +90,7 @@ { "slug": "dota-2", "name": "Dota 2", + "igdbId": 2963, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side MOBA. One map per game.", @@ -92,6 +101,7 @@ { "slug": "ea-sports-fc-25", "name": "EA Sports FC", + "igdbId": 308698, "version": "1.0.2", "engine": "manual-report", "description": "Football. Report the scoreline.", @@ -102,6 +112,7 @@ { "slug": "fortnite", "name": "Fortnite", + "igdbId": 1905, "version": "1.0.2", "engine": "manual-report", "description": "Battle royale. Report placement and eliminations each match.", @@ -112,6 +123,7 @@ { "slug": "guilty-gear-strive", "name": "Guilty Gear -Strive-", + "igdbId": 125764, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -122,6 +134,7 @@ { "slug": "halo-infinite", "name": "Halo Infinite", + "igdbId": 103281, "version": "1.0.2", "engine": "manual-report", "description": "Four-a-side arena shooter, reported by the maps played.", @@ -132,6 +145,7 @@ { "slug": "hearthstone", "name": "Hearthstone", + "igdbId": 1279, "version": "1.0.2", "engine": "manual-report", "description": "One-on-one digital card game. Report games won in the set.", @@ -142,15 +156,18 @@ { "slug": "league-of-legends", "name": "League of Legends", - "version": "1.0.1", + "igdbId": 115, + "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side MOBA. One map per game.", "file": "packs/league-of-legends.json", - "icon": "icons/league-of-legends.svg" + "icon": "icons/league-of-legends.svg", + "appIcon": "app-icons/league-of-legends.webp" }, { "slug": "mario-kart-8-deluxe", "name": "Mario Kart 8 Deluxe", + "igdbId": 26764, "version": "1.0.2", "engine": "manual-report", "description": "Kart racing. Report finishing position and points each race.", @@ -161,6 +178,7 @@ { "slug": "marvel-rivals", "name": "Marvel Rivals", + "igdbId": 294041, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side hero shooter, reported by the maps played.", @@ -171,6 +189,7 @@ { "slug": "minecraft", "name": "Minecraft", + "igdbId": 135400, "version": "1.0.2", "engine": "manual-report", "description": "Whatever the host builds on it. The captains report who won.", @@ -181,6 +200,7 @@ { "slug": "mobile-legends-bang-bang", "name": "Mobile Legends: Bang Bang", + "igdbId": 79392, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side mobile MOBA. One map per game.", @@ -191,6 +211,7 @@ { "slug": "mortal-kombat-1", "name": "Mortal Kombat 1", + "igdbId": 272491, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -201,6 +222,7 @@ { "slug": "osu", "name": "osu!", + "igdbId": 3012, "version": "1.0.2", "engine": "manual-report", "description": "Rhythm game. Report maps won.", @@ -211,6 +233,7 @@ { "slug": "overwatch-2", "name": "Overwatch 2", + "igdbId": 125174, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side hero shooter, reported by maps won.", @@ -221,6 +244,7 @@ { "slug": "pubg-battlegrounds", "name": "PUBG: Battlegrounds", + "igdbId": 27789, "version": "1.0.2", "engine": "manual-report", "description": "Squad battle royale. Placement and eliminations each match.", @@ -231,6 +255,7 @@ { "slug": "rainbow-six-siege", "name": "Rainbow Six Siege", + "igdbId": 7360, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side tactical shooter, reported by rounds won.", @@ -241,6 +266,7 @@ { "slug": "rocket-league", "name": "Rocket League", + "igdbId": 11198, "version": "1.0.2", "engine": "manual-report", "description": "Car soccer. Captains report the score; goals, assists, saves and shots per player.", @@ -251,6 +277,7 @@ { "slug": "splatoon-3", "name": "Splatoon 3", + "igdbId": 143613, "version": "1.0.2", "engine": "manual-report", "description": "Four-a-side team shooter, reported by the maps played.", @@ -261,15 +288,18 @@ { "slug": "starcraft-ii", "name": "StarCraft II", - "version": "1.0.1", + "igdbId": 239, + "version": "1.0.2", "engine": "manual-report", "description": "One-on-one real-time strategy. Report games won in the set.", "file": "packs/starcraft-ii.json", - "icon": "icons/starcraft-ii.svg" + "icon": "icons/starcraft-ii.svg", + "appIcon": "app-icons/starcraft-ii.webp" }, { "slug": "street-fighter-6", "name": "Street Fighter 6", + "igdbId": 191692, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -280,6 +310,7 @@ { "slug": "super-smash-bros-ultimate", "name": "Super Smash Bros. Ultimate", + "igdbId": 90101, "version": "1.0.2", "engine": "manual-report", "description": "Platform fighter. Report games won in the set.", @@ -290,6 +321,7 @@ { "slug": "team-fortress-2", "name": "Team Fortress 2", + "igdbId": 891, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side class shooter, reported by rounds won.", @@ -300,6 +332,7 @@ { "slug": "teamfight-tactics", "name": "Teamfight Tactics", + "igdbId": 120176, "version": "1.0.2", "engine": "manual-report", "description": "Eight-player auto battler. Report finishing placement each game.", @@ -310,6 +343,7 @@ { "slug": "tekken-8", "name": "Tekken 8", + "igdbId": 217590, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -320,6 +354,7 @@ { "slug": "trackmania", "name": "Trackmania", + "igdbId": 133807, "version": "1.0.2", "engine": "manual-report", "description": "Racing. The score is whatever format the host runs — points, rounds or times.", @@ -330,6 +365,7 @@ { "slug": "valorant", "name": "Valorant", + "igdbId": 126459, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side tactical shooter, reported by rounds won.", diff --git a/index.json b/index.json index ceaf3ee..1b75304 100644 --- a/index.json +++ b/index.json @@ -4,6 +4,7 @@ { "slug": "age-of-empires-ii", "name": "Age of Empires II", + "igdbId": 55056, "version": "1.0.2", "engine": "manual-report", "description": "Real-time strategy. Report games won.", @@ -14,6 +15,7 @@ { "slug": "apex-legends", "name": "Apex Legends", + "igdbId": 114795, "version": "1.0.2", "engine": "manual-report", "description": "Three-a-side battle royale. Placement and kills each match.", @@ -24,15 +26,18 @@ { "slug": "battlefield-6", "name": "Battlefield 6", - "version": "1.0.1", + "igdbId": 317407, + "version": "1.0.2", "engine": "manual-report", "description": "Squad shooter, reported by the result of each map.", "file": "packs/battlefield-6.json", - "icon": "icons/battlefield-6.svg" + "icon": "icons/battlefield-6.svg", + "appIcon": "app-icons/battlefield-6.webp" }, { "slug": "brawl-stars", "name": "Brawl Stars", + "igdbId": 55945, "version": "1.0.2", "engine": "manual-report", "description": "Three-a-side mobile brawler, reported by the events played.", @@ -53,15 +58,17 @@ { "slug": "chess", "name": "Chess", - "version": "1.0.1", + "version": "1.0.2", "engine": "manual-report", "description": "One board, two players. A win is 1, a draw is a half each.", "file": "packs/chess.json", - "icon": "icons/chess.svg" + "icon": "icons/chess.svg", + "appIcon": "app-icons/chess.webp" }, { "slug": "clash-royale", "name": "Clash Royale", + "igdbId": 15707, "version": "1.0.2", "engine": "manual-report", "description": "One-on-one mobile card battler. Report games won in the set.", @@ -72,6 +79,7 @@ { "slug": "deadlock", "name": "Deadlock", + "igdbId": 301298, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side hero shooter MOBA.", @@ -82,6 +90,7 @@ { "slug": "dota-2", "name": "Dota 2", + "igdbId": 2963, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side MOBA. One map per game.", @@ -92,6 +101,7 @@ { "slug": "ea-sports-fc-25", "name": "EA Sports FC", + "igdbId": 308698, "version": "1.0.2", "engine": "manual-report", "description": "Football. Report the scoreline.", @@ -102,6 +112,7 @@ { "slug": "fortnite", "name": "Fortnite", + "igdbId": 1905, "version": "1.0.2", "engine": "manual-report", "description": "Battle royale. Report placement and eliminations each match.", @@ -112,6 +123,7 @@ { "slug": "guilty-gear-strive", "name": "Guilty Gear -Strive-", + "igdbId": 125764, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -122,6 +134,7 @@ { "slug": "halo-infinite", "name": "Halo Infinite", + "igdbId": 103281, "version": "1.0.2", "engine": "manual-report", "description": "Four-a-side arena shooter, reported by the maps played.", @@ -132,6 +145,7 @@ { "slug": "hearthstone", "name": "Hearthstone", + "igdbId": 1279, "version": "1.0.2", "engine": "manual-report", "description": "One-on-one digital card game. Report games won in the set.", @@ -142,15 +156,18 @@ { "slug": "league-of-legends", "name": "League of Legends", - "version": "1.0.1", + "igdbId": 115, + "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side MOBA. One map per game.", "file": "packs/league-of-legends.json", - "icon": "icons/league-of-legends.svg" + "icon": "icons/league-of-legends.svg", + "appIcon": "app-icons/league-of-legends.webp" }, { "slug": "mario-kart-8-deluxe", "name": "Mario Kart 8 Deluxe", + "igdbId": 26764, "version": "1.0.2", "engine": "manual-report", "description": "Kart racing. Report finishing position and points each race.", @@ -161,6 +178,7 @@ { "slug": "marvel-rivals", "name": "Marvel Rivals", + "igdbId": 294041, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side hero shooter, reported by the maps played.", @@ -171,6 +189,7 @@ { "slug": "minecraft", "name": "Minecraft", + "igdbId": 135400, "version": "1.0.2", "engine": "manual-report", "description": "Whatever the host builds on it. The captains report who won.", @@ -181,6 +200,7 @@ { "slug": "mobile-legends-bang-bang", "name": "Mobile Legends: Bang Bang", + "igdbId": 79392, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side mobile MOBA. One map per game.", @@ -191,6 +211,7 @@ { "slug": "mortal-kombat-1", "name": "Mortal Kombat 1", + "igdbId": 272491, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -201,6 +222,7 @@ { "slug": "osu", "name": "osu!", + "igdbId": 3012, "version": "1.0.2", "engine": "manual-report", "description": "Rhythm game. Report maps won.", @@ -211,6 +233,7 @@ { "slug": "overwatch-2", "name": "Overwatch 2", + "igdbId": 125174, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side hero shooter, reported by maps won.", @@ -221,6 +244,7 @@ { "slug": "pubg-battlegrounds", "name": "PUBG: Battlegrounds", + "igdbId": 27789, "version": "1.0.2", "engine": "manual-report", "description": "Squad battle royale. Placement and eliminations each match.", @@ -231,6 +255,7 @@ { "slug": "rainbow-six-siege", "name": "Rainbow Six Siege", + "igdbId": 7360, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side tactical shooter, reported by rounds won.", @@ -241,6 +266,7 @@ { "slug": "rocket-league", "name": "Rocket League", + "igdbId": 11198, "version": "1.0.2", "engine": "manual-report", "description": "Car soccer. Captains report the score; goals, assists, saves and shots per player.", @@ -251,6 +277,7 @@ { "slug": "splatoon-3", "name": "Splatoon 3", + "igdbId": 143613, "version": "1.0.2", "engine": "manual-report", "description": "Four-a-side team shooter, reported by the maps played.", @@ -261,15 +288,18 @@ { "slug": "starcraft-ii", "name": "StarCraft II", - "version": "1.0.1", + "igdbId": 239, + "version": "1.0.2", "engine": "manual-report", "description": "One-on-one real-time strategy. Report games won in the set.", "file": "packs/starcraft-ii.json", - "icon": "icons/starcraft-ii.svg" + "icon": "icons/starcraft-ii.svg", + "appIcon": "app-icons/starcraft-ii.webp" }, { "slug": "street-fighter-6", "name": "Street Fighter 6", + "igdbId": 191692, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -280,6 +310,7 @@ { "slug": "super-smash-bros-ultimate", "name": "Super Smash Bros. Ultimate", + "igdbId": 90101, "version": "1.0.2", "engine": "manual-report", "description": "Platform fighter. Report games won in the set.", @@ -290,6 +321,7 @@ { "slug": "team-fortress-2", "name": "Team Fortress 2", + "igdbId": 891, "version": "1.0.2", "engine": "manual-report", "description": "Six-a-side class shooter, reported by rounds won.", @@ -300,6 +332,7 @@ { "slug": "teamfight-tactics", "name": "Teamfight Tactics", + "igdbId": 120176, "version": "1.0.2", "engine": "manual-report", "description": "Eight-player auto battler. Report finishing placement each game.", @@ -310,6 +343,7 @@ { "slug": "tekken-8", "name": "Tekken 8", + "igdbId": 217590, "version": "1.0.2", "engine": "manual-report", "description": "Fighting game. Report games won in the set.", @@ -320,6 +354,7 @@ { "slug": "trackmania", "name": "Trackmania", + "igdbId": 133807, "version": "1.0.2", "engine": "manual-report", "description": "Racing. The score is whatever format the host runs — points, rounds or times.", @@ -330,6 +365,7 @@ { "slug": "valorant", "name": "Valorant", + "igdbId": 126459, "version": "1.0.2", "engine": "manual-report", "description": "Five-a-side tactical shooter, reported by rounds won.", diff --git a/packs/age-of-empires-ii.json b/packs/age-of-empires-ii.json index 32672bb..57859e9 100644 --- a/packs/age-of-empires-ii.json +++ b/packs/age-of-empires-ii.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "age-of-empires-ii", "name": "Age of Empires II", + "igdbId": 55056, "engine": "manual-report", "aliases": [ "aoe2", diff --git a/packs/apex-legends.json b/packs/apex-legends.json index 4bff33e..9135de4 100644 --- a/packs/apex-legends.json +++ b/packs/apex-legends.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "apex-legends", "name": "Apex Legends", + "igdbId": 114795, "engine": "manual-report", "version": "1.0.2", "description": "Three-a-side battle royale. Placement and kills each match.", diff --git a/packs/battlefield-6.json b/packs/battlefield-6.json index 4e82c97..64a6c85 100644 --- a/packs/battlefield-6.json +++ b/packs/battlefield-6.json @@ -2,13 +2,15 @@ "schema": 1, "slug": "battlefield-6", "name": "Battlefield 6", + "igdbId": 317407, "engine": "manual-report", "aliases": [ "bf6" ], - "version": "1.0.1", + "version": "1.0.2", "description": "Squad shooter, reported by the result of each map.", "icon": "../icons/battlefield-6.svg", + "appIcon": "../app-icons/battlefield-6.webp", "report": { "confirmation": "opponent", "confirmTimeoutMin": 60 diff --git a/packs/brawl-stars.json b/packs/brawl-stars.json index 221a3a4..6cedfcb 100644 --- a/packs/brawl-stars.json +++ b/packs/brawl-stars.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "brawl-stars", "name": "Brawl Stars", + "igdbId": 55945, "engine": "manual-report", "version": "1.0.2", "description": "Three-a-side mobile brawler, reported by the events played.", diff --git a/packs/chess.json b/packs/chess.json index ae7bcf0..6adeef5 100644 --- a/packs/chess.json +++ b/packs/chess.json @@ -3,9 +3,10 @@ "slug": "chess", "name": "Chess", "engine": "manual-report", - "version": "1.0.1", + "version": "1.0.2", "description": "One board, two players. A win is 1, a draw is a half each.", "icon": "../icons/chess.svg", + "appIcon": "../app-icons/chess.webp", "report": { "confirmation": "opponent", "confirmTimeoutMin": 60 diff --git a/packs/clash-royale.json b/packs/clash-royale.json index 46da02b..5747814 100644 --- a/packs/clash-royale.json +++ b/packs/clash-royale.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "clash-royale", "name": "Clash Royale", + "igdbId": 15707, "engine": "manual-report", "version": "1.0.2", "description": "One-on-one mobile card battler. Report games won in the set.", diff --git a/packs/deadlock.json b/packs/deadlock.json index 03cfb85..868fe8a 100644 --- a/packs/deadlock.json +++ b/packs/deadlock.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "deadlock", "name": "Deadlock", + "igdbId": 301298, "engine": "manual-report", "version": "1.0.2", "description": "Six-a-side hero shooter MOBA.", diff --git a/packs/dota-2.json b/packs/dota-2.json index f2f789b..ca88ea1 100644 --- a/packs/dota-2.json +++ b/packs/dota-2.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "dota-2", "name": "Dota 2", + "igdbId": 2963, "engine": "manual-report", "aliases": [ "dota" diff --git a/packs/ea-sports-fc-25.json b/packs/ea-sports-fc-25.json index c6e0acb..803edab 100644 --- a/packs/ea-sports-fc-25.json +++ b/packs/ea-sports-fc-25.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "ea-sports-fc-25", "name": "EA Sports FC", + "igdbId": 308698, "engine": "manual-report", "aliases": [ "fifa", diff --git a/packs/fortnite.json b/packs/fortnite.json index a630f60..fa78c89 100644 --- a/packs/fortnite.json +++ b/packs/fortnite.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "fortnite", "name": "Fortnite", + "igdbId": 1905, "engine": "manual-report", "version": "1.0.2", "description": "Battle royale. Report placement and eliminations each match.", diff --git a/packs/guilty-gear-strive.json b/packs/guilty-gear-strive.json index 3135eb7..12b1afe 100644 --- a/packs/guilty-gear-strive.json +++ b/packs/guilty-gear-strive.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "guilty-gear-strive", "name": "Guilty Gear -Strive-", + "igdbId": 125764, "engine": "manual-report", "aliases": [ "ggst" diff --git a/packs/halo-infinite.json b/packs/halo-infinite.json index efd6cdf..222633c 100644 --- a/packs/halo-infinite.json +++ b/packs/halo-infinite.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "halo-infinite", "name": "Halo Infinite", + "igdbId": 103281, "engine": "manual-report", "version": "1.0.2", "description": "Four-a-side arena shooter, reported by the maps played.", diff --git a/packs/hearthstone.json b/packs/hearthstone.json index af9dc5e..a8d7945 100644 --- a/packs/hearthstone.json +++ b/packs/hearthstone.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "hearthstone", "name": "Hearthstone", + "igdbId": 1279, "engine": "manual-report", "version": "1.0.2", "description": "One-on-one digital card game. Report games won in the set.", diff --git a/packs/league-of-legends.json b/packs/league-of-legends.json index 28cfb17..12e66e9 100644 --- a/packs/league-of-legends.json +++ b/packs/league-of-legends.json @@ -2,13 +2,15 @@ "schema": 1, "slug": "league-of-legends", "name": "League of Legends", + "igdbId": 115, "engine": "manual-report", "aliases": [ "lol" ], - "version": "1.0.1", + "version": "1.0.2", "description": "Five-a-side MOBA. One map per game.", "icon": "../icons/league-of-legends.svg", + "appIcon": "../app-icons/league-of-legends.webp", "report": { "confirmation": "opponent", "confirmTimeoutMin": 60 diff --git a/packs/mario-kart-8-deluxe.json b/packs/mario-kart-8-deluxe.json index 418b3b4..a4ea82a 100644 --- a/packs/mario-kart-8-deluxe.json +++ b/packs/mario-kart-8-deluxe.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "mario-kart-8-deluxe", "name": "Mario Kart 8 Deluxe", + "igdbId": 26764, "engine": "manual-report", "aliases": [ "mk8dx", diff --git a/packs/marvel-rivals.json b/packs/marvel-rivals.json index ade8e7c..51b1370 100644 --- a/packs/marvel-rivals.json +++ b/packs/marvel-rivals.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "marvel-rivals", "name": "Marvel Rivals", + "igdbId": 294041, "engine": "manual-report", "version": "1.0.2", "description": "Six-a-side hero shooter, reported by the maps played.", diff --git a/packs/minecraft.json b/packs/minecraft.json index 9998e09..5cfe73e 100644 --- a/packs/minecraft.json +++ b/packs/minecraft.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "minecraft", "name": "Minecraft", + "igdbId": 135400, "engine": "manual-report", "aliases": [ "mc" diff --git a/packs/mobile-legends-bang-bang.json b/packs/mobile-legends-bang-bang.json index 8ca0992..dbc55e5 100644 --- a/packs/mobile-legends-bang-bang.json +++ b/packs/mobile-legends-bang-bang.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "mobile-legends-bang-bang", "name": "Mobile Legends: Bang Bang", + "igdbId": 79392, "engine": "manual-report", "aliases": [ "mlbb" diff --git a/packs/mortal-kombat-1.json b/packs/mortal-kombat-1.json index a919b47..0335bd0 100644 --- a/packs/mortal-kombat-1.json +++ b/packs/mortal-kombat-1.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "mortal-kombat-1", "name": "Mortal Kombat 1", + "igdbId": 272491, "engine": "manual-report", "aliases": [ "mk1" diff --git a/packs/osu.json b/packs/osu.json index ee682f6..3c3de22 100644 --- a/packs/osu.json +++ b/packs/osu.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "osu", "name": "osu!", + "igdbId": 3012, "engine": "manual-report", "version": "1.0.2", "description": "Rhythm game. Report maps won.", diff --git a/packs/overwatch-2.json b/packs/overwatch-2.json index 23ef265..7df625c 100644 --- a/packs/overwatch-2.json +++ b/packs/overwatch-2.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "overwatch-2", "name": "Overwatch 2", + "igdbId": 125174, "engine": "manual-report", "aliases": [ "ow", diff --git a/packs/pubg-battlegrounds.json b/packs/pubg-battlegrounds.json index be79cfa..1369649 100644 --- a/packs/pubg-battlegrounds.json +++ b/packs/pubg-battlegrounds.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "pubg-battlegrounds", "name": "PUBG: Battlegrounds", + "igdbId": 27789, "engine": "manual-report", "aliases": [ "pubg" diff --git a/packs/rainbow-six-siege.json b/packs/rainbow-six-siege.json index dfba85c..95b9212 100644 --- a/packs/rainbow-six-siege.json +++ b/packs/rainbow-six-siege.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "rainbow-six-siege", "name": "Rainbow Six Siege", + "igdbId": 7360, "engine": "manual-report", "aliases": [ "r6", diff --git a/packs/rocket-league.json b/packs/rocket-league.json index 0757e2d..dd00d5a 100644 --- a/packs/rocket-league.json +++ b/packs/rocket-league.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "rocket-league", "name": "Rocket League", + "igdbId": 11198, "engine": "manual-report", "aliases": [ "rl" diff --git a/packs/splatoon-3.json b/packs/splatoon-3.json index 2930849..087e4c1 100644 --- a/packs/splatoon-3.json +++ b/packs/splatoon-3.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "splatoon-3", "name": "Splatoon 3", + "igdbId": 143613, "engine": "manual-report", "version": "1.0.2", "description": "Four-a-side team shooter, reported by the maps played.", diff --git a/packs/starcraft-ii.json b/packs/starcraft-ii.json index 9de6beb..08f633f 100644 --- a/packs/starcraft-ii.json +++ b/packs/starcraft-ii.json @@ -2,13 +2,15 @@ "schema": 1, "slug": "starcraft-ii", "name": "StarCraft II", + "igdbId": 239, "engine": "manual-report", "aliases": [ "sc2" ], - "version": "1.0.1", + "version": "1.0.2", "description": "One-on-one real-time strategy. Report games won in the set.", "icon": "../icons/starcraft-ii.svg", + "appIcon": "../app-icons/starcraft-ii.webp", "report": { "confirmation": "opponent", "confirmTimeoutMin": 60 diff --git a/packs/street-fighter-6.json b/packs/street-fighter-6.json index 89679e3..cd8a4db 100644 --- a/packs/street-fighter-6.json +++ b/packs/street-fighter-6.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "street-fighter-6", "name": "Street Fighter 6", + "igdbId": 191692, "engine": "manual-report", "aliases": [ "sf6" diff --git a/packs/super-smash-bros-ultimate.json b/packs/super-smash-bros-ultimate.json index 6282f4a..4996175 100644 --- a/packs/super-smash-bros-ultimate.json +++ b/packs/super-smash-bros-ultimate.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "super-smash-bros-ultimate", "name": "Super Smash Bros. Ultimate", + "igdbId": 90101, "engine": "manual-report", "aliases": [ "smash", diff --git a/packs/team-fortress-2.json b/packs/team-fortress-2.json index 27a6b61..bdbaf1d 100644 --- a/packs/team-fortress-2.json +++ b/packs/team-fortress-2.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "team-fortress-2", "name": "Team Fortress 2", + "igdbId": 891, "engine": "manual-report", "aliases": [ "tf2" diff --git a/packs/teamfight-tactics.json b/packs/teamfight-tactics.json index 9c75ee0..1c37253 100644 --- a/packs/teamfight-tactics.json +++ b/packs/teamfight-tactics.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "teamfight-tactics", "name": "Teamfight Tactics", + "igdbId": 120176, "engine": "manual-report", "aliases": [ "tft" diff --git a/packs/tekken-8.json b/packs/tekken-8.json index d4325ef..f38bf2b 100644 --- a/packs/tekken-8.json +++ b/packs/tekken-8.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "tekken-8", "name": "Tekken 8", + "igdbId": 217590, "engine": "manual-report", "version": "1.0.2", "description": "Fighting game. Report games won in the set.", diff --git a/packs/trackmania.json b/packs/trackmania.json index 973fb77..7263c00 100644 --- a/packs/trackmania.json +++ b/packs/trackmania.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "trackmania", "name": "Trackmania", + "igdbId": 133807, "engine": "manual-report", "aliases": [ "tm" diff --git a/packs/valorant.json b/packs/valorant.json index 7dc86e3..d36b1ec 100644 --- a/packs/valorant.json +++ b/packs/valorant.json @@ -2,6 +2,7 @@ "schema": 1, "slug": "valorant", "name": "Valorant", + "igdbId": 126459, "engine": "manual-report", "version": "1.0.2", "description": "Five-a-side tactical shooter, reported by rounds won.",