Skip to content

Instantly share code, notes, and snippets.

@msikma
Created March 27, 2020 17:05
Show Gist options
  • Save msikma/bdb21732b5d189779bc15c1e643477da to your computer and use it in GitHub Desktop.
Save msikma/bdb21732b5d189779bc15c1e643477da to your computer and use it in GitHub Desktop.
Archive of the old PokéSprite FAQ section

Note: this page was archived from the following url: https://github.com/msikma/pokesprite/wiki/FAQ-and-other-notes. It was last edited Dec 11, 2016, and was deleted Mar 27, 2020.

Frequently Asked Questions

Q: Why put all these icons in one big image? Isn't it more efficient to keep them in separate files and then only use the ones you need?

When loading an HTML page, the main factor that determines how long it takes is the amount of connections that need to be opened. For each file you include (CSS files, Javascript files, image files—anything), a new connection has to be made to request that file. If the file itself is small, it won't take long to download, but the act of opening the connection and getting the green light to begin transmitting the file's data takes time as well.

For that reason, it's recommended to minimize the amount of files included on a webpage. In the case of images, we can do this by putting them together in one single image, and then having multiple elements refer to different parts of that same image. This way, instead of requesting tons and tons of different images, we only need to request one. Minimizing connections is overwhelmingly the largest factor in reducing load times for websites.

Aside from that, it's useful to have one central location for all these icons.

Q: There's not supposed to be a Fighting type HM in Generation VI. Why is there an icon of it?

A: Previous generations did have Rock Smash as an HM rather than a TM. But rather than use an old icon, I've custom made an icon in Generation VI style for consistency purposes, as all other icons are in that same style.

Q: Where did the shiny Pokémon box icons come from?

A: They were custom made. No Pokémon game has ever had official ones.

Q: Were the icons modified in any way?

A: All icons were, if necessary, padded to the Generation VII icon size of 32x32 (up from 30x30 for Gen VI, and 24x24 before that) for consistency purposes.

Q: What are those Pokémon silhouette icons in the full icon spritesheet?

A: This has been asked surprisingly many times. These are the "body style" icons used in the Pokédex, e.g. bipedal tailed, head with arms, quadruped, et cetera.

Q: Are the shiny Pokémon icons just palette swaps?

A: Most are, but some aren't. The goal was to make icons that have the same visual quality as the originals, except with shiny colors. Due to the way pixel art works, that meant pure recolors were sometimes impossible. For example, any Pokémon that has its colors changed from something dark to something bright usually needed extra shades of gray.

Occasionally, the design itself also necessitated changes to specific areas rather than simply all pixels with those colors. In short, a good deal of them, particularly in later generations, were more work than just palette swapping.

In any case, I've attempted to maintain the basic visual style.

Q: Why does this system use JS to make the images show up instead of CSS?

CSS wasn't efficient enough because of the huge amount of rules. IE9 in particular can't process more than 1024 rules per CSS file, and even in decent browsers it wasn't very efficient either. So now the CSS contains the most basic attributes and the sizes for each icon set. The coordinates of each icon are set through JS. The disadvantage is that this makes the system unusable for people who browse without JS enabled. However, these days that is a very tiny fraction. (And, although it'd be nice to support that fraction too, it just doesn't seem like there's a feasible way to do so.)

Changes since ORAS

ORAS saw a number of icon changes. The following changes were made:

Dex Name Form Type of change
#015 Beedrill Mega New form
#018 Pidgeot Mega New form
#025 Pikachu Cosplay, Beautiful, Clever, Cool, Cute, Tough New forms
#080 Slowbro Mega New form
#208 Steelix Modification
#208 Steelix Mega New form
#252 Treecko Modification
#254 Sceptile Mega New form
#256 Combusken Modification
#257 Blaziken Modification
#260 Swampert Mega New form
#272 Ludicolo Modification
#274 Nuzleaf Modification
#275 Shiftry Modification
#302 Sableye Modification
#302 Sableye Mega New form
#319 Sharpedo Mega New form
#323 Camerupt Mega New form
#334 Altaria Mega New form
#362 Glalie Mega New form
#373 Salamence Mega New form
#376 Metagross Modification
#376 Metagross Mega New form
#382 Kyogre Primal New form
#383 Groudon Primal New form
#384 Rayquaza Mega New form
#428 Lopunny Mega New form
#475 Gallade Modification
#475 Gallade Mega New form
#531 Audino Mega New form
#719 Diancie Modification
#719 Diancie Mega New form
#720 Hoopa Unbound New form

A number of other icons (rare items, medicine, etc) were changed as well.

Changes since SuMo

Frankly, I can't be bothered to write a complete update each time I add support for a new game. Suffice it to say that everything that's supposed to be there, is there. If not, please open an issue!

Notes

I've attempted to make the icon package complete and consistent. In the few cases where icons fit multiple categories, I've made duplicates. (Such as King's Rock, which can be found under icons/evo-item and icons/hold-item.)

Icons of unknown origin:

  • icons/key-item/lost-item-mimejr.png

Unofficial icons (see FAQ):

  • icons/hm/fighting.png

Debugging switches:

  • You can use the --pkmn-range=<a>-<b> switch to compile an image containing only Pokémon in a certain range. E.g. 1-3 for only 001, 002 and 003.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment