From f0918891e9b1292bd42f28ddc9de9d2951b88082 Mon Sep 17 00:00:00 2001 From: Dominic Seung Date: Mon, 14 Sep 2026 06:14:23 +0000 Subject: [PATCH 1/5] Add player counts and names to SMP archive Label each world with the number of unique players that ever joined, counted from stats/advancements/playerdata UUIDs in the world downloads. Hovering a count shows the player names, resolved via server whitelists and the Mojang API. --- src/pages/smp-archive.astro | 72 +++++++++++++++++++++++++++++-------- 1 file changed, 57 insertions(+), 15 deletions(-) diff --git a/src/pages/smp-archive.astro b/src/pages/smp-archive.astro index 45bb807..81be65c 100644 --- a/src/pages/smp-archive.astro +++ b/src/pages/smp-archive.astro @@ -24,7 +24,9 @@ const smps = [ version: "1.12.2", image: firstSMP, date: "2017-10-06", - size: "8.7 MB" + size: "8.7 MB", + players: 2, + playerNames: ["DSNS", "Max_AS"] }, { name: "Chromocraft Season 1", @@ -32,7 +34,9 @@ const smps = [ version: "1.12.2", image: chromocraftSeason1, date: "2017-10-18", - size: "20.5 MB" + size: "20.5 MB", + players: 3, + playerNames: ["DSNS", "Max_AS", "unknown (1280ef39…)"] }, { name: "Chromocraft Season 2", @@ -41,7 +45,9 @@ const smps = [ image: chromocraftSeason2, date: "2019-02-18", missing: true, - size: null + size: null, + players: null, + playerNames: [] }, { name: "Chromocraft Season 3", @@ -50,7 +56,9 @@ const smps = [ image: chromocraftSeason3, date: "2019-04-28", missing: false, - size: "2.9 GB" + size: "2.9 GB", + players: 58, + playerNames: ["300mittens", "666z", "_NikiV", "aka_Henri", "blakebishop", "Bombsquad", "captinsause", "Cavalry_Scout", "ChanPlague", "Chvorka", "Craytex", "da_kuben", "Daan_", "DannySwift", "DollyDearie", "DSNS", "FannyPack", "GarretCMK", "GrandiiTwo", "grouchypoo", "Hazerz", "iCummy", "iftw", "ItzAndrewPvp", "jiebi", "jocabXD", "JustOof", "knobiknallfrosch", "KWaB_", "LagMaster1000", "lilynp", "lyb_euh", "Matzgo", "Max_AS", "Mayday44", "MeIsJordon", "MischiefCarrot", "Mudbesj", "OGMASTERKUSH420", "OMG_Its_Danger", "Orbert__", "papanowuh", "pluse", "seanppage", "Shumil", "skabetty", "skurt37", "SleepyBears7", "spiritofsilver", "TheFishingMaster", "ThousandDegree", "timpictor", "vicariamente", "Villager314", "WearBlackAllDay", "wizrow", "x4element", "Yggdrasil__God"] }, { name: "Earth 1:4000 SMP", @@ -58,7 +66,9 @@ const smps = [ version: "1.16.1", image: earth14000Smp, date: "2020-08-06", - size: "855.9 MB" + size: "855.9 MB", + players: 7, + playerNames: ["CityBoyGuy", "DSNS", "idot7", "jiebi", "Max_AS", "Node13", "Retsed"] }, { name: "Chromocraft Season 4", @@ -66,7 +76,9 @@ const smps = [ version: "1.16.4", image: chromocraftSeason4, date: "2020-11-30", - size: "958.6 MB" + size: "958.6 MB", + players: 20, + playerNames: ["0rAnGe___", "_DArtagnan_", "aldrynn", "B0B643", "BadLxck", "Cardassia", "DSNS", "GoofBallBoi", "idot7", "jiebi", "Kaenoone", "LonelySouls", "Max_AS", "MunchieThePig", "Node13", "ploplo_", "Retsed", "saegu_", "x4element", "yumns"] }, { name: "CitySMP", @@ -74,7 +86,9 @@ const smps = [ version: "1.16.5", image: citySmp, date: "2021-01-14", - size: "1.0 GB" + size: "1.0 GB", + players: 32, + playerNames: ["AmKale", "Anthropical", "BadLxck", "buildersoup", "Challenger3511", "ChaseThePenguin", "DSNS", "eggvry", "Getbaldedd", "GoofBallBoi", "hero_brain_2008", "idot7", "jakeybakers", "jiebi", "jlne", "Kaweo", "koriodo", "LonelySouls", "Max_AS", "Mikaxla22", "Mqxw3ll", "Node13", "ploplo_", "Retsed", "saegu_", "Siddu911", "Storling", "theebayuser", "UsinIsAwesome", "v_oo", "Xd_Oink", "yumns"] }, { name: "1.17 SMP", @@ -82,7 +96,9 @@ const smps = [ version: "1.17", image: one17Smp, date: "2021-06-15", - size: "1.3 GB" + size: "1.3 GB", + players: 19, + playerNames: ["Anthropical", "BadLxck", "ChaseThePenguin", "DSNS", "Finchiee", "GoofBallBoi", "idot7", "ImSoBadOmg", "jiebi", "LonelySouls", "Matthews4813", "Max_AS", "Node13", "Retsed", "saegu_", "UrpyBurpy", "UsinIsAwesome", "Xd_Oink", "yumns"] }, { name: "1.18 Snapshot SMP (21w40a)", @@ -90,7 +106,9 @@ const smps = [ version: "21w40a", image: one18SnapshotSmp, date: "2021-10-10", - size: "370.4 MB" + size: "370.4 MB", + players: 9, + playerNames: ["Anthropical", "ChaseThePenguin", "daweedjam", "DSNS", "idot7", "jiebi", "Max_AS", "Node13", "Retsed"] }, { name: "mc.dsns.dev", @@ -99,7 +117,9 @@ const smps = [ version: "1.20-1.20.1", image: mcDsnsDevPart1, date: "2023-06-07", - size: "4.0 GB" + size: "4.0 GB", + players: 19, + playerNames: ["Agedfish", "Anthropical", "Armster15", "B0B643", "BadLxck", "ConservativeNews", "DSNS", "GoofBallBoi", "HockeyGamr", "jakeybakers", "jiebi", "jschlattstan", "LonelySouls", "matscan", "Max_AS", "Node13", "ploplo_", "Retsed", "saegu_"] }, { name: "mc.dsns.dev", @@ -108,7 +128,9 @@ const smps = [ version: "1.20.6-1.21", image: mcDsnsDevPart2, date: "2024-06-11", - size: "2.6 GB" + size: "2.6 GB", + players: 15, + playerNames: ["Anthropical", "Archer2305", "Armster15", "B0B643", "BadLxck", "ConservativeNews", "Dark_Rider_ii", "DSNS", "jakeybakers", "jiebi", "jschlattstan", "LonelySouls", "Max_AS", "ploplo_", "Retsed"] }, { name: "Delicious SMP", @@ -116,7 +138,9 @@ const smps = [ version: "1.21", image: deliciousSmp, date: "2025-04-08", - size: "994.2 MB" + size: "994.2 MB", + players: 4, + playerNames: ["DSNS", "jiebi", "Max_AS", "Retsed"] }, { name: "A New Beginning SMP", @@ -124,7 +148,9 @@ const smps = [ version: "1.21.10", image: aNewBeginningSmp, date: "2025-12-07", - size: "419.8 MB" + size: "419.8 MB", + players: 9, + playerNames: ["Anthropical", "DSNS", "GoofyGoober_27", "jiebi", "KarmaScout", "Max_AS", "ploplo_", "Retsed", "Timeclock_"] }, { name: "Max's SMP", @@ -132,7 +158,9 @@ const smps = [ version: "26.2", image: maxsmp, date: "2026-07-14", - size: "8.9 GB" + size: "8.9 GB", + players: 24, + playerNames: ["_BonkerMoose", "Anthropical", "badthew3", "chiefpegasus", "cyber_penguinn", "Darielicious", "daweedjam", "DSNS", "Eatsand614", "FakeDeveloper11", "HammerMan_", "jiebi", "kylerpoopoo", "LilTanbark", "LLamaTurtleFish", "magio0", "Max_AS", "N00byz", "NL4P", "OlivesInABox", "pigsteppy", "Retsed", "WHIT3D", "Wowza0618"] } ]; @@ -153,6 +181,9 @@ margins.push(0); Download the .zip and drag it into Prism Launcher to play.

+

+ Player counts are the number of unique players that ever joined, based on the world's stats, advancements, and playerdata. +

@@ -202,9 +233,20 @@ margins.push(0);

{smp.name}

{smp.subtitle && {smp.subtitle}} {smp.missing && No World Available} -
+
{smp.version && {smp.version}} {smp.size && {smp.size}} + {smp.players != null && ( + + {smp.players} {smp.players === 1 ? "player" : "players"} + {smp.playerNames.length > 0 && ( + + )} + + )}
{!smp.missing && ( From 54cb5109fb970d06c76c60567ea03815833aa7e1 Mon Sep 17 00:00:00 2001 From: Dominic Seung Date: Sun, 13 Sep 2026 23:40:36 -0700 Subject: [PATCH 2/5] Update smp-archive.astro --- src/pages/smp-archive.astro | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/smp-archive.astro b/src/pages/smp-archive.astro index 81be65c..fc58d7f 100644 --- a/src/pages/smp-archive.astro +++ b/src/pages/smp-archive.astro @@ -181,9 +181,6 @@ margins.push(0); Download the .zip and drag it into Prism Launcher to play.

-

- Player counts are the number of unique players that ever joined, based on the world's stats, advancements, and playerdata. -

From 2ce0e3bdf7ac406dfef8cc94b46483e8ca87a996 Mon Sep 17 00:00:00 2001 From: Dominic Seung Date: Sun, 13 Sep 2026 23:41:32 -0700 Subject: [PATCH 3/5] Remove duplicate size display in smp-archive --- src/pages/smp-archive.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/smp-archive.astro b/src/pages/smp-archive.astro index fc58d7f..594c260 100644 --- a/src/pages/smp-archive.astro +++ b/src/pages/smp-archive.astro @@ -232,7 +232,6 @@ margins.push(0); {smp.missing && No World Available}
{smp.version && {smp.version}} - {smp.size && {smp.size}} {smp.players != null && ( {smp.players} {smp.players === 1 ? "player" : "players"} @@ -244,6 +243,7 @@ margins.push(0); )} )} + {smp.size && {smp.size}}
{!smp.missing && ( From aa1d97d47c2006ec942da44836213980b018cce0 Mon Sep 17 00:00:00 2001 From: Dominic Seung Date: Sun, 8 Nov 2026 19:51:48 -0800 Subject: [PATCH 4/5] Fix player count tooltip being cut off - Remove overflow-hidden from card so tooltip can escape the card bounds - Widen tooltip to w-80 and anchor left to avoid viewport overflow on mobile - Render player names as wrapped chips instead of a comma-separated blob - Make tooltip scrollable (pointer-events auto) so long lists are reachable - Drop the duplicate native title tooltip - Add focus/touch support so the tooltip works on mobile and keyboard --- src/pages/smp-archive.astro | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/pages/smp-archive.astro b/src/pages/smp-archive.astro index 594c260..caaab72 100644 --- a/src/pages/smp-archive.astro +++ b/src/pages/smp-archive.astro @@ -206,9 +206,9 @@ margins.push(0); href={smp.url} target="_blank" rel="noopener noreferrer" - class="block overflow-hidden rounded-xl bg-viola-100 shadow-lg transition-all duration-300 hover:scale-[1.02] hover:shadow-xl" + class="block rounded-xl bg-viola-100 shadow-lg transition-all duration-300 hover:scale-[1.02] hover:shadow-xl" > -
+
{smp.image ? ( {smp.name} ) : ( @@ -233,12 +233,20 @@ margins.push(0);
{smp.version && {smp.version}} {smp.players != null && ( - + 0 ? 0 : undefined} + aria-label={smp.playerNames.length > 0 ? `Players: ${smp.playerNames.join(", ")}` : undefined} + > {smp.players} {smp.players === 1 ? "player" : "players"} {smp.playerNames.length > 0 && ( - From f29cbfb9c299f1ba2f2abccceeb84a521d1939c5 Mon Sep 17 00:00:00 2001 From: Dominic Seung Date: Mon, 9 Nov 2026 16:27:39 -0800 Subject: [PATCH 5/5] Replace hover tooltip with expandable player list in card MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Player names now live in a native
section at the bottom of each card: tap the row to show all players as wrapped chips — no hover precision needed, works on touch and keyboard, and no name is ever clipped or hidden behind a viewport edge - Count badge stays in the meta row for at-a-glance info - Whole card still links to the archive; the players section sits outside the link so toggling never navigates --- src/pages/smp-archive.astro | 49 ++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 28 deletions(-) diff --git a/src/pages/smp-archive.astro b/src/pages/smp-archive.astro index caaab72..8bb0764 100644 --- a/src/pages/smp-archive.astro +++ b/src/pages/smp-archive.astro @@ -202,15 +202,11 @@ margins.push(0);
- + );