feat(art): troca os 18 icones de tipo pela v2, e a paleta segue junto - #27
Merged
Conversation
Os icones novos chegaram como SVG, um por tipo, com os mesmos nomes dos antigos. O disco continua original; o glifo dentro dele agora vem do Lucide, sob licenca ISC. Era a unica arte de terceiros do projeto e o README dizia o contrario em dois lugares -- corrigido, com o aviso de copyright junto. A paleta acompanhou. `palette.json` documenta que cada `base` e EXTRAIDO do disco do icone, justamente para moldura e icone nunca divergirem; os discos da v2 sao bem mais saturados (fire foi de #E4613E para #FF3B14), entao manter a paleta velha teria quebrado essa regra nos 18 tipos de uma vez. Reextraida do disco, com a mesma derivacao fixa de sempre (45% preto, 78% branco, 80% preto), e as molduras regeradas -- a carta inteira acompanha a troca por construcao, nao por disciplina. Uma armadilha achada no caminho: os SVGs da v2 vem em 64px, a v1 vinha em 256, e o `emit` rasterizava no tamanho que estivesse no arquivo. O PNG de energia teria encolhido 4x sem ninguem notar ate olhar a carta de perto. O lado agora e fixado em ENERGY_PX na chamada, entao a proxima revisao de arte pode chegar em qualquer tamanho. As duas imagens do README foram regeradas dos assets novos: a fita dos 18 tipos e a escada de raridade, que mostra moldura e por isso tambem mudou de cor.
Preview: https://gitmon-cards-kp6809xex-mcsscalabrin-8230s-projects.vercel.app
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed, and why
Second pass on the 18 type icons. They arrived as SVGs with the same filenames, so
scripts/assets/types/— the build input, the only hand-authored art in the project — was swappedin place and
npm run assetsdid the rest.Two things the diff cannot show.
The palette had to follow.
palette.jsondocuments that eachbaseis extracted from theicon's coloured disc, and the reason is stated in the file itself: so the frame and the icon can
never diverge, by construction rather than by discipline. The v2 discs are much more saturated —
firewent from#E4613Eto#FF3B14,grassfrom#439837to#14C445. Keeping the oldpalette would have broken that rule in all 18 types at once and shipped a bright icon sitting on a
muted frame. So the palette was re-extracted from the new discs with the same fixed derivation as
always (45% black, 78% white, 80% black), and the frames regenerated. The card follows the icons
because the rule says it must, and that is the whole point of the rule.
A trap in the build. The v2 SVGs declare
width/viewBoxof 64; v1 declared 256.emit()rasterised at whatever size the file happened to carry, so
public/assets/energy/*.pngwould havesilently dropped from 256px to 64px — a 4× resolution loss inside the card, invisible until you
looked at a pip up close. The side is now pinned at
ENERGY_PXon the call, so the next artrevision can arrive at any size without moving the output.
Provenance correction. The glyph inside each disc comes from Lucide under
the ISC licence —
fireis Lucide'sflamepath verbatim. The disc itself (flat colour, radialhighlight, vertical shade, 22% white rim) is still original. The README claimed in two places that
all type and energy art was original, and CONTRIBUTING said the same; all three are corrected and
the Lucide copyright notice is now in the Copyright section. This is the only third-party art in
the project.
docs/assets-brief.mdgets a "Revisão v2" section recording the provenance and both consequencesabove, and
docs/design-system.mdgets the new hex list.What you saw
The rarity ladder is regenerated from the new assets and is in the diff —
.github/assets/rarity-ladder.png:The type strip in the README, also regenerated at the same 1390×64 geometry as before:
What I checked on the cards: the energy pips beside each attack, the weakness/resistance/retreat
row, and the type badge all pick up the new glyphs at the right size; the frame red now agrees with
the disc red instead of sitting a shade behind it; the gold and silver metals still read as metal
against the more saturated face. Rendered
rare,special_illustration_rareandultra_rarebecause those are the three the ladder shows and the two ends of the foil range.
One deploy note, not a defect:
CARD_VERSIONkeys the cached card data, not the rendered PNG,so the new art applies as soon as this is live. The browser's
max-age=3600on the image route iswhat will keep an old PNG on screen for up to an hour — reload with
?bust=<now>before suspectingthe build.
Checks
npm run lintnpm run typechecknpm test— 161/161CARD_VERSIONinlib/cards/index.ts— n/a, art only, no change to the data formatptanden— n/a