Ho iniziato lo sviluppo di un videogame in lua/love2d e volevo ospitarlo su itch.io, che offre anche il sistema per "giocarlo online" direttamente sul browser.
La procedura per ottenere un file giocabile (usa love.js come estensione di node.js) non è propriamente semplice e richiede (su windows) un po' di lavoro.
Utilizzeremo "makelove" (il repository si trova qui: https://github.com/idbrii/love-makelove ).
1. Installazione dei requisiti necessari
Procedura:
- installare python
- inserire il percorso di installazione e la directory "Scripts" nel PATH
- aprire un prompt (cmd.exe) come amministratore (sennò il sistema installa le librerie in locale)
- lanciare il seguente comando: pip3 install makelove
- assicurarsi che il tutto sia aggiornato, lanciando: python3 -m pip install --upgrade setuptools (i setuptools servono per la gestione dei packages)
- spostarsi nella directory in cui è presente il sorgente del gioco
- lanciare il comando: makelove --init e compilare i dati richiesti
A questo punto, abbiamo un file di configurazione per la produzione dei "pacchetti".
Lovejs non è previsto di base, quindi bisogna andare ad editare il file makelove.toml.
Procediamo a modificare il file di configurazione, aprendo il file makelove.toml con un qualsiasi editor (anche VS Code).
Un esempio potrebbe essere questo:
name = "TITOLO_GIOCO"
love_version = "11.5"
default_targets = ["win64","lovejs"]
build_directory = "PUBLISH"
love_files = [
"+*",
"-*/.*",
"-./PUBLISH/*",
]
[lovejs]
title = "TITOLO GIOCO" # used on the resulting web page
memory = "20000000" # starting memory of the webpage (default is 20 MB)
Nota: memory dev'essere grande abbastanza da contenere l'intero "pacchetto del gioco" prodotto. Arrotondate per eccesso.
L'importante è includere il target "lovejs".
Ora si salva e si chiude.
3. Pacchetti
Passiamo alla produzione dei pacchetti. La procedura è:
- aprire un prompt cmd
- lanciare il comando: makelove --version-name 1
Nota: ho aggiunto il sistema di gestione della versione, per facilitare le varie build.
Ora abbiamo, nella cartella indicata nel conf (io ho messo PUBLISH), una cartella con la versione e con dentro i pacchetti generati.
Il pacchetto potrebbe essere completo, ma prima di pubblicare i dati conviene modificare il codice della pagina che caricherà il gioco nel browser.
Bisogna entrare nella cartella lovejs e decomprimere il file .zip contenuto qui dentro.
All'interno del file bisogna modificare il file index.html ed il file theme\love.css
Queste le modifiche al file index.html:
eliminare il tag <h1> dentro al <center> in alto
modificare le dimensioni iniziali del canvas "loadingCanvas" con le dimensioni del gioco
eliminare il <footer> con i credits (presente un overlay che interferisce con il gioco)
modificare la funzione js function drawLoadingText(text) in questo modo:
var canvas = loadingContext.canvas;
loadingContext.fillStyle = "rgb(0, 0, 0)";
loadingContext.fillRect(0, 0, canvas.scrollWidth, canvas.scrollHeight);
loadingContext.font = '1em helvetica';
loadingContext.textAlign = 'center'
loadingContext.fillStyle = "rgb( 200, 200, 200 )";
loadingContext.fillText(text, canvas.scrollWidth / 2, canvas.scrollHeight / 2);
Queste invece le modifiche al file love.css:
- eliminare l'immagine di sfondo dal tag "body" (background-image)
- cambiare il colore di sfondo e del testo con uno "consono" al gioco (ad esempio... nero e bianco)
- cambiare i colori delle ancore (link, visited, hover), anche se non dovrebbero essercene
A questo punto, si sostituiscono i due file nello zip e si carica su itch.io.
Nessun commento:
Posta un commento