A series is a folder under input/characters. The folder name is the name players see, with hyphens turned into spaces. demon-slayer displays as Demon Slayer.
Add a whole series
From the repository root:
npm run portraits -- my-hero-academia
npm run portraits:install
npm run init
portraits looks the show up on AniList and saves one headshot per main and supporting character under input/portraits. portraits:install copies those into input/characters/<series>/<character>/base.png with a character.json. npm run init loads that folder into the database. Restart the bot after that.
Several series can be named in one portraits command:
npm run portraits -- blue-lock servamp one-piece naruto
What the scripts will and will not do
- The folder slug is the search.
dragon-ball-zworks.dbzdoes not, because it is searched as the word “Dbz”. - A title has to match AniList’s English or romaji name after the slug is spaced out.
my-dress-up-darlingneeds a search override inscripts/fetch-portraits.tsbecause the real title still has a hyphen. - Each run stops at 100 characters, main and supporting only.
- Danganronpa resolves to the anime, not the visual novels. Yu-Gi-Oh is split across several shows, and the plain name does not match AniList’s title.
- Every installed
base.pngis an equal drop. Delete character folders you do not want beforenpm run init. - AniList art is a headshot. Replace
base.pngwhen you have a wider shot. Alternate arts are a second image you add by hand incharacter.json.