Přežij! – interaktivní kvízová hra s ESPWLED a adresovatelným LED páskem

Co vznikne, když spojíte ESP32-C3, adresovatelný LED pásek WS2812B a kvízovou hru s prvky akce? Projekt Přežij! – originální interaktivní hra, kde o vítězství rozhodují znalosti, rychlost a správná odpověď. Stačí LED pásek, naše řídící deska a tenhle kód.

image-3

Co vznikne, když spojíte ESP32-C3, adresovatelný LED pásek WS2812B a kvízovou hru s prvky akce? Projekt Přežij! – originální interaktivní hra, kde o vítězství rozhodují znalosti, rychlost a správná odpověď.

Projekt běží na platformě ESPWLED a je kompletně open-source. Díky webovému rozhraní nepotřebujete žádný displej ani tlačítka – stačí telefon, Wi-Fi a LED pásek.


O co ve hře jde?

Přežij! je kvízová hra, ve které hráč bojuje proti nepříteli pomocí správných odpovědí. Každá správná odpověď vystřelí zelenou střelu po LED pásku směrem k nepříteli. Ten ale nespí – každé 4 sekundy střílí zpět.

Tento interval jde změnit kódu
const unsigned long ENEMY_SHOT_INTERVAL = 4000UL; // 4s

👉 Kdo bude rychlejší?

LED pásek zde neplní jen dekorativní funkci, ale stává se herním polem, kde v reálném čase sledujete pohyb střel, kolize i exploze.


Jak se hra ovládá

Hra se ovládá přes webové rozhraní, které běží přímo na ESP32-C3.

Herní pravidla

  •  Správná odpověď
    → vystřelí hráčova střela (LED 0 → LED 119) 🟢
  •  Špatná odpověď
    → žádná střela
  • 💥 Kolize střel
    → exploze, zbývající střely pokračují
  • 🎉 Výhra
    → hráčova střela dosáhne pozici nepřítele (LED 119)
  • 💀 Prohra
    → nepřátelská střela dosáhne pozici hráče (LED 0)

Hráč má navíc 2× možnost „Ještě jednou“, tedy přeskočení otázky – ideální záchrana v krizové situaci.


Hardware – co budete potřebovat

Komponenta Odkaz
ESPWLED ESP32-C3 + LED driver
LED pásek WS2812B, 120 LED (2 m / 60 LED/m)
Napájení 5 V / min. 3 A (USB-C)

📌 LED pásek ve verzi 60 LED/m zkraťte na 2 metry.
📌 ESPWLED i LED pásek se napájí z jednoho USB-C adaptéru.

Zapojení

  • LED_DATA → DAT (GPIO5)
  • LED_GND → GND
  • LED_5V → PWR (5V)

Počet LED je v programu nastaven touto proměnou
define LED_COUNT 120


LED vizuály

Barvy mají jasný význam:

  • 🟢 Zelená – střela hráče
  • 🔴 Červená – střela nepřítele
  • 🔵 Modrá (tlumená) – herní pole

Animace běží v reálném čase s krokem 50 ms, takže hra působí svižně a přehledně i při více střelách současně.


Webové rozhraní a Wi-Fi

Po spuštění ESPWLED vytvoří Wi-Fi Access Point:

  • SSID: hraPrezijAP
  • Heslo: prezij1234
  • Adresa: http://192.168.4.1

Ve webovém rozhraní můžete:

  • nahrávat otázky
  • spustit hru
  • uložit Wi-Fi přihlašovací údaje

📡 Pokud uložíte přístup k domácí Wi-Fi, ESP32-C3 se k ní automaticky připojí a AP zůstane jako záloha.


Formát otázek

Otázky se nahrávají jako čistý text, každá na jeden řádek, se 7 poli oddělenými středníkem:

ID;Otázka;Odpověď1;Odpověď2;Odpověď3;Odpověď4;IndexSprávnéOdpovědi

Příklad

1;Kolik je 2+2?;3;4;5;6;2
2;Hlavní město Francie?;Paříž;Londýn;Berlín;Řím;1
  • max. 200 otázek
  • vše se ukládá do RAM
  • žádné čárky v odpovědích (oddělovač je „;" )

Generování otázek pomocí AI

Součástí projektu je i hotový prompt pro generování otázek pomocí AI. Stačí zadat téma (např. matematika, fyzika, EU, IT) a nechat si vygenerovat třeba 30 otázek přesně ve správném formátu.

To z projektu dělá skvělý nástroj pro:

  • školy
  • kroužky
  • vzdělávací akce
  • výstavy a makerspace

Prompt pro generování otázek a odpovědí

Jsi AI generátor kvízových otázek. Vytvoř prosím otázky ve formátu vhodném pro hru „Uteč!“ na ESP32-C3.
Otázky musí být zaměřeny na (zde zadejte téma otázek).
Např. Matematiku Základní školy pro první stupeň, Fyziku pro střední školu, Všeobecné znalosti o Evropské Unii a jiné
Každá otázka musí mít přesně 7 částí oddělených středníkem (;):

ID otázky;Otázka;Odpověď1;Odpověď2;Odpověď3;Odpověď4;Index Správné odpovědi (od 1 do 4)


Instalace krok za krokem

  1. Nainstalujte Arduino IDE s podporou ESP32-C3
  2. Nainstalujte knihovny:
    • Adafruit_NeoPixel
    • AsyncTCP
    • ESPAsyncWebServer
  3. V menu Tools nastavte:
    • USB CDC On Boot → Enabled
  4. Nahrajte hra_Prezij.ino do ESPWLED

Pokud nahrávání selže

  1. Připojte USB-C napájení
  2. Držte tlačítko FLASH
  3. Stiskněte a pusťte RESET
  4. Uvolněte FLASH
  5. Nahrajte program znovu

Proč si projekt vyzkoušet?

  • 🎮 originální herní koncept
  • 💡 výukový potenciál
  • 📱 ovládání přes mobil
  • 🌈 efektní LED animace
  • 🔓 open-source
  • 🇨🇿 český projekt

Projekt Přežij! krásně ukazuje, že ESP32 a LED pásek nejsou jen o efektech, ale mohou se stát plnohodnotnou herní platformou – 1D herním polem.


Další hry

Hra Přežij! není jediný náš herní projekt s 1D herním polem coby LED páskem.

Vytvořili jsme i hru Uteč!, kde opět díky správně zodpovězeným otázkám utíkáš před duchem. Odpovíš špatně? Pak kolo stojíš, ale Duch nestojí! Jde si pro tebe.

Další hrou je Color game, kde vysíláš proti útočníkovi barevné střely. Pokud je barva správná, střelu zničíš. Pokud není, mineš a musíš to zkusit znovu.

Je to moc jednoduché? Zvol více barev!

A nakonec tu máme hru s naší interaktivní mapou České republiky.

Ve hře Zachraň město seš hrdinou/kou ve které, díky správným odpovědím na otázky, uhasíš hořící města. Pokud odpovíš špatně, začne hořet jiné. Tak opatrně!


🔗 Zdrojový kód:
https://github.com/LaskaKit/ESPwled/tree/main/SW/hra_Prezij

🛒 ESPWLED, LED pásek i napájecí adaptér zakoupíte na laskakit.cz

Vytvořeno pro zábavu a vzdělávací účely – hra kombinuje ESPWLED, NeoPixel a webové rozhraní.