In questa guida, vi mostrerò come creare un gioco classico chiamato Snake. Snake è un gioco che era presente nei telefoni Nokia degli anni ’90 e 2000, in cui si utilizzavano i numeri del tastierino numerico per direzionarsi che controllava un serpente che mangiava e si allunga man mano che mangia. In questa guida, vedremo come personalizzarlo utilizzando Chatgpt. Ovviamente in questa tecnica sul pc Windows useremo le frecce direzionali.

Cos’è ChatGPT?
ChatGPT è un tipo di intelligenza artificiale che può conversare con le persone. È come una sorta di “robot parlante” che legge e scrive testi in modo naturale. Può rispondere a domande, aiutare con compiti, raccontare storie o semplicemente chiacchierare. È stato addestrato su tantissimi testi presi da internet, quindi sa un po’ di tutto e può parlare di tanti argomenti diversi.
Come creare script snake:
Per creare lo script in snake ho detto alla chat questa frase:
<<Creami gioco snake con python con il serpente di colore rosso e il cibo che mangia di colore giallo>>
import pygame
import time
import random
# Inizializza Pygame
pygame.init()
# Definisce i colori
rosso = (255, 0, 0)
giallo = (255, 255, 0)
nero = (0, 0, 0)
bianco = (255, 255, 255)
# Definisce le dimensioni della finestra di gioco
larghezza_finestra = 800
altezza_finestra = 600
# Crea la finestra di gioco
finestra_gioco = pygame.display.set_mode((larghezza_finestra, altezza_finestra))
pygame.display.set_caption('Snake Game')
# Definisce la velocità del serpente e le dimensioni del blocco
velocita_serpente = 15
dimensione_blocco = 20
# Clock per controllare la velocità del gioco
orologio = pygame.time.Clock()
# Font per il testo di fine gioco
font_stile = pygame.font.SysFont(None, 50)
def messaggio(msg, colore):
messaggio = font_stile.render(msg, True, colore)
finestra_gioco.blit(messaggio, [larghezza_finestra / 6, altezza_finestra / 3])
def nostro_serpente(dimensione_blocco, lista_serpente):
for x in lista_serpente:
pygame.draw.rect(finestra_gioco, rosso, [x[0], x[1], dimensione_blocco, dimensione_blocco])
def gameLoop():
game_over = False
game_close = False
x1 = larghezza_finestra / 2
y1 = altezza_finestra / 2
x1_cambiamento = 0
y1_cambiamento = 0
lista_serpente = []
lunghezza_serpente = 1
cibo_x = round(random.randrange(0, larghezza_finestra - dimensione_blocco) / 20.0) * 20.0
cibo_y = round(random.randrange(0, altezza_finestra - dimensione_blocco) / 20.0) * 20.0
while not game_over:
while game_close:
finestra_gioco.fill(nero)
messaggio("Hai perso! Premi Q per uscire o C per continuare", bianco)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_q:
game_over = True
game_close = False
if event.key == pygame.K_c:
gameLoop()
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
x1_cambiamento = -dimensione_blocco
y1_cambiamento = 0
elif event.key == pygame.K_RIGHT:
x1_cambiamento = dimensione_blocco
y1_cambiamento = 0
elif event.key == pygame.K_UP:
y1_cambiamento = -dimensione_blocco
x1_cambiamento = 0
elif event.key == pygame.K_DOWN:
y1_cambiamento = dimensione_blocco
x1_cambiamento = 0
if x1 >= larghezza_finestra or x1 < 0 or y1 >= altezza_finestra or y1 < 0:
game_close = True
x1 += x1_cambiamento
y1 += y1_cambiamento
finestra_gioco.fill(nero)
pygame.draw.rect(finestra_gioco, giallo, [cibo_x, cibo_y, dimensione_blocco, dimensione_blocco])
testa_serpente = []
testa_serpente.append(x1)
testa_serpente.append(y1)
lista_serpente.append(testa_serpente)
if len(lista_serpente) > lunghezza_serpente:
del lista_serpente[0]
for x in lista_serpente[:-1]:
if x == testa_serpente:
game_close = True
nostro_serpente(dimensione_blocco, lista_serpente)
pygame.display.update()
if x1 == cibo_x and y1 == cibo_y:
cibo_x = round(random.randrange(0, larghezza_finestra - dimensione_blocco) / 20.0) * 20.0
cibo_y = round(random.randrange(0, altezza_finestra - dimensione_blocco) / 20.0) * 20.0
lunghezza_serpente += 1
orologio.tick(velocita_serpente)
pygame.quit()
quit()
gameLoop()
Come eseguire Snake:
Installazione di Python:
- Vai su python.org e scarica l’ultima versione di Python per il tuo sistema operativo.
- Segui le istruzioni di installazione. Assicurati di selezionare l’opzione per aggiungere Python al PATH durante l’installazione.
Installazione di Pygame:
- Apri il terminale (macOS/Linux) o il prompt dei comandi (Windows).
- Digita:
pip install pygame

Copia il codice fornito in un file con estensione .py
, ad esempio snake_game.py
.
Esegui il file Python che contiene il codice del gioco. Nel terminale o nel prompt dei comandi, naviga nella directory dove hai salvato snake_game.py
e digita:
python snake_game.py

Quando ti scontri contro il famoso muro trasparente viene fuori il seguente messaggio:
<<Hai perso! Premi Q per uscire o C per continuare>>

Ulteriori informazioni:
Creare il gioco Snake con Python e Pygame è un modo divertente per iniziare a fare giochi. Con l’aiuto di ChatGPT, abbiamo aggiunto un tocco personale al gioco. Puoi personalizzare il tuo Snake in molti modi diversi per renderlo unico. Spero che questa guida ti abbia aiutato a imparare e a iniziare a creare il tuo gioco. Anche se incontri delle difficoltà, continua a esplorare e divertiti nel processo di creazione.