Toate misiunile / Constructor

Patru în linie contra AI: joc cu minimax

Joacă „Patru în linie” împotriva unui AI creat de tine. Alegi cât de departe gândește, iar jocul arată câte poziții a verificat la fiecare mutare.

Joacă exemplul

✓ Prompt verificat în Gemini Pro: a funcționat de 3 ori din 3

Nivelul
Pro
Rezultat
Joc cu adversar AI (minimax) într-un singur fișier HTML
Vârsta
12+
Timp
≈ 40 min
Instrumente
Gemini
Cont
Nu e nevoie

Ce iese

Vei face un joc în care adversarul gândește cu adevărat: verifică mii de poziții. Așa funcționau primele programe de șah.

Pași

  1. Deschide gemini.google.com. Sub 13 ani — împreună cu un părinte, pe dispozitivul lui.

  2. Copiază promptul întreg și trimite-l:

    Fă jocul „Patru în linie” contra calculatorului într-un singur fișier HTML. Nu conecta nimic de pe internet: fără Tailwind, CDN, fonturi, imagini sau biblioteci — doar CSS și JavaScript propriu în fișier. Nu salva nimic în memoria browserului. Toată interfața în limba română. Tabla are 7 coloane × 6 rânduri, tabla e făcută din celule div în CSS Grid (nu canvas), o atingere pe orice celulă a unei coloane aruncă piesa în acea coloană cu animație de cădere. Jucătorul — roșu, calculatorul — galben, primul mută jucătorul. AI-ul calculatorului — minimax cu tăiere alfa-beta; evaluarea poziției: +1000 pentru victorie, pentru fiecare grup de patru celule numără piesele proprii și ale adversarului (3 proprii și una goală = +5, 2 proprii și 2 goale = +2, 3 ale adversarului și una goală = −4), coloana din mijloc +3 pentru fiecare piesă. Glisor „Adâncimea gândirii” 1–7, implicit 4. Pornește mutarea calculatorului cu setTimeout(aiMove, 100) după mutarea jucătorului, ca ecranul să apuce să se actualizeze. Căutarea — adâncire iterativă: adâncimea 1, 2, 3… până la cea aleasă, dar oprește-te dacă au trecut 2 secunde și mută cea mai bună mutare găsită; calculatorul trebuie să mute mereu. După mutarea calculatorului arată: câte poziții a verificat și câte milisecunde a gândit. Cele patru piese câștigătoare se evidențiază, un mesaj mare „Victorie!”, „Înfrângere” sau „Remiză” și butonul „Joc nou”. Structura codului: tabla — tabloul board[rând][coloană] cu 0, 1 și 2; funcțiile dropPiece(col, player), getValidCols(), checkWin(player), scorePosition(), minimax(depth, alpha, beta, isMax), aiMove(), resetGame() — declară fiecare exact o dată. Verifică dacă toate variabilele sunt declarate, toate funcțiile există și nu există erori de sintaxă. Totul trebuie să arate bine pe telefon. Folosește exact aceste id-uri în HTML și în cod: board, status, depth, depthValue, stats, newGame. Minimax — recursie obișnuită cu adâncimea fixă din glisor; dacă adâncimea e mai mare de 5, limitează căutarea la 2 secunde. Arată rezultatul în Canvas. Răspunde direct ca aplicație în Canvas, cu fila de previzualizare.
    
  3. Așteaptă cam un minut, apasă Previzualizează (Preview) și încearcă toate butoanele și glisoarele.

  4. Verifică AI-ul (întrebarea de mai jos).

  5. Apasă Descarcă (Download; uneori e meniul Exportă) — fișierul se deschide în orice browser.

Schimbă promptul

Schimbă doar cuvintele, regulile despre internet și Canvas lasă-le.

  • „7 × 6” → „8 × 7” — i-a fost mai greu AI-ului?
  • „primul mută jucătorul” → „primul mută calculatorul”

Dacă nu merge

  • Calculatorul nu mută? Scrie: Calculatorul nu face mutarea după mine. Găsește și repară eroarea.
  • Se blochează la adâncime mare? Scrie: La adâncimea 7 jocul se blochează. Limitează căutarea la 2 secunde.
  • Nu există butonul „Previzualizează” (Preview)? Scrie: Arată rezultatul în Canvas.

Trimiterea lucrărilor în galerie se deschide în curând.

Ai făcut ceva tare cu AI?Trimite promptul tău. Îl verificăm de trei ori și îl publicăm ca misiune — ca și alți copii să-l poată face la rândul lor.Inventează-ți misiunea