Skip to content

Add medal source SVGs#432

Merged
peppy merged 6 commits into
ppy:masterfrom
Walavouchey:add-medal-svgs
Jun 17, 2026
Merged

Add medal source SVGs#432
peppy merged 6 commits into
ppy:masterfrom
Walavouchey:add-medal-svgs

Conversation

@Walavouchey

@Walavouchey Walavouchey commented Jun 15, 2026

Copy link
Copy Markdown
Member

352 designs and 9 "base plates". i'm unsure if adding the generated image files is desired. if not, 8da8081 can be deleted

notes

all svgs here are scaled to a height of 420 px (just per how they've been in our latest figma docs)

some metrics for the medal base image

while the client images need to have no padding at the sides due to lazer rendering a solid rim below the medal, the actual resolutions are rather random for whatever reason. i've kept them basically as they were in the original shell script though

most designs had .ai or .svg originals, but a few were lost to time, so they were either reconstructed from components or or traced by hand:

  • all spotlights medals
  • some project loved medals
  • most mappersguild medals
  • all-packs-muzz
  • all-packs-chill
  • all-packs-maduk
  • all-packs-vocaloid
  • all-packs-touhou
  • all-secret-uponthewind
  • all-secret-astronomic

previews

here's a gallery of all generated pngs:

client 2x images client 2x
web 2x images web 2x

comparisons with current images

here are the image differences (i.e. pairwise subtractions of current and generated images). the more non-black diffs reveal some inconsistencies that have been ironed out while refactoring the vectors, like icon positioning/centering or inconsistencies between 1x and 2x images

apart from resolution inconsistencies, some were even stretched oddly, but this isn't visible in the diffs due to how they were generated

client 2x diffs from current client-2x-diff
web 2x diffs from current web 2x diff
script used to generate diffs
#!/usr/bin/env bash

# provide original-client and original-web folders to diff against

mkdir -p diff-client diff-web

for file in original-client/*.png; do
    basename=$(basename "$file")
    stem=${basename%.*}
    file2="client/$stem.png"
    dimensions=$(ffprobe -v error -select_streams v -show_entries stream=width,height -of 'csv=p=0:s=\:' "$file2")

    ffmpeg -y -v error -i "$file" -i "$file2" -filter_complex "[0:0]scale=${dimensions}[a];[a][1:0]blend=difference:difference:difference:normal" "diff-client/$stem.png"
done

for file in original-web/*.png; do
    basename=$(basename "$file")
    stem=${basename%.*}
    file2="web/$stem.png"
    dimensions=$(ffprobe -v error -select_streams v -show_entries stream=width,height -of 'csv=p=0:s=\:' "$file2")

    ffmpeg -y -v error -i "$file" -i "$file2" -filter_complex "[0:0]scale=${dimensions}[a];[a][1:0]blend=difference:difference:difference:normal" "diff-web/$stem.png"
done

@peppy

peppy commented Jun 15, 2026

Copy link
Copy Markdown
Member

I don't think you want them in the folder you put them in. They will be bundled with the game dll for no reason, increasing the size considerably.

@Walavouchey

Walavouchey commented Jun 15, 2026

Copy link
Copy Markdown
Member Author

where would you suggest they go? top-level folder?

@peppy

peppy commented Jun 16, 2026

Copy link
Copy Markdown
Member

I think a top level folder assets with a subfolder for medal specific stuff (in line with https://github.com/ppy/osu/tree/master/assets)

@Walavouchey
Walavouchey force-pushed the add-medal-svgs branch 2 times, most recently from ff566e4 to 8da8081 Compare June 16, 2026 17:23
@peppy
peppy self-requested a review June 17, 2026 09:47
@peppy

peppy commented Jun 17, 2026

Copy link
Copy Markdown
Member

Doesn't work for me:

Finder 2026-06-17 at 10 10 56

@Walavouchey

Walavouchey commented Jun 17, 2026

Copy link
Copy Markdown
Member Author

please ensure your imagemagick version is correct (as mentioned in the script)... i've encountered roughly the same issue on a windows build, but idk what the cause is

my `magick --version` output
Version: ImageMagick 7.1.2-23 Q16-HDRI x86_64 6c51b2de5:20260516 https://imagemagick.org
Copyright: (C) 1999 ImageMagick Studio LLC
License: https://imagemagick.org/license/
Features: Cipher DPC HDRI OpenMP(4.5)
Delegates (built-in): bzlib cairo djvu fftw fontconfig freetype heic jng jp2 jpeg jxl lcms lqr openexr pangocairo png raqm raw rsvg tiff uhdr webp x xml zlib zstd
Compiler: gcc (15.2)

edit: i can reproduce on a mac with the latest brew imagemagick version, but the imagemagick-full version on brew worked fine

@peppy

peppy commented Jun 17, 2026

Copy link
Copy Markdown
Member

I read that and did confirm my version:

❯ magick --version
Version: ImageMagick 7.1.2-18 Q16-HDRI aarch64 23822 https://imagemagick.org

@peppy
peppy merged commit 66d133c into ppy:master Jun 17, 2026
2 checks passed
@Walavouchey
Walavouchey deleted the add-medal-svgs branch June 17, 2026 20:15
@Walavouchey
Walavouchey restored the add-medal-svgs branch June 17, 2026 22:09
@Walavouchey
Walavouchey deleted the add-medal-svgs branch June 17, 2026 22:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants