Visualizzazione risultati 1 fino 6 di 6

Discussione: Sviluppo di un browser game [Domande]

  1. #1
    Guest

    Predefinito Sviluppo di un browser game [Domande]

    Ciao,
    sto cercando di mettere giù un database per un possibile browser game.. e non è per niente facile, stavo pesando che potrei al posoto di salvare un elenco di informazioni su database creare un array multidimensionale per le cose per esempio:
    Codice PHP:
    $buildings = array ( "name" => array ( 'build1',
    'build2',
    'build3',
    'build4'
    )

    "img" => array ( 'image1.gif',
    'image2.gif',
    'image3.gif',
    'image4.gif'
    )

    "desc" => array ( 'Description build 1',
    'Description build 2',
    'Description build 3'
    'Description build 4'
    )
    );
    poi però mi sono detto, vabbè ma queste costruzioni fanno anche qualcosa, cioe prima di tutto e viene incrementato il livello, ma questo non è un prolema perche sraebbe su database e quindi verrebbe immagazzinata la data in cui verra portata a termine la costruzione... però stavo pensando, forse nn sarebbe meglio creare una classe chiamata costruzioni e per ogni costruzione creare una sottoclasse con il nome della costruzione? oppure è meglio creare una grande classe chiamata costruzioni dove mettere tutti i dati un po' come nel codice sopra inserndo anche i calcoli per gli upgrade i costi ecc? tipo su database dovrebbe esserci qualcosa del genere:
    id | giocatore_id | costruzione_id | livello | termine |
    dove costruzione_id è l'id della costruzione riferito all'arry sopra il livello bom dipende da quante volte ha upgrdato il giocatore termine sarebbe la data in cui aumenta il livello di 1 se 0 significa che nn sta upgradando...

    avrei bisogno di qualche consiglio suggerimento...sto pensando un po' a tutto ma sembra abbstanza complicato fare tutti i collegamenti..
    (lo faccio un po' per esercizio e per vedere cosa ne viene fuori )

    Ciaoo e grazie!

  2. #2
    Guest

    Predefinito

    Tutte le costruzioni dovranno condividere la stessa natura e lo stesso numero di proprietà, quindi avere dei livelli, avere dei costi di costruzione e magari di manutenzione, etc.
    Poi dovrai popolare queste proprietà come più ti aggrada, l'unico limite è la fantasia.


    Ciao!

  3. #3
    Guest

    Predefinito

    mi potresti fare un piccoissimo esempio di come struttureresti le classi?
    tipo qualcosa del genere:
    Codice PHP:
    class Costruzione {

    protected
    $nome,
    $livello,
    $costo;

    // Altro

    }

    class
    NomeCostruzione extends Costruzione {

    // Altro

    }
    non ho ancora guardato bene come funzionano le extends.... però non mi sembra una soluzione molto comoda, forse è più comodo fare tutto in una classe?

  4. #4
    Guest

    Predefinito

    Bè, ci sarebbero migliaia di soluzione differenti, ognuna con i suoi pro e i suoi contro.
    Così su due piedi, senza sapere che tipo di gioco è, com'è strutturato il gioco e il database, senza sapere delle esigenze che hai... è un po' difficile rispondere.

    L'esempio che hai fatto può essere valido.


    Ciao!

  5. #5
    Guest

    Predefinito

    bhè, il gioco non credo che sarà qualcosa di innovativo, almeno per quello che sto facendo, penso in stile classico, tipo hai una città"dove puoi costrutire degli efici, ampliarli e aumentarne il livello, raggiunti certi livelli si sbloccano altri edifici o altre possibilità nel gioco, tipo quella di creare un esercito ecc... quindi in "costruzione" dovro prevedere dei limiti dati da altre costruzioni, senza contare che ogni costruzione ha un costo e/o produce delle risorse, quindi dovro fare riferimento a questa/e classe per incrementare/diminuire le risorse dell'utente...

    se facessi come detto prima dovrei creare un bel po' di classi (voglio rendere il tutto un po' dimanico però, che nn ci vogliano giorni a inserire una nuova costruzione o altro):
    Codice PHP:
    class Database {
    //gestisce la connessione al database le query ecc
    }

    class
    Giocatore {
    //info sul player se è loggato o meno ecc
    }

    class
    Risorsa {
    //caratteristiche risorse (quantità)
    }

    class
    Risorsa1 extends Risorsa {
    //caratteristiche della risorsa1
    }

    class
    Costruzione {
    //caratteristiche comuni alle costruzione
    }

    class
    Costtruzione1 extends Costruzione {
    //limiti imposti ecc
    }

    class
    Truppe {
    //caratteristiche comuni a tutte le truppe (quantità, potenza, velocità, consumo di risorse e quant'altro)
    }

    class
    Truppa1 extends Truppe {
    //caratteristiche truppa1
    }

    class
    UserUI {
    //si occupa dell'interfaccia grafica del gioco
    }
    così però vengono fuori un pacco di classi e nn so se è molto utile o incasina un po tutto il gioco, poi mettiamo che io voglia stampare tutte le costruzioni in un elenco, dovrei riscrivermele tutte accedendo ad ogni singola sotto-classe di Costruzione per accedere ai dati?

    Grazie delle risposte! ciao!

  6. #6
    Guest

    Predefinito

    Non ti servono, ad esempio, tutte quelle classi estese, una per ogni tipo di risorsa o di truppa.
    Le varie caratteristiche di ognuna di esse le definirai all'interno della classe madre per poi memorizzarle nel DB. Ovviamente stiamo parlando delle caratteristiche variabili, non quelle predefinite (che dovranno risiedere staticamente da qualche parte, db o file incluso).


    ciao!

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •