Botbright: Egy programozási játék.

🇬🇧 English · 🇪🇸 Español · 🇫🇷 Français · 🇩🇪 Deutsch · 🇮🇹 Italiano · 🇵🇹 Português · 🇷🇺 Русский · 🇨🇳 中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇮🇳 हिन्दी · 🇧🇩 বাংলা · 🇻🇳 Tiếng Việt · 🇸🇦 العربية · 🇹🇭 ไทย · 🇳🇴 Norsk · 🇳🇱 Nederlands · 🇸🇪 Svenska · 🇹🇷 Türkçe · 🇰🇪 Kiswahili · 🇮🇩 Bahasa Indonesia · 🇵🇱 Polski · 🇬🇷 Ελληνικά · 🇮🇱 עברית · 🇵🇭 Filipino · 🇨🇿 Čeština · 🇩🇰 Dansk · 🇫🇮 Suomi · 🇷🇴 Română · 🇭🇺 Magyar · 🇭🇷 Hrvatski


A Botbright a Flash logikai játék Lightbot egyfájlos JavaScript-klónja. Programozz egy izometrikus robotot, hogy egy 3D-s csempehálón sétáljon és felgyújtsa a kék célmezőket. Húzd az utasításcsempéket a robot memóriájába, nyomd meg a Futtatás gombot, és nézd, ahogy a programod lefut.

Az egész játék egyetlen HTML-fájl (botbright.html) beágyazott CSS-sel és JavaScripttel — nincs build lépés, nincsenek külső függőségek, nincsenek hálózati hívások. Nyisd meg a fájlt bármilyen modern böngészőben és játssz. Mentsd el a merevlemezedre, és örökké offline marad.

A színpalettát is megváltoztathatod, és különféle kalapokat adhatsz a robotodra. Beépített pályaszerkesztő van, és a pályák és kalapok JSON formátumban importálhatók/exportálhatók.

Játék

Csak kattints duplán a botbright.html fájlra, vagy nyisd meg a böngésződben. A játék offline is működik.

Élő verzió: https://inventwithpython.com/botbright/

Hogyan működik

A robotnak három memóriaterülete van:

  • Fő memória — 12 utasítás-hely, a Futtatás megnyomásakor fut
  • F1 memória — 8 utasítás-hely, egy hívható függvény
  • F2 memória — 8 utasítás-hely, egy második hívható függvény

Húzd az utasításcsempéket a palettáról a memóriába. A helyek között húzva rendezd át. Húzz egy csempét egy helyről kifelé a törléséhez.

Utasítás Mit csinál
Előre Lépj az előtted lévő csempére, ha azonos magasságú
Fordulj balra Forgás 90°-kal az óramutató járásával ellentétesen
Fordulj jobbra Forgás 90°-kal az óramutató járásával megegyezően
Ugrás Ugorj egy szintet feljebb, vagy ess le tetszőleges számú szintet
Felkapcsol Átkapcsolja a robot alatti célcsempét
F1 / F2 hívása Felteszi azt a függvényt a hívási veremre (rekurzió engedélyezett, korlátokkal)

A pálya akkor teljesített, ha minden célcsempe sárgán világít.

A túl sokáig futó programok leállnak: legfeljebb 1000 utasítás összesen, legfeljebb 100 keret a hívási veremben.

Vezérlés

Kamera — WASD vagy nyilakkal a tologatás, Q/E vagy PageUp/PageDown a 90°-os elforgatás, +/− vagy görgő a nagyítás. Nyomj 0-t a nézet visszaállításához. Húzd a vásznat a tologatáshoz, csípd a nagyításhoz, két ujjal csavard a forgatáshoz. Tartsd lenyomva a képernyő kameragombjait a folyamatos, sima mozgáshoz.

Oldalsáv szélessége — húzd az elválasztót a vászon és az oldalsáv között.

Sebesség — csúszka az oldalsávban: lassú / normál / gyors. Futás közben is állítható.

Pályaszerkesztő

A játékhoz teljes értékű szerkesztő tartozik. Hozzáadhatsz/duplikálhatsz/törölhetsz pályákat, átméretezheted a rácsot (1–32 minden dimenzióban), 0–9 magasságot festhetsz, megjelölheted a célcsempéket, beállíthatod a kezdő pozíciót és irányt, és a szerkesztőből kilépés nélkül kipróbálhatod a pályát.

A teljes pályakészlet JSON-ként exportálható és ugyanúgy importálható, így megoszthatsz pályákat, vagy biztonsági másolatot készíthetsz a módosításokról.

Kalapszerkesztő

A robot kalapokat viselhet. Tizenkilenc lehetőséggel érkezik: Nincs, Cilinder, Varázsló kalap, Korona, Sapka, Baseballsapka, Cowboy kalap, Bulikalap, Keménykalap, Glória, Ördögszarvak, Sombrero, Boszorkánykalap, Fez, Szarvasagancs, Nyúlfül, Macskafül, Búvársisak és Viking sisak. Minden kalapot négy SVG sprite határoz meg — minden képernyőhöz viszonyított irányhoz egy —, így a kalap követi a robot irányát minden kameraforgatáskor (a baseballsapka ellenzője, a boszorkánykalap csatja, a búvársisak ablaka és a nyúl/macska fülének belseje is ennek megfelelően mozdul). Élő előnézet másodpercenként egyszer megforgatja a robotot, hogy minden szögből láthasd a kalapot. A kalapok JSON-ként is exportálhatók és importálhatók egyedi tervekhez.

Színsémák

A játék oldalsávjában lévő Színek panel megnyitja a palettát: csempeszín, csempeszegély-szín, célszín, felkapcsolt cél színe, háttér és robottest. Használhatsz beépített témát, vagy szerkesztheted magad.

Nyelvek

A felület 23 nyelvre fordítva: angol, spanyol, francia, német, olasz, portugál, orosz, kínai, japán, koreai, hindi, bengáli, vietnami, arab (jobbról balra elrendezéssel), thai, tagalog, norvég, holland, svéd, török, szuahéli, indonéz és lengyel. Az alapértelmezett nyelv a böngésző navigator.language értékét követi; a kezdőképernyő nyelvválasztója a munkamenet idejére felülírja. A beépített pályák nevei és leírásai, valamint a beépített kalapok nevei minden támogatott nyelvre le vannak fordítva. A pályaszerkesztő név vagy leírás szerkesztésekor csak az aktuálisan kiválasztott nyelv helyére ír, a többi nyelv fordításait érintetlenül hagyja.

Világos / sötét mód

Az alkalmazás kerete követi a böngésző prefers-color-scheme beállítását. A Színek panelben az Alapértelmezett téma kiválasztásakor a böngésző aktuális módjához illő paletta lép életbe, így módváltáskor is szinkronban marad. Bármely más beépített téma — vagy a Színek panelben testre szabott paletta — felülírja ezt a viselkedést.

Készítők

Készítette: Al Sweigart — https://inventwithpython.com/botbright/

Daniel Yaroslavski Lightbot játéka ihlette.