ANTEPRIMA DI SVILUPPO
KartWorld, avventura 3D nel browser
Un'isola cartoon generata a codice: si cammina, si corre, si salta, si chiama un kart e ci si guida dentro un portale che porta al primo livello. È fatto con Godot 4 e gira nel browser, senza installare niente. È anche dichiaratamente incompiuto: la grafica è ancora fatta di segnaposto e il suono manca quasi del tutto. Sta qui perché si può già giocare, non perché sia finito.
Serve un computer. I comandi sono tastiera, mouse e gamepad: da telefono o tablet non si gioca, i controlli a sfioramento non ci sono ancora. Il primo caricamento scarica circa 24 MB.
Il mouse viene catturato al primo clic dentro il riquadro: è il browser a pretendere un gesto prima di nascondere il puntatore. Esc lo libera, un clic lo riprende.
Comandi
| Azione | Tastiera e mouse | Gamepad |
|---|---|---|
| Muoversi | W A S D | Levetta sinistra |
| Correre | Maiusc tenuto | B tenuto |
| Saltare e doppio salto | Spazio (tocco breve: saltello) | A |
| Colpire | J o tasto sinistro del mouse | RB |
| Guardarsi intorno | Mouse, o frecce | Levetta destra |
| Chiamare il kart | K | Y |
| Parlare, salire e scendere dal kart | E | X |
| Kart: accelerare, frenare e retromarcia | W e S | Grilletto destro e sinistro |
| Kart: sterzare | A D | Levetta sinistra |
| Kart: turbo | Maiusc | B |
| Kart: saltare | Spazio | A |
| Liberare e riprendere il puntatore | Esc e clic | Start |
Cosa c'è da fare
Si comincia sull'isola: spiaggia, bosco, montagna, una casa e due personaggi con cui scambiare due parole. Si esplora a piedi, oppure si chiama il kart con K, ci si sale con E e si gira molto più in fretta.
In un punto dell'isola c'è un portale: attraversarlo, a piedi o in kart, carica il primo livello. Lì il compito arriva un passo alla volta, scritto nell'interfaccia: segui la traccia, raccogli le stelle, tocca il checkpoint, togli di mezzo gli slime, salta il vuoto, arriva alla radura. Chiuso il livello si torna sull'isola.
I nemici fanno male al contatto, i cuori finiscono e il checkpoint rimette in gioco. Completare il livello la prima volta sblocca il triplo salto: lo sblocco e il record di stelle per livello vengono salvati e ritrovati al ritorno.
Perché è ancora tutto squadrato
Perché la grafica è l'ultima cosa. Prima devono funzionare movimento, telecamera, collisioni, guida, portali, danno e progressione: è la parte che, se sbagliata, non si aggiusta ridisegnandoci sopra.
Alberi, rocce, fiori, kart, stelle e bandiere sono modelli CC0 di Kenney; il protagonista è un modello generato con Meshy, riggato e animato con Mixamo; nemici, personaggi ed edifici sono ancora solidi geometrici. Sostituire i segnaposto con arte vera è la fase successiva, non un ripensamento.
Com'è fatto
Godot 4.7 e GDScript, nessun addon di terze parti. Il rendering usa la modalità Compatibility (OpenGL ES 3 e WebGL 2) su ogni piattaforma, così lo stesso progetto esce identico su Windows, web, Android e iOS senza due direzioni artistiche da tenere allineate.
L'export per il web è a thread singolo, ed è una scelta. Un build multi-thread avrebbe preteso gli header di isolamento cross-origin (COOP e COEP) sul dominio, cioè cambiare le regole di un sito statico intero per una pagina sola. Così invece il gioco è una risorsa come le altre, dentro un iframe, sullo stesso dominio, e nessun'altra pagina ne risente.
I due file grossi sono il runtime (39 MB di WebAssembly) e i contenuti (23 MB di pacchetto). Sul server esistono solo precompressi, 10 e 14 MB: il browser chiede index.wasm e il server gli passa index.wasm.gz dichiarando la codifica, che il browser scarta da solo. Tenere accanto anche la copia in chiaro voleva dire 62 MB fermi lì per un client che non dichiara gzip, cioè per nessuno.
La logica di gioco non nomina mai un tasto: parla di azioni, e la mappatura sta in un posto solo. Sopra ci girano otto suite di collaudo headless, circa 330 controlli, che muovono scene vere con input simulato: movimento, kart, isola, portali, obiettivi, combattimento, progressione, hub. Servono a sapere che una modifica al kart non ha rotto i portali senza doverlo scoprire giocando.
Domande frequenti
Si gioca gratis?
Sì, gratis e senza registrazione. Non ci sono account, pubblicità, acquisti né tracciamento: si apre la pagina e si gioca.
Funziona da telefono?
No, non ancora. I comandi previsti oggi sono tastiera, mouse e gamepad; i controlli a sfioramento sono in programma ma non ci sono. Da telefono la pagina si apre e il gioco carica, ma non c'è modo di muovere il personaggio.
Quanto scarica?
Circa 24 MB al primo avvio, compressi. Restano nella cache del browser, quindi le volte successive parte molto più in fretta. Su una connessione lenta la prima attesa è lunga: la barra sotto l'immagine di avvio mostra a che punto è.
I progressi vengono salvati?
Sì. Stelle migliori per livello e abilità sbloccate finiscono nella memoria locale del browser, nello spazio riservato a questo dominio (IndexedDB, la cartella /userfs del motore). Non lasciano il dispositivo, non vengono inviati ad alcun server e si cancellano svuotando i dati del sito dalle impostazioni del browser.
Il gioco fa richieste di rete mentre si gioca?
No. Scarica i suoi file all'avvio, dal dominio stesso, e da lì in poi gira tutto sul dispositivo. Nessuna telemetria, nessuna chiamata a servizi esterni.
Quando è finito?
Non c'è una data. È un progetto personale portato avanti a fasi: adesso ci sono l'isola, il kart, un livello, il combattimento e la progressione; la fase successiva è la resa, cioè animazioni, modelli veri e suono. Questa pagina viene aggiornata quando cambia il build.
Se interessa più il modo di lavorare che il gioco, i progetti veri stanno qui e i contatti pure.