 
View Full Version : First Playable Update Lock Venerdi' 28/4
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
1) L'audio va disabilitato se non e' presente la scheda sonora e va emesso un warning in console (FIXED Ufo)
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco e va inserito un timer di due secondi (FIXED Cesare)
3) Il punteggio non si vede nella prima partita (FIXED Ufo)
4) Se uno dei due player ha già parecchie celle occupate nello schermo, e l'altro player gli manda una quantità di gemme tali da riempire tutto, non viene dato il game over, ma il gioco prosegue (FIXED cisc)
5) tasti che ogni tanto rimangono freezed 
6) gemmone che con falshing gem si spezzano
Prenotatevi per questi fix, abbiamo solo due giorni. Sono tutti di classe A. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :)
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
1) L'audio va disabilitato se non e' presente la scheda sonora e va emesso un warning in console
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco
3) Il punteggio non si vede nella prima partita
Prenotatevi per questi fix, abbiamo solo due giorni. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :)
Prendo il fix (1)
redcloud
27-04-2006, 10:56
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
1) L'audio va disabilitato se non e' presente la scheda sonora e va emesso un warning in console
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco e va inserito un timer di due secondi
3) Il punteggio non si vede nella prima partita
4) Se uno dei due player ha già parecchie celle occupate nello schermo, e l'altro player gli manda una quantità di gemme tali da riempire tutto, non viene dato il game over, ma il gioco prosegue
5) Cambiare il titolo del thread in "First Playable Update Lock Giovedi' 27/4"
Prenotatevi per questi fix, abbiamo solo due giorni. Sono tutti di classe A. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :).
Venerdi' 28. Scusate per la confusione.
Fatto, potete dirmi se funziona?
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
1) L'audio va disabilitato se non e' presente la scheda sonora e va emesso un warning in console
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco e va inserito un timer di due secondi
3) Il punteggio non si vede nella prima partita
4) Se uno dei due player ha già parecchie celle occupate nello schermo, e l'altro player gli manda una quantità di gemme tali da riempire tutto, non viene dato il game over, ma il gioco prosegue
Prenotatevi per questi fix, abbiamo solo due giorni. Sono tutti di classe A. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :)
non c'è anche quello delle BigGem che si spezzano?
Inizio a vedere il (3)
Fatto, potete dirmi se funziona?
No.
Ci guardo io che per scatenare quella eccezione mi basta avviare un player audio qualsiasi.
edit: Falso allarme. Funziona.
ciao ;)
cdimauro
27-04-2006, 12:21
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco e va inserito un timer di due secondi
Prenotatevi per questi fix, abbiamo solo due giorni. Sono tutti di classe A. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :)
Provo col 2: si tratta soltanto delle texture delle gemme, giusto (niente background, ecc.)?
L'attesa di 2 secondi dev'essere prima di iniziare la partita (ma a che serve?)?
^TiGeRShArK^
27-04-2006, 12:34
Alle 10 CEST prendo il tag per l'aggiornamento della secodna First Playable.
Ho bisogno dei seguenti task:
1) L'audio va disabilitato se non e' presente la scheda sonora e va emesso un warning in console
2) Le texture delle gemme vanno precaricate prima di iniziare il gioco e va inserito un timer di due secondi
3) Il punteggio non si vede nella prima partita
4) Se uno dei due player ha già parecchie celle occupate nello schermo, e l'altro player gli manda una quantità di gemme tali da riempire tutto, non viene dato il game over, ma il gioco prosegue
Prenotatevi per questi fix, abbiamo solo due giorni. Sono tutti di classe A. State facendo un gran lavoro, sono usciti pochissimi bug, me ne aspettavo una marea dal deploy :)
il Web Start lo useremo per questa update?
In teoria stasera se funziona quello che mi ha suggerito blue dovrei finire e potrei iniziare a provare sul server di NSN....
Provo col 2: si tratta soltanto delle texture delle gemme, giusto (niente background, ecc.)?
L'attesa di 2 secondi dev'essere prima di iniziare la partita (ma a che serve?)?
Precarica tutte le texture per ora. L'attesa serve per dare un attimo di tempo per ambientarsi prima di iniziare. Jocchan, la vuoi o no?
il Web Start lo useremo per questa update?
In teoria stasera se funziona quello che mi ha suggerito blue dovrei finire e potrei iniziare a provare sul server di NSN....
Lo valutiamo nel finesettimana, voglio fare un po' di testing e vedere come va prima di rilasciarlo al pubblico.
public void testScoreAreShowingOnStart()
    {
        MockEngine engine = new MockEngine();
        
        LayerManager layerManager = gameLoop.getLayerManager();
        layerManager.drawLayers(engine);
        
        assertTrue(engine.wasTextureDrawn(Number.create16x24(0.0f, 0.0f).getDigitSprite(0).getTexture()));
    }
