Multifaceted Choice: Facets update devlog

Resources Hub

So, here's the story. I wanted to make a small resource hub that would have all the dota related resources, including player photos, hero renderers, hero portraits, leeague logos, team logos, etc

I needed for my other projects and adding this stuff would make things easier for me. So I made one.

It's technically not a CDN, but it's kind of similar in its base idea. And it also goes through Cloudflare and gets cached by it.

General rules

  • All images can be requested as .png and .jpg. You can specify format in the link, but you can also omit it, then .png is used by default. JPG images are using grey as a background.

  • There is one GET parameter — size. You can specify the size of an image you want to get. Possible values:

    • big — height equal to 1024px
    • medium — height equal to 758px
    • small — height equal to 512px
    • tiny — height equal to 256px
    • bigger — image size x2
    • biggest — image size x4
    • smaller — image size /2
    • smallest — image size /4
  • There are some cases when you can't use "big", "medium", "small" and "tiny" modifiers. In fact, there are only two cases when it actually works — artifact/full_art and dota/renderers

  • If you access a folder path, you will get a list of available images in the folder OR a list of available folders inside of that folter. Unless there's a special fallback image. Fallback image is enabled for player photos, leagues and teams

What is available?

Main path is https://courier.spectral.gg/images/

Everything else goes from there.

First of all, most of the stuff that is present across multiple games is united in the same category.

There are two main folders: dota and artifact. Dota folder includes dotaverse stuff reelated to heroes, as well as things for competitive dota. Artifact folder contains artifact specific icons and resources and art. I will not document Artifact folder contents for the sake of my own sanity.

But here's what you can find in dota/

  • alliances_underlords — alliancees icons from Dota Underlords, 128x128 pngs, file names are alliance names in loweercase

  • icons — hero icons, not resizable 32x32 pngs, includes arcana/persona icons, artifact heroes, as well as underlords (their icons are 40x40) and some neutral creeps and units; file names are hero tags in lowercase

  • items — items art, 88x64 px, file names are item tag names in lowercase

  • items_underlords — Dota Underlords items, 256x256 pngs, file names are item tag names in lowercase

  • leagues — Resources for dota 2 copetitive leagues, converted to a unified format, requested by league id; examples (using id 12245)

    • images/dota/leagues/12245_banner.png — general banner, 512x200 px
    • images/dota/leagues/12245_square.png — square banner, 512x512 px
    • images/dota/leagues/12245_ticket.png — ticket banner, 600x400 px
    • images/dota/leagues/12245.png — same as _banner
    • file type can be omitted as well
  • players — player photos (based on TI compendiums / player cards photos), requested using a player's steam id 3, 250x250 px, returns fallback image if the player's photo is missing

  • portraits — horizontal hero portraits, 128x72 px

    • includes underlords by their names
    • includes most of neutrals
    • includes artifact heroes custom portraits
    • includes practically all the same units you can find in icons, as well as all the arcana/persona icons
    • as well as some special ones: default, allied_coach, enemy_coach, creep_radiant, creep_dire, tower_dire, tower_radiant
  • portraits_vert — vertical portraits, 142x188 px

    • underlords custom portraits
    • artifact heroees custom portraits
    • some of neutrals, using Underlords dev portraits
    • persona portraits
    • PLANNED, BUT NOT THERE YET: Arcana portraits, all the missing neutrals
  • renderers — custom made dota 2 hero renderers with transparent background

    • There're no images at the moment, I'm still making the renderers myself
    • Every hero has three images: regular one (hero_tag.png), rare one (hero_tag_rare.png) and ultra rare one (hero_tag_ultrarare.png)
  • spellicons — dota 2 skills icons, as well as underlords skill icons

    • All the default skills can be found using the original ability tag name
    • There are also custom ability icons from cosmetic sets, arcanas and immortals (and whatever). All the names are taken directly from the game files and there's no consistency for it. Use the file list and search it using the ability tag if you need something
    • Most of the images are 128x128 px, but some of them are smaller (mostly dev icons)
    • You can even find some older ability icons and even stuff from events
    • Did I mention Underlords skills?
    • Artifact skills are not included here
  • teams — team's logo, 250x150 px, requested by the team's ID; if the team has no logo or it can't be fetched, the default one is returned

    • If the team is using a square image for the logo, it will be resized to 250x150 anyway. Don't use square logos.

      Well actually kind of use square logos. Aside from regular teams/%teamid% you can also request teams/square_%teamid%. Square logos are generated automatically based on team's logo provided by Valve CDN. If the logo's image is square, then it will be used. Otherwise it will be cropped to the content, then resized. Content detection is based on common background color on the edges, it's also used to fill empty space of the generated square logos. Square logos are 250x250 px. Some of square logos are managed manually (replaced with a better image by me).

    • There are a total of 7 default team logos you can use:

      • default.png — fallback image
      • dire.png and radiant.png — default factions logos
      • dire_alt.png and radiant_alt.png — alternative factions icons, used on TI showmatches
      • dire_logo.png and radiant_logo.png — alternative factions logos, using their actual in-game logos
  • underlords_yos — Dota Underlords Yos, 256x256 pngs, starting with season 1 (and three from proto pass)

  • sprays — Dota Underlords and Dota 2 Sprays, 512x512 pngs