Audamir

časť 34

Prilba, ktorá rastie: ikona hry z jedného zdroja a 21 podôb podľa reputácie v Asgarde

Ikona Audamiru je vikingská prilba pred doskou, pol štvorcová a pol šesťuholníková. Jeden nástroj ju kreslí vo všetkých podobách: 21 podôb po piatich bodoch reputácie, šesť titulov, pevná ikona aplikácie a cena asi 32 KB.

· 6 min čítania

Dňa 1. novembra 2026 dostala hra Audamir (do 31. októbra Auda Wars) ikonu: vikingskú prilbu pred hracou doskou, ktorej polovica je štvorcová mriežka a polovica šesťuholníková. Ikonu kreslí nástroj tools/icon-audamir.js z jednej geometrie. Prilba v hlavičke domovskej obrazovky rastie s reputáciou v Asgarde: nová podoba je každých 5 bodov až do 100, spolu 21 podôb. Ikona aplikácie, teda karta prehliadača a inštalácia, ostáva pevná.

Pri písaní sa zistilo, že šesť výkresov z pôvodného návrhu sa nezmenilo ani o bajt, a že pri prilbách v stránke číha pasca s <use>. Tituly na výber a prívlastky za menom ešte nie sú postavené.

Ikona hry v štyroch režimoch, v skutočnej veľkostiIkona hry, podoba 7 (Šampión), v skutočnej veľkosti: plná dlaždica s doskou (tu 170 px), malá verzia pre 32 a 16 px, obrys v jednej farbe a maskovateľná verzia pre ikony po okraj.Plná dlaždicaMalá: 32 a 16 pxObrys, jedna farbaMaskovateľná
Ikona hry na 1. novembra 2026 v štyroch režimoch, v skutočnej veľkosti

Zadanie

Hra mala mať vlastnú ikonu v SVG: vikingskú prilbu na doske, ktorá rastie s reputáciou (bod 3 z dvanástich bodov, docs/HOME-FINAL.md, 31. 10. 2026). Návrh mal šesť podôb, prahy 5, 15, 30, 50 a 80 na súčte úrovní cárstiev (D3), rohy od štvrtej podoby (D4) a pevnú ikonu aplikácie (D5).

Prvého novembra sa schválilo všetkých trinásť odporúčaní (D1 až D13). K prvému bodu pribudla veta, ktorá zmenila plán: „Chcem ikonu každý piaty level, takže ich treba vyrobiť viac, a toto je veľmi dobre urobený skript.“ Skript z makety (docs/mockups/audamir-icon/make.js) tým prestal byť jednorazový.

Jeden nástroj a štyri režimy

Nástroj má 626 riadkov a žiadnu závislosť. Kresba je v ňom raz: doska, prilba a tabuľka LADDER, ktorá o každej podobe hovorí, čo pridáva k predchádzajúcej. Meno hry berie z js/data/meta.js, počet podôb a body z js/data/hero-forms.js. Hráča ani jeho profil nepozná.

Režimy sú štyri: full (dlaždica s doskou), small (pre 16 až 32 px: bez mriežky, hrubý obrys), mono (obrys v jednej farbe, na tlač) a maskable (farba až po okraj, prilba v strednej 80 %). Číslo, ktoré nie je podobou, je chyba: checkForm vyhodí RangeError a príkaz skončí s kódom 1 skôr, než čokoľvek zapíše.

PNG kreslí prehliadač. ImageMagick na tomto stroji ignoruje orezávacie cesty aj CSS premenné, takže nástroj otvorí stránku, ktorá nakreslí plochú kópiu každej ikony do plátna a PNG pošle späť. PNG sú v repozitári, takže zostavenie ani testy prehliadač nepotrebujú.

Ikona aplikácie je pevná: podoba 7

Rozhodnutie D5 určuje ikonu aplikácie ako pevnú: podoba 7 z 21, Šampión (reputácia 30). Pôvodne to bola podoba 4 zo šiestich. Súbory v karte prehliadača, v manifeste a na dotykovej ploche nemajú profil, z ktorého by čítali podobu. Hlavička a obrazovka Tvoj hrdina ukazujú hráčovu podobu; editor voľnej hry ostáva pri Šampiónovi.

Manifest má dva účely ako dva súbory: pôvodný zápis "any maskable" ukazoval na jedno SVG, kým Chrome pýta PNG 192 a 512 px. Pri písaní sa desať súborov z icons/ porovnalo so stavom po kroku H1 podľa SHA-256 a všetky sú rovnaké. Tri SVG majú v <desc> starý text „Form 4 of 6“, lebo ich generátor drží ako konštantu (DESIGN §118.2).

21 podôb a šesť titulov

Reputácia v Asgarde je súčet úrovní cárstiev, v ktorých hráč hral. Nikde sa neukladá; nič neplatí a nič neodomyká. Podoba je floor(body / 5) + 1, najviac 21. Pri písaní sa vyskúšali hranice: 0 až 4 dávajú podobu 1, 5 podobu 2, 32 podobu 7, 99 podobu 20, 100 a 120 podobu 21; záporné číslo, text, NaN a null podobu 1.

Podoby prilby z 1. novembra 2026: zlaté okovanieStav z 1. novembra 2026, pred drahokamami zo 6. novembra: posledná prilba, podoba 21, je zlatá a okovanie podôb 8 až 14 (pás, hrot, nánosník, nity, rohy, lícnice, kupola) je zlaté; každá podoba pridá trochu zlata. Rámik je ikona hry (podoba 7); bodky označujú šesť kresieb z prvého návrhu.od 0Tulákod 5Nájazdníkod 10od 15Bojovníkdružinyod 20od 25od 30Šampiónod 35od 40od 45od 50Jarlod 55od 60od 65od 70od 75od 80HrdinaAsgarduod 85od 90od 95od 100ikona hry (podoba 7)kresba z prvého návrhu (1, 2, 4, 7, 11, 17)
Podoby prilby z 1. novembra 2026: posledná prilba je zlatá a okovanie je zlaté, takto to bolo do 6. novembra

Každá podoba je predchádzajúca s jedným detailom navyše a pridáva trochu zlata. Šesť titulov začína pri prvej podobe svojho prahu:

TitulOd boduČo pridáva prvá podoba
Tulák0železná čiapka na čelovom pásiku
Nájazdník5nánosník a lícnice
Bojovník družiny15rebrá a nity
Šampión30plné rohy: ikona hry
Jarl50rohy so zlatými hrotmi
Hrdina Asgardu80tri iskry

Od 6. novembra zlaté okovanie nahradili drahokamy a farba stupňa reputácie; to je v článku o reputácii nad 100 (pripravovaný článok č. 57). Obrázok ukazuje stav z 1. novembra, keď bola posledná prilba ešte zlatá.

Titul sa neskladá lepením, ale textom core.hero.titled_name ({title} {name}), takže poradie určuje jazyk: „Šampión Auda“. Titul podoby je v slovenčine, češtine, srbčine a ruštine mužský bez ohľadu na pohlavie hráča (DESIGN §120.5); riešiť sa to dá pri výbere titulov, ktorý ešte nestojí. Každý prah je prvým bodom nejakej podoby, takže jedna podoba nikdy neukazuje dva tituly.

Pod sloganom je čip „Reputácia v Asgarde“ s číslom. Ukazuje len číslo, nie úrovne cárstiev (odpoveď z 1. 11. 2026, bod 2); úrovne sú na paneloch cárstiev. Jadro hry nepozná mená cárstiev, meno pridá reputationFace() v app.js podľa manifestu.

Prečo strop 100

Úroveň n sa začína pri 25 × n² XP, napríklad level 30 pri 22 500 XP. Pri 300 XP za hodinu víťaznej hry (model z R3-REALM-ECONOMY §1.9) vychádza súčet R na R²/12 hodiny v jednom cárstve a R²/24 v dvoch rovnako hraných. Prahy 5, 15, 30, 50 a 80 sú z návrhu (D3); posledná podoba pri 100 bodoch je z rovnakého vzorca. Je to model, nie meranie ľudí. Podľa dokumentu Kolónia proti silnej AI platí asi 590 XP za hodinu, takže reputácia hráča Rokgardu rastie rýchlejšie.

Hodiny hry do prahu: v jednom cárstve a v dvoch rovnako hranýchHodiny hry, za ktoré sa dosiahne 5, 30, 50, 80 a 100 bodov reputácie: v jednom cárstve 2, 75, 208, 533 a 833 hodín; v dvoch rovnako hraných 1, 38, 104, 267 a 417 hodín. Model počíta 300 skúseností za hodinu.5 bodov, Nájazdník2 h1 h30 bodov, Šampión75 h38 h50 bodov, Jarl208 h104 h80 bodov, Hrdina Asgardu533 h267 h100 bodov, posledná podoba833 h417 hv jednom cárstvev dvoch rovnako hraných cárstvach
Hodiny hry do prahu: model, nie meranie ľudí

Hlavička, bajty a pasca <use>

Hlavička nesie list 21 prileb (<svg class="ad-sprites">) a ikona je doska plus <use href="#adf7">. Zmena podoby sú dva atribúty, data-form a href, ktoré zapíše Hub.paintReputation. Vďaka tomu index.html narástol o 31 946 B (asi 32 KB; po gzip 1,1 KB). Keby mala každá podoba celú ikonu s doskou, bolo by to 169 KB.

Pasca: <use> nakreslí klon prvku a selektor .ad-icon .s1 musí nájsť svojho predka v klone. Preto má každá prilba v liste a doska triedu ad-icon sama (DESIGN §118.3). Bez tejto opravy vyšiel list čierny.

Čo z toho plynie

  • Nástroj, ktorý kreslí, je lacnejší než jeho výstupy: zmena vkusu je jedna úprava v LADDER a dva príkazy (--page, --sheet).
  • „Rovnaké bajt po bajte“ treba dokázať odtlačkami starej kresby, nie dojmom: 24 z 24 odtlačkov sedí.

Čo sa nepodarilo overiť

  • Tituly na výber a prívlastky za menom (H8) nie sú postavené; v kóde nie je pole pre prívlastok hrdinu.
  • Vkus väčšiny podôb nie je schválený. Šesť podôb pochádza z návrhu, zvyšných pätnásť nakreslil krok H2. DESIGN §118.2 hovorí, že ak vkus nesedí, je to jeden commit.
  • Čitateľnosť sa nemerala na ľuďoch. Či sa susedné podoby dajú pri 24 px rozoznať, nikto neposudzoval.
  • Ikona v karte prehliadača, inštalácia na telefóne, dotyková ikona na iOS a offline service worker zatiaľ neboli overené.

Zdroje

docs/HOME-FINAL.md (bod 3, D1 až D13 a odpovede z 1. 11. 2026), docs/DESIGN.md §117 až §120, docs/R3-REALM-ECONOMY.md §1.9. Kód je v repozitári hry (tools/icon-audamir.js, js/data/hero-forms.js, verzia 0.81.2, overené 1. 11. 2026).

Súvisiace články: Z Hero Dice na Avatar (pripravovaný článok č. 38), Presun, ktorý nesmie nič zmeniť, Z jednej hry viac hier, Ako sa hra volá.