Questo test passa.. Che strano...
P.S. ho aggiunto questo metodo in MockEngine:
    public boolean wasTextureDrawn(Texture texture)
    {
        for(DrawInfo drawInfo : drawInfoList)
        {
            if (drawInfo.texture.getName() == texture.getName())
            {
                return true;
            }
        }
        
        return false;
    }
cdimauro
27-04-2006, 12:44
Precarica tutte le texture per ora. L'attesa serve per dare un attimo di tempo per ambientarsi prima di iniziare. Jocchan, la vuoi o no?
OK. Comunque col precaricamento delle texture magari non servono quei 2 secondi di attesa. ;)
OK. Comunque col precaricamento delle texture magari non servono quei 2 secondi di attesa. ;)
Scarico il barile ad Andrea, decisione sua qui :D
"The secret to success is to know who to blame"
4) Se uno dei due player ha già parecchie celle occupate nello schermo, e l'altro player gli manda una quantità di gemme tali da riempire tutto, non viene dato il game over, ma il gioco prosegue
Questo bug dovrei averlo risolto io il sabato prima della FP...quindi dovrebbe già essere stato corretto nel repository attuale.
http://www.hwupgrade.it/forum/showpost.php?p=12114199&postcount=445 
Potete darne conferma...io ci provo adesso. :D
Vada per il preload, e mezzo secondo di pausa prima di iniziare ;)
Scarico il barile ad Andrea, decisione sua qui :D
"The secret to success is to know who to blame"
Lolloso quanto vero.
Forse è una mia impressione...ma con gli ultimi refactoring ora le gemme quando cadono SOBBALZANO
 :muro:  :muro:  :muro:
EDIT: No No...ero io...ora va tutto alla perfezione ;)
public void testScoreAreShowingOnStart()
    {
        MockEngine engine = new MockEngine();
        
        LayerManager layerManager = gameLoop.getLayerManager();
        layerManager.drawLayers(engine);
        
        assertTrue(engine.wasTextureDrawn(Number.create16x24(0.0f, 0.0f).getDigitSprite(0).getTexture()));
    }
Questo test passa.. Che strano...
forse passa perche non viene controllato l'ordine dei layer(da quello che ho capito da altri post, il problema che lo score finiva dietro il background, purtroppo non ho il source sotto mano)
forse passa perche non viene controllato l'ordine dei layer(da quello che ho capito da altri post, il problema che lo score finiva dietro il background, purtroppo non ho il source sotto mano)
Spiegazione logica, ora vediamo :)
Risolto il 3, committo :)
cdimauro
27-04-2006, 16:16
Fixato il "bug" #2.
Test list:
    public void testWaitHalfSecondBeforeStartPlaying()
    {
        gameLoop.getPlayerOneInput().notifyKeyEvent(KeyEvent.ESCAPE, KeyEvent.RELEASED);
        gameLoop.loop();
        assertEquals(501, environment.getTimer().getTime());
        gameLoop.doOneStep();
        assertEquals(502, environment.getTimer().getTime());
    }
    
    public void testAllTextureLoadedBeforeStartPlaying()
    {
        assertEquals(43, Texture.getPoolSize());
    }
Per quest'ultimo ho dovuto aggiungere il metodo getPoolSize() a TextureSize (che mi restituisce il numero di texture caricate).
Inoltre ho modificato una delle due Texture.create() così:
    public static Texture create(String name)
    {      
        if (name.indexOf(".") >= 0)
        {
            return create(name, "");
        }
        else
        {
            return create(name, defaultType);
        }
    }
per semplificarmi la vita col caricamento delle texture (date un'occhiata al metodo privato loadTextures() di GameLoop e capirete).
Per il futuro potremmo anche eliminare Texture.create(String name, String otherType) e usare soltanto Texture.create(String name) che con questa modifica si occupa di sistemare tutto. ;)
Questo bug dovrei averlo risolto io il sabato prima della FP...quindi dovrebbe già essere stato corretto nel repository attuale.
http://www.hwupgrade.it/forum/showpost.php?p=12114199&postcount=445 
Potete darne conferma...io ci provo adesso. :D
è tutto il pomeriggio che provo a creare questa situazione....ma da solo faccio una fatica esagerata e nonci resco mai!!!!
Qualcuno controlli perchè il bug dovrebbe essere risolto...ma nessuno mi ha mai dato conferma.
Altra cosa....ogni tanto mi rimangono freezed i controlli...ovvero se premo giù il gioco si comporta come se il tasto fosse ancora premeuto anche se non lo è.
La tastiera è vecchiotta...quindi potrebbe essere anche un problema mio...ma se qualcuno si mettesse a giocare fino ad addormentarsi sarebbe bello ;)
Ora scappo. CIAO
prima ho avuto anche io uno scherzo della tastiera, m'ero messo a far ruotare le gemme così....e poi le gemme si so messe a cadere ruotando :mbe:  :confused:
Altra cosa....ogni tanto mi rimangono freezed i controlli...ovvero se premo giù il gioco si comporta come se il tasto fosse ancora premeuto anche se non lo è.
La tastiera è vecchiotta...quindi potrebbe essere anche un problema mio...ma se qualcuno si mettesse a giocare fino ad addormentarsi sarebbe bello ;)
Ora scappo. CIAO
È successo pure a me. Escluderei la tastiera. Logitech LX700 di meno di 1 anno fa.
ciao ;)
È successo pure a me. Escluderei la tastiera. Logitech LX700 di meno di 1 anno fa.
ciao ;)
si, anche io, mi sono espresso male prima, non può essere uno scherzo della tastiera......
si, anche io, mi sono espresso male prima, non può essere uno scherzo della tastiera......
NO BUONO  :(  :(
Possiamo mettere il post Sticky e aggiungere che bisogna risolvere altri 2 bug:
- tasti che ogni tanto rimangono freezed
- gemmone che con falshing gem si spezzano
Forse ho avuto l'intuizione nper i tasti freezed.
Durante gli stati GemFall e StoneFall in gridController non viene fatto il reactToInput...ma la KeyEvent queue mi sa che viene riempita lo stesso.
Quindi quando le gemme ripartono estraggono tutti gli eventi facendo sembrare la gemma incontrollabile.
Ora controllo giocando se la cosa ha senso.
ma a me sembra strano che sia un problema dovuto alla cancellazione causa flashing gem, voglio dire, la cancellazione e la caduta sono due operazioni separate, quindi, a prescindere da come siano state cancellate le gemme sotto, la gemmona deve scendere per bene allo stesso modo........
Aggiunti bug 5) e 6). Mi confermate che 4) e' fissato?
è tutto il pomeriggio che provo a creare questa situazione....ma da solo faccio una fatica esagerata e nonci resco mai!!!!
Qualcuno controlli perchè il bug dovrebbe essere risolto...ma nessuno mi ha mai dato conferma.
Altra cosa....ogni tanto mi rimangono freezed i controlli...ovvero se premo giù il gioco si comporta come se il tasto fosse ancora premeuto anche se non lo è.
La tastiera è vecchiotta...quindi potrebbe essere anche un problema mio...ma se qualcuno si mettesse a giocare fino ad addormentarsi sarebbe bello ;)
Ora scappo. CIAO
Controllo subito, mi diverto a mandare una quantità assurda all'avversario (io) :Prrr:
Ok, confermo, l'insetto è schiacciato....
Http://img169.imageshack.us/img169/4162/x8hm.jpg
è stata distrutta una big gem, cadendo si è bloccata una riga prima, il turno dopo è caduta completamente. Penso che potrebbe essere collegato a quello che si "stacca", solo che in questo caso non è scesa del tutto...
Http://img169.imageshack.us/img169/4162/x8hm.jpg
è stata distrutta una big gem, cadendo si è bloccata una riga prima, il turno dopo è caduta completamente. Penso che potrebbe essere collegato a quello che si "stacca", solo che in questo caso non è scesa del tutto...
Log grazie ;)
Almeno sappiamo come le gemme hannoprodotto quel risultato
Argh...ora devo riuscire riprodurlo....vabbè, dovrebbe essere "facile" :Prrr:
Quello che non mi piace è il freeze di tastiera, a volta partono e cadono da sole a velocità max, non capendo più nulla -.-
Mi ero quasi dimenticato. La JVM su linux crasha sistematicamente ogni volta che si esce dal gioco. 
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0x9989acf4, pid=18773, tid=2576755632
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# C  0x9989acf4
#
# An error report file with more information is saved as hs_err_pid18773.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
succedeva anche prima della first playable.
Ho messo un breakpoint in quit(). Il gioco funziona senza problemi, esce da quit, poi esce da main e si infila in una funzione exit() di Thread.java quando esce da questa funzione la vm crasha e viene creato il classico file hs_err_.... 
ciao ;)
Uhm...più tosto di quanto pensavo, a quanto pare non succede ogni volta che una biggem cade distruggendo quella sotto, ma sotto determinate condizioni (che devo ancora trovare ^^)
Però ho scoperto (forse) a cos'è dovuto il fatto che "si blocca" la velocità a quella massima...o almeno, mi è capitato (guardando le due griglie insieme) di vedere che succede quando viene creata la pair mentre cadono stone all'avversario...bisogna controllare, però prima è capitato sempre in quel momento...
BlueDragon
27-04-2006, 23:09
Volete un sistema sicuro per far incantare la tastiera?
Facile, basta che mentre stai premendo un tasto, clicchi su un'altra finestra e poi lasci il tasto. L'evento di release viene catturato quindi dall'altra finestra e per Diamonds il tasto rimane pressed finché non lo ripremi e rilasci di nuovo stando sulla finestra di Diamonds.
Se passi a un'altra finestra ok...ma se resti sempre in diamonds non è molto normale ^^
Volete un sistema sicuro per far incantare la tastiera?
Facile, basta che mentre stai premendo un tasto, clicchi su un'altra finestra e poi lasci il tasto. L'evento di release viene catturato quindi dall'altra finestra e per Diamonds il tasto rimane pressed finché non lo ripremi e rilasci di nuovo stando sulla finestra di Diamonds.
CASPITA....questo è verissimo.
Direi che è un bel Bug.
La cosa problematica però e che quello che è stato segnalato fino adesso è avvenuto usando sola la finestra del gioco...senza alcun click "all'esterno".
Questo della tastiera e' un bug di lwgl o nostro? Abbiamo tempo fino a stasera per scoprirlo.
Non è possibile catturare il "lost focus" e imporre il rilascio di tutti i tasti quando la finestra è in secondo piano?
Inoltre, ma qui non vorrei dire una scemenza, se è vero che l'accelerazione di gravità per le stone fa accelerare anche la coppia, ci conviene fare in modo che questa diventi un attributo dei singoli droppables, invece che della griglia.
Catturare o meno il focus dipende dalla libreria che usiamo. Ci sara' un modo per metterla in exclusive spero.
Per la seconda parte, direi che non abbiamo tempo per la FP.
Mancano solo 5 e 6, giusto?
Dai bug report sono emersi altri bacherozzi non inclusi nell'elenco?
Fino adesso non ho trovato il modo per catturare il lost focus..
Mancano solo 5 e 6, giusto?
Dai bug report sono emersi altri bacherozzi non inclusi nell'elenco?
Manca questo http://www.hwupgrade.it/forum/showpost.php?p=12161072&postcount=36 anche se non è importante. Il gioco funziona ma riempie la cartella del gioco di file di report da mancadare a quelli di java.
ciao ;)
Hmm, non trovo più i test sulla ripetizione dei tasti :P
Manca questo http://www.hwupgrade.it/forum/showpost.php?p=12161072&postcount=36 anche se non è importante. Il gioco funziona ma riempie la cartella del gioco di file di report da mancadare a quelli di java.
ciao ;)
Known Issue: 
- The VM crashes on linux after quitting the game
Work Around:
- Install Windows, Setup, Next Next Next...
Sono troppo Corporate in questi giorni :D
Sono troppo Corporate in questi giorni :D
Sara colpa delle statue sudate di Balmer che ti hanno messo in ufficio :D
ciao ;)
Non è possibile catturare il "lost focus" e imporre il rilascio di tutti i tasti quando la finestra è in secondo piano?
Inoltre, ma qui non vorrei dire una scemenza, se è vero che l'accelerazione di gravità per le stone fa accelerare anche la coppia, ci conviene fare in modo che questa diventi un attributo dei singoli droppables, invece che della griglia.
Non penso sia quello il problema...ovvero è capitato anche che rimanesse bloccata la rotazione della gemsPair, ovvero girava com euna trottola, e non dipende dalla gravità di grid.
in ogni caso sono 2 Grid separate...quindi il problema non dovrebbe manco esistere ;)
Mi date un aggiornamento su 5) e 6)?
Chiudiamo stasera alle 22 CEST.
Cattive notizie...
...più che aggiornare sullo stato degli altri, vi passo questo bug segnalatoci
http://www.hwupgrade.it/forum/showpost.php?p=12163623&postcount=30 
Altra cosa....sul forum, dopo la FP, c'è un po' di confusione.
Ogni topic parla di 4 o 5 cose diverse sovrapponendosi.
Moderatori...è possibile fare un po' d'ordine ?? :D :D
Si', abbiamo bisogno di un po' d'ordine dopo la confusione della FP. E' colpa mia che non ho chiarito bene i ruoli di ogni topic.
Il bug di Manp dev'essere vagliato da Joc, ma sicuramente non ce ne occupiamo per questo update della FP.
Si', abbiamo bisogno di un po' d'ordine dopo la confusione della FP. E' colpa mia che non ho chiarito bene i ruoli di ogni topic.
Il bug di Manp dev'essere vagliato da Joc, ma sicuramente non ce ne occupiamo per questo update della FP.
Il bug di Manp va fixato assolutamente, ma non facciamo in tempo a farlo oggi.
Come siamo messi con i bug 5 e 6?
sto vedendo per il 6, ma ancora sono in alto mare, abbiamo poche informazioni, se qualcuno ha qualche idea.....
Ecco il bug delle BigGem...
http://img135.imageshack.us/img135/7899/biggemfallbug9ux.th.jpg (http://img135.imageshack.us/my.php?image=biggemfallbug9ux.jpg)
..ma ora ho anche il log ;)
Ecco altri 2 problemini
1) Eccezione quando minimizzo la finestra del gioco:
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_INT_DIVIDE_BY_ZERO (0xc0000094) at pc=0x691e1c06, pid=3312, tid=2324
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# C  [atioglxx.dll+0x1e1c06]
#
2) Ogni tanto mi è capitato qualcosa di strano con le stone e il gameOver.
Ovvero è capitato che le stone riempissero la prima riga e poi venisse un bellissimo game over con le stone appesse...cioè che avevano spazio per poter cadere.
Non sono ancora riuscito a riprodurlo e a farne uno screenshoot
Per me è un problema di questa riga di codice (fatta da me  :cry: )
            if(heights[4]==14)
            {
                return gameOverState;
            }
Quell'heights memorizza le altezze terminato l'inserimento delle stones, ripeto, solo l'INSERIMENTO.
if(heights[4]==14)
            {
                return gameOverState;
            }
Lo sai che questa riga di codice con un numero magico 14 e heights con un 4 dentro non mi sta comunicando assolutamente nulla vero? ;)
Riscrivila subito!
Sono conla giacca addosso...sto proprio uscendo  :cry: 
A stanotte :D
ragazzi, non sono in grado di fixare il bug per stasera, mi dispiace.. :( .ho committato un paio di refactoring, compreso una modifica al codice postato da Bonfo.....
Ok, fra un'ora chiudiamo e fra domani e dopodomani Jocchan testa la build e ci da' l'ok per il rilascio.
1.0a chiusa, quindi?
Qual è la lista definitiva degli update dalla 1.0?
Mi hanno detto che il bug dei tasti freezed non capitava mai nella FP rilasciata...o meglio, non si è mai presentato.
Quindi molto probabilmente è causa di uno dei nostri refactoring.  :doh:
Mi hanno detto che il bug dei tasti freezed non capitava mai nella FP rilasciata...o meglio, non si è mai presentato.
Quindi molto probabilmente è causa di uno dei nostri refactoring.  :doh:
Questa e' una cosa molto brutta. Preferirei non rilasciare in queste condizioni. Joc?
Ecco un altro regalino per quelli a cui piace andare a caccia di insetti...
... o meglio prima bisogna capire qual'è l'insetto e bisogna chiederlo a Jocchan  :D 
Mi è caduta una GemsPair (CHEST_ROSSO, FLASHING_GEM).Nell'immagine si vede come la falshingGem non abbia "reagito" a contatto delle sole stones.
Ora però quando la flashingGem va a contatto con le gemme, ad esempio, rosse, tutti i droppable rossi, quindi anche stones, vengono eliminati.
Qual'è dei due i bug???
BlueDragon
29-04-2006, 00:26
Wow, bel colpo Bonfo :)
Confermo che quando la flashing gem tocca solo stones, si comporta differentemente da quando è associata ad una compagna pair.
Senza pair ignora le stones, con la pair, considera le stones toccate per la scelta del colore da distruggere.
Ecco un altro regalino per quelli a cui piace andare a caccia di insetti...
... o meglio prima bisogna capire qual'è l'insetto e bisogna chiederlo a Jocchan  :D 
Mi è caduta una GemsPair (CHEST_ROSSO, FLASHING_GEM).Nell'immagine si vede come la falshingGem non abbia "reagito" a contatto delle sole stones.
Ora però quando la flashingGem va a contatto con le gemme, ad esempio, rosse, tutti i droppable rossi, quindi anche stones, vengono eliminati.
Qual'è dei due i bug???
In questo caso il comportamento è corretto. La flashing gem puo cancellare solo le gemme. Se viene a contatto con delle stone non deve reagire ed aspettare di essere toccata da qualche gemma. Se quando tocca una gemma rossa cancella anche le stone rosse allora il bug è questo.
ciao ;)
Questa e' una cosa molto brutta. Preferirei non rilasciare in queste condizioni. Joc?
Sono d'accordo, è un bug troppo pesante per introdurlo. A questo punto, rimandiamo la 1.0a e lo risolviamo prima di rilasciarla.
Per quel che riguarda la flashing e le stone, anche se non era stato richiesto esplicitamente era quello a cui volevo, almeno inizialmente, arrivare.
Non è una contraddizione, perchè le stone continuano ad essere cancellate esclusivamente "di riflesso", e mai direttamente, e ci consente sia di poter conservare le flashing, per sfruttarle strategicamente in seguito, che di eliminare stone in caso di pericolo. Quindi, nel bilanciamento attuale, direi che ci sta tutto.
Se, continuando a testare, dovessimo trovare la cosa "strana" o poco naturale, allora cambieremo questo comportamento, ma per ora continuerei tranquillamente così.
EDIT: Come non detto, parlando con BD mi ha spiegato che la situazione è leggermente diversa. Poniamo che la coppia abbia una flashing e una gemma gialla, e si faccia poggiare la flashing su una stone rossa.
Se la gialla continua a cadere per i fatti suoi, allora la flashing deve stare sulla rossa, in attesa di essere innescata da un'altra gemma o baule.
Se la gialla resta unita alla flashing, questa deve eliminare tutte le gemme e le stone gialle, ma non le stone rosse, che non c'entrano nulla.
Da quanto mi dice BD ora (ed è strano, visto che ho fatto diverse prove per accertarmi che funzionasse), attualmente la flashing elimina la stone rossa (e le gemme di colore rosso). Questo comportamento è errato.
Non so se il bug sia stato introdotto in seguito, ma visti questi due dettagli sono sempre più convinto che, nonostante i fix importanti che abbiamo fatto, non ci convenga rilasciare adesso la 1.0a, dato che potremmo aver introdotto persino più seccature di prima.
Da quanto mi dice BD ora (ed è strano, visto che ho fatto diverse prove per accertarmi che funzionasse), attualmente la flashing elimina la stone rossa (e le gemme di colore rosso). Questo comportamento è errato.
io all'epoca avevo capito che il comportamento doveva essere questo!(nn ricordo se quest'esatto task l'ho fatto io ma puo essere).
cmq ci do un occhiata.
...
....
mi correggo, il comportamento nel metodo è giusto, se è una stone non la cancello...
provo a vedere che nn sia inizializzato male il type
Questa e' una cosa molto brutta. Preferirei non rilasciare in queste condizioni. Joc?
Anche nel mio piccolo sarei per rilasciare in seguito, soprattutto per il problema della tastiera... quando iniziano a cadere a velocità massima è "ingiocabile" :(
per quanto riguarda il bug 6, penso sia dovuto a delle incongruenze nelle coordinate, in particolare questo codice non mi convince:
    private float getRowHeight(final int row)
    {
        return row * getYStep();
    }
    public boolean checkAgainstRowHeight(int row, float height)
    {
        return getRowHeight(row) - height >= 0;
    }
è stato tolto il "+ bounds.top()" da bonfo per correggere il bug 16, ma penso che la causa del bug 16 doveva essere trovata altrove, come valore d height nel chiamare  checkAgainstRowHeight viene usato getSprite().getY() che include il valore di bounds.top(), quindi ritengo sia scorretto non considerarlo in questi metodi, cosa ne pensate!?
2) Ogni tanto mi è capitato qualcosa di strano con le stone e il gameOver.
Ovvero è capitato che le stone riempissero la prima riga e poi venisse un bellissimo game over con le stone appesse...cioè che avevano spazio per poter cadere.
Non sono ancora riuscito a riprodurlo e a farne uno screenshoot
Per me è un problema di questa riga di codice (fatta da me  :cry: )
            if(heights[4]==14)
            {
                return gameOverState;
            }
Quell'heights memorizza le altezze terminato l'inserimento delle stones, ripeto, solo l'INSERIMENTO.
Ecco...niente screenshoot.
Ma ora ho un test che fallisce  :sofico:  :sofico: 
Confermatemi la correttezza del test:
    public void testStonesFallWhenPassingToGameOverState()
    {
        controller.setIncomingStones(13*8+5);
        controller.update(environment.getTimer());
        
        while(!(grid.isGemAt(0,4) && grid.getGemAt(0,4).isNotFalling()))
        {
            controller.update(environment.getTimer());
        }
        controller.update(environment.getTimer());
        assertTrue("The game must pass to GameOver", controller.isGameOver());
    }
Il problema è dove è messo il controllo in StoneFallState.
Probabilmente questo test  "sovrascrive" quest'altro test: testPassToGameOverState
Ora volo fuori...stanotte controllo sia che il nuovo test copra quello vecchio e poi, ovviamente, lo faccio passare :D :D
Mi aggiornate sulla situazione attuale, per favore?
allora, ho ripristinato in locale la modifica che risolveva il vecchio bug 16, e ne sto cercando le cause altrove...penso che questo sia anche una causa del bug 6, vedremo..non penso di riuscire a fare un test che lo evidenzi entro stasera... :(
BD ha chiuso due grossi bug. Sono un po' nervoso a rilasciare domani con un solo giorno di testing.
Abbiamo tre soluzioni:
1) Rilasciare comunque domattina e testare oggi
2) Rilasciare martedi' mattina e testare per due giorni
3) Non rilasciare
La 1) mi innervosisce un po', la 2) e' contro il principio secondo il quale in questo progetto non voglio far slittare una singola data per alcun motivo. Il 3) sprecherebbe il gran lavoro che avete fatto in questa settimana.
Al momento sono piu' propenso verso 1) perche' non annunciamo questa release e non dovrebbe creare grossi danni, ma rilasciare qualcosa al pubblico del quale non sono certo al 100% non mi piace molto. Ditemi voi.
Ecco...niente screenshoot.
Ma ora ho un test che fallisce  :sofico:  :sofico: 
Confermatemi la correttezza del test:
    public void testStonesFallWhenPassingToGameOverState()
    {
        controller.setIncomingStones(13*8+5);
        controller.update(environment.getTimer());
        
        while(!(grid.isGemAt(0,4) && grid.getGemAt(0,4).isNotFalling()))
        {
            controller.update(environment.getTimer());
        }
        controller.update(environment.getTimer());
        assertTrue("The game must pass to GameOver", controller.isGameOver());
    }
Il problema è dove è messo il controllo in StoneFallState.
Probabilmente questo test  "sovrascrive" quest'altro test: testPassToGameOverState
Ora volo fuori...stanotte controllo sia che il nuovo test copra quello vecchio e poi, ovviamente, lo faccio passare :D :D
Ieri ho notte ho risolto questo test.
Avevo pure postato sul forum..ma si vede che già dormivo e non ho fatto "invia risposta"  :fagiano: 
Siccome il nuovo test comprende il vecchio l'ho sostituito.
La soluzione: è stato sufficente togliere il controllo sul GameOver dall'if relativo all'inserimento delle Stone.
Vado farmi 2 giorni di vacanza  :D ...quindi non posso fare testing :(
Secondo me si potrebbe rilasciare domani...siamo in sviluppo quindi gli utenti lo sanno che i bug ci sono.
In ogni caso dobbaimo arrivare alla alpha....quella dovremmo rilasciarla,no?!... :stordita: Semmai recuperiamo ;)
Da quanto mi dice BD ora (ed è strano, visto che ho fatto diverse prove per accertarmi che funzionasse), attualmente la flashing elimina la stone rossa (e le gemme di colore rosso). Questo comportamento è errato.
non riesco a riprodurre questo questo bug(ne con test ne giocando), l'ha gia risolto qualcuno?
ecco il test
    public void testStoneNotCrushingOnFlashAndNotBlockOtherGemCrush()
    { 
        insertAndUpdate(createStone(DIAMOND), 13, 0);
        insertAndUpdate(createFlashingGem(), 12, 0);
        insertAndUpdate(createGem(RUBY), 11, 0);
        
        insertAndUpdate(createGem(RUBY), 13, 2);
        insertAndUpdate(createGem(DIAMOND), 13, 6);
       
        
        grid.updateCrushes();
        
        assertEquals("Grid must contain 2 elements", 2, grid.getNumberOfDroppables());
    }
BlueDragon
30-04-2006, 13:55
non riesco a riprodurre questo questo bug(ne con test ne giocando), l'ha gia risolto qualcuno?
ecco il test
    public void testStoneNotCrushingOnFlashAndNotBlockOtherGemCrush()
    { 
        insertAndUpdate(createStone(DIAMOND), 13, 0);
        insertAndUpdate(createFlashingGem(), 12, 0);
        insertAndUpdate(createGem(RUBY), 11, 0);
        
        insertAndUpdate(createGem(RUBY), 13, 2);
        insertAndUpdate(createGem(DIAMOND), 13, 6);
       
        
        grid.updateCrushes();
        
        assertEquals("Grid must contain 2 elements", 2, grid.getNumberOfDroppables());
    }
Se ci sono sia 2 DIAMOND che 2 RUBY in questo test, come si fa a capire quale colore la Flashing ha deciso di distruggere? :)
Comunque ho lanciato questo test e rifatto delle prove e mi sa che avevo visto male l'altro giorno :)
La flashing distrugge correttamente il colore della compagna di pair quando atterra su un letto di stones.
Se ci sono sia 2 DIAMOND che 2 RUBY in questo test, come si fa a capire quale colore la Flashing ha deciso di distruggere? :)
Comunque ho lanciato questo test e rifatto delle prove e mi sa che avevo visto male l'altro giorno :)
La flashing distrugge correttamente il colore della compagna di pair quando atterra su un letto di stones.
in effetti avevo prima fatto il test con solo la diamond stone, poi per curiosita l'avevo fatto aggiungendo una diamond gem, e alla fine ho postato quello...
Secondo me si potrebbe rilasciare domani...siamo in sviluppo quindi gli utenti lo sanno che i bug ci sono.
Leggi le news di HWUPG e ti accorgi come anche sedicenti esperti non sanno che i bug nel software ci sono ;)
Leggi le news di HWUPG e ti accorgi come anche sedicenti esperti non sanno che i bug nel software ci sono ;)
Io propendo per la 1 a patto che non ci siano gravi bug
sono sempre più convinto che ci sia un po di confusione nelle cordinate tra il codice facente parte delle bigGem e quello delle gemme...sto cercando di capire dove sta il problema....vedremo....
Soluzione di compromesso: rilasciamo lunedì alle 22 CEST. Che ne dite?
Rilasciamo fra tre cicli una versione con i menu, i bug fix e web start. Domani le nuove Storie e si riparte con lo sviluppo.
Rilasciamo fra tre cicli una versione con i menu, i bug fix e web start. Domani le nuove Storie e si riparte con lo sviluppo.
Con domani intendevi dire oggi cioè lunedì vero?
ciao ;)
Con domani intendevi dire oggi cioè lunedì vero?
ciao ;)
Vuol dire subito, sto postando le nuove storie ;)
Con domani intendevi dire oggi cioè lunedì vero?
ciao ;)
Si' :P
Che dite sposto i due thread sulla first playable e quelli dei 5 bug in Archivio cosi non li perdiamo?
ciao ;)
Che dite sposto i due thread sulla first playable e quelli dei 5 bug in Archivio cosi non li perdiamo?
ciao ;)
Ottima idea :)
Notte ;)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.