Výzva – herní rozlišení 5×5

 

Po delší době jsem dostal chuť se podělit o svoje myšlenky. Nechci dělat reklamu pro microbit, ale asi je poznat, že ho mám rád, dává mi správný poměr možností, volnosti a jednoduchosti realizace nápadů. Má to ale své ale!

Někde v komentářích pod zitronovo článkem jsem se zmiňoval o báječném mikropočítači pro začátečníky za pár korun – Microbit https://en.wikipedia.org/wiki/Micro_Bit. Na rozdíl od ostatních nápadů v komentářích článku -O- zmíněných má ale vlastní miniaturní interface, který se dá využít na zobrazení plovoucího textu a čísel, jednoduchého spritu, nebo ho při (větší) troše vůle použít jako monitor pro hry.

Microbit jde strčit do kapsy a použít (mimo jiné) jako kapesní minikonzolku. Program se jednoduše naprogramuje na PC, například v javě (makecode – takový GM pro microbit) nebo pythonu, a výsledný program se do něj nahraje přes usb kabel. Jednoduché, nekomplikované, přímo vyzývající k jednoduchým projektům.

Hračka má ale svá omezení a mezi největší patří rozlišení – „obrazovku“ tvořící pole červených led diod o rozměru 5×5. Proto se snad u každého projektu, který nemá zobrazení jinak (oled dispej, sériový port atd) řeší, jak věc, která na něm běží šikovně a pokud možno přehledně zobrazit. Po pár měsících hraní s microbitem už mám nakoukané:

plovoucí text u krátkých hodnot je dobré řešení, dlouhé řetězce jsou ale peklo

čísla (hodnoty) jdou zobrazovat i jinak než jako text, například plněním pole od levého horního rohu (25), nebo zaplňování sloupce – 0-9 (0-sloupec nesvítí, 4-svítí 4 diody, 9-svítí jen horní dioda – tím jde v jednom poli zobrazit číslo 99 999)

rozlišení bodu – pokud bod reprezentuje víc věcí, musí se nějak rozlišit, v úvahu připadá frekvence blikání a jas svícení (opatrně, na denním světle splývá)

velikost pole umožňuje jednoduché hříčky – minitetris, pong, kámen nůžky papír, river ride, lodě *

*multiplayer – jde jednoduše spojit 2 microbity pomocí signálu vestavěného bluetooth, zasílat se dají proměnné, pozice svítící diody nebo třeba text

jednu hru jde například rozdělit na herní pole na jedno microbitu a nějaké hodnoty ze hry na druhém

herní plocha může být samozřejmě daleko rozsáhlejší než 5×5, obrazovka pak sama může sloužit jen jako výřez – zkoušel jsem už nudli (posouvání zleva doprava) i dvourozměrnou plochu, omezení je jen „výhled hráče“ a paměť

Ještě dodám, pro ilustraci, ovládání jde realizovat třemi tlačítky (2+kombinace), naklápěním ve dvou směrech, třesením a pár dalšími gesty, nebo třeba využít jeden microbit jako herní konzoli a druhý jako bluetooth joystick

Jiné ovládání jde realizovat externím hardwarem, nebo kombinací vestavěných senzorů (například magnetometr (pokud by byla herní plocha orientovaná sever-jih, může hráč měnit směr změnou orientace v prostoru)

A o co mi vlastně jde? Jedna část aplikací, které občas tvořím nebo zkouším vymyslet do realizovatelné podoby v souladu se (zdánlivě) omezenými možnostmi, jsou samozřejmě hry, tedy spíš hříčky. Tahle kouzelná hračka umožňuje rychlou realizaci projektu, jen je potřeba to mít vymyšlené tak, aby se ve hře rychle vyznal alespoň tvůrce (víc asi nejde dost dobře čekat). Pokud tohle člověk přijme, jsem přesvědčený, že jdou vymyslet a vytvořit poměrně složité věci.

Aktuálně jsem strávil pár večerů nad jednoduchou strategií s domorodci (jsem tak monotématický x) zobrazené jako strom života, ve které hráč rozhodoval víceméně jen o pohlaví dětí a tím měnil poměr bojovníků a žen (na nich závisí stavy dalších generací). Ještě vymýšlím rozhraní úkolů, např. minimální populace donutí hráče brousit na hraně populačních stavů tak, aby se nevytvořila neřešitelná situace, nebo blížící se invaze vedlejšího kmene.

Pokud by měl někdo chuť se nad mým problémem zamyslet, budu rád. Je i jednoduchá možnost nápad zkusit zrealizovat bez nutnosti čehokoliv (grafické rozhraní), ale upozorňuji, způsobuje úpornou závislost x) https://makecode.microbit.org/