Il mio livello di conoscenza e' medio basso, mi servirebbe una dritta per costruire un db relativo alle missioni del gioco indipendente complesso. Elenco le tipologie di missioni:
Tipo: STORYLINE - sono missioni che si presentano in un ordine, finita una missione, se ne sbloccano altre.
Tipo: NORMALI - missioni senza un ordine, una volta finite possono essere eliminate pure dal db.
Sono inoltre ad esaurimento posti.
Tipo: NORMALI CONDIVISE - come sopra, in piu per raggiungere l'obiettivo vale la somma dei punteggi di tutti i partecipanti.
Ci provo:
codice:
+giocatori
id_giocatore
nome_giocatore
ecc...
codice:
+Storyline
id_giocatore
id_missione_sbloccata
Con questa seconda tabella risolvo il problema delle storyline. Perche mi da il progresso della storia e le missioni storyline disponibili.
codice:
+Missioni
id_missione
id_missione_requisita
nome_missione
descrizione_missione
obiettivo_missione_1
obiettivo_missione_2
posti_liberi
missione_tipo
missione_condivisa
missione_durata
ecc...
Listone con tutte le missioni memorizzate, tipo regole del gioco.
Confrontando con "id_missione_requisita" con "id_missione_sbloccata" della tabella precedente, ottengo le missioni storyline disponibili.
Dentro a "missione_tipo" potro scrivere se "storyline" o "normale" o meglio ancora un numero identificativo. Se storyline come detto prima su filtro se e' sbloccata.
I posti liberi indica se è sempre disponibile o a esaurimento posti. Se è ad esarimento ogni volta che uno accetta il valore lo farò scendere di uno.
Usero un valore che indichi l'opzione "posti infiniti"
Ma ora mancano le informazioni sulle missioni in corso ed i progressi, quindi continuo sotto:
codice:
+Missioni_attivate
id_giocatore
id_missione_attivata
In questa tabella carico i dati quando un giocatore sceglie una missione.
codice:
+Missioni_progressi
id_missione
progresso_obiettivo_1
progresso_obiettivo_2
missione_scadenza
Questa tabella dipende dalla precedente, ma carica in più informazioni sui "progressi", confrontandoli con gli "obiettivi" della tabella missioni. Inoltre "missione_scadenza" si attiva non appena accetto una missione ed usando "missione_durata" ottengo inizio e termine della stessa.
Manca pero ID del giocatore che pero ho segnato nella tabella precedente. Non ho messo tutto assieme perche esistono le missioni condivise, dove i punteggi si sommano ed avrei duplicare dei dati per ogni partecipante.
Dentro a "progresso_obiettivo_1" e 2 potro segnare addirittura i progressi dei singoli partecipanti, se si tratta di missioni condivise,
Ci ho messo quasi 6 ore per partorire sta cosa, è terribile?