Discrepanze fra HTML5 e Windows

Scripts e snippets scritti in GameMaker Language (gml)
Rispondi
Avatar utente
boxbuilder
Membro
Messaggi: 158
Iscritto il: 25/06/2015, 10:37
Specialità: programmatore
Uso: GM:Studio 1.4 HTML5
Contatta:

Discrepanze fra HTML5 e Windows

Messaggio da boxbuilder »

Ciao a tutti,
Fra le varie discrepanze fra Win e HTML5 mi sono imbattuto in una che mi ha fatto perdere non poco tempo a sistemare tutto.

Si tratta di una più rigorosa gestione delle ds_ per quanto riguarda indici e valori undefined da parte di HTML5.

Mi spiego con un paio di esempi:

scrivere:

Codice: Seleziona tutto

if(is_undefined(mia_ds_map[? "valore"])){
	show_debug_message("la proprietà 'valore' non è presente nella mia_ds_map");
}
funziona senza problemi in Windows, mentre in HTML5 produce un errore.

La sintassi corretta è:

Codice: Seleziona tutto

if(!ds_map_exists(mia_ds_map, "valore")){
	show_debug_message("la proprietà 'valore' non è presente nella mia_ds_map");
}
Stesso genere di problemi per le ds_list, per le quali su Windows è possibile uscire dall'indice, mentre HTML5 s'incazza:

Codice: Seleziona tutto

//sbagliato: 
if(mia_ds_list[| valore] == undefined){
	show_debug_message("il valore non è stato settato");
}

//corretto:
if( valore >= ds_list_size(mia_ds_list)){
	show_debug_message("il valore non è stato settato");
}
Ora voi mi direte:

Bravo! Hai scoperto l'acqua calda, ma vi garantisco che non c'è nulla di peggio che incappare in questo tipo di eccezioni, dove lavori tranquillamente credendo che vada tutto bene, per poi ritrovarti con una build che è un colabrodo per un device specifico.

Avatar utente
doom13
Moderatore
Messaggi: 2093
Iscritto il: 31/08/2012, 15:40
Specialità: Programmazione
Uso: GM:Studio 2
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da doom13 »

Ormai conosci meglio l'html5 in gm degli sviluppatori stessi, scommetto che non erano minimamente a conoscenza.
Immagine
Spoiler
Maze [sospeso]
Isom (titolo provvisorio) (Windows & Android) [sospeso]
Keep Calm & Jump (Android) [In corso]
The Graywall (Windows) [Completo]
DTB (Windows & Android) [Completo]
The Last Spell (Windows) [Completo]
Dukenstein: Return to the house (Windows) [Completo]
DMSystem (Windows) [Completo]
"Things get hard sometimes guys... But remember, dicks get hard too, but they don't stay hard forever. Don't give up!"

Avatar utente
boxbuilder
Membro
Messaggi: 158
Iscritto il: 25/06/2015, 10:37
Specialità: programmatore
Uso: GM:Studio 1.4 HTML5
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da boxbuilder »

doom13 ha scritto:Ormai conosci meglio l'html5 in gm degli sviluppatori stessi
Hahaha, non esageriamo, comunque a furie di aprire ticket su ticket siamo diventati amici :asd: :asd: :asd:

Avatar utente
doom13
Moderatore
Messaggi: 2093
Iscritto il: 31/08/2012, 15:40
Specialità: Programmazione
Uso: GM:Studio 2
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da doom13 »

Ma almeno te li hanno considerati come bug?
Immagine
Spoiler
Maze [sospeso]
Isom (titolo provvisorio) (Windows & Android) [sospeso]
Keep Calm & Jump (Android) [In corso]
The Graywall (Windows) [Completo]
DTB (Windows & Android) [Completo]
The Last Spell (Windows) [Completo]
Dukenstein: Return to the house (Windows) [Completo]
DMSystem (Windows) [Completo]
"Things get hard sometimes guys... But remember, dicks get hard too, but they don't stay hard forever. Don't give up!"

Avatar utente
boxbuilder
Membro
Messaggi: 158
Iscritto il: 25/06/2015, 10:37
Specialità: programmatore
Uso: GM:Studio 1.4 HTML5
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da boxbuilder »

doom13 ha scritto:Ma almeno te li hanno considerati come bug?
Su questi in particolare non ho aperto nessun ticket perché diciamo che a livello di best practices il modo giusto di scrivere il programma è quello che ho descritto negli esempi.

Invece per quanto riguarda altri tipi di errori, soprattutto sulla conversione dei tipi (real/boolean e costanti varie null, undefined, ecc...) e sull'integrazione di Spine, dove c'erano errori evidenti e facilmente riproducibili qualcosa è stato fatto.
C'è da dire che sono lentissimi sia nel rispondere (tempi d'attesa minimi di una settimana, sia nel risolvere gli errori e incorporarli nelle nuove versioni).
Spesso mi sono stati proposti degli utili workaround (sempre con tempi d'attesa biblici), quindi devo dire che il team di Game Maker è lento ma non ti abbandona.

Comunque mi son reso conto che la versione Early Access è paradossalmente menu buggata della Stable, ma se qualcuno di voi s'è fatto un'altra idea mi piacerebbe la condividesse.

Avatar utente
Tizzio
GMI Honor
Messaggi: 5836
Iscritto il: 29/06/2010, 23:43
Specialità: programmazione
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da Tizzio »

proprio perchè è un early access dei bugfix, dato che non aggiungono features da mesi

Avatar utente
doom13
Moderatore
Messaggi: 2093
Iscritto il: 31/08/2012, 15:40
Specialità: Programmazione
Uso: GM:Studio 2
Contatta:

Re: Discrepanze fra HTML5 e Windows

Messaggio da doom13 »

Tizzio ha scritto:proprio perchè è un early access dei bugfix, dato che non aggiungono features da mesi
Si e cambiano ds_grid_write :furiosomedio:
Immagine
Spoiler
Maze [sospeso]
Isom (titolo provvisorio) (Windows & Android) [sospeso]
Keep Calm & Jump (Android) [In corso]
The Graywall (Windows) [Completo]
DTB (Windows & Android) [Completo]
The Last Spell (Windows) [Completo]
Dukenstein: Return to the house (Windows) [Completo]
DMSystem (Windows) [Completo]
"Things get hard sometimes guys... But remember, dicks get hard too, but they don't stay hard forever. Don't give up!"

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite