07-01-2015, 11:30 AM
Hey !
J'ai encore une petite question pour le bon développement de mon jeu
Comme je vous l'avais déjà expliqué, il s'agit d'un wargame en PHP, et il est possible de gérer plusieurs serveurs (chaque serv à sa BDD). Avec ceux-ci, j'ai une BDD de référence (que j'appelerai Ref) où je stocke tout ce qui est commun à chaque serveur (les bâtiments à construire, les utilisateurs (qui peuvent jouer sur plusieurs serveurs avec un seul compte user)).
C'est sur cette dernière (Ref) que je me pose des questions sur sa réelle utilité :
Tout le contenu de ma DB Ref est statique, hormis les comptes des utilisateurs.
En effet, tous les bâtiments etc ne changeront que très peu (pour l'équilibrage ou nouveaux bâtiments, quêtes etc), donc je me demandais si, selon vous, l'emploi d'une DB est bien adapté :
Le point positif à la DB est que les requêtes sont plus faciles (jointures toussa), bien que j'utilise un ORM assez simple, alors pour join 2 bases ça me demande un peu de boulot.
Le point négatif est que (je pense) l'accès à la DB reste plus long que l'accès à un fichier dur, surtout avec plusieurs DB et tables.
La raison me pousse à continuer dans ma lancée (sortir un proto le plus vite possible, hein Xenos ), mais en même temps si je décide un jour de virer les bâtiments de Ref pour les mettre en fichier, ça va me demander un boulot juste titanesque..
Sortir un prototype rapidement, c'est bien, mais si le code généré derrière est impossible à maintenir/faire évoluer, où est le gain ?
HS : Je pense par exemple à Destinee Online qui, d'après ce que j'en sais, ont fait un très bon jeu, mais le code trop 'complexe' n'a jamais permit de faire évoluer le jeu.. On sait où ça en est
Sinon, si les fichiers étaient choisis, pensez vous qu'il est plus agréable de travailler avec des fichiers simples (qui ne contiennent que des variables) qu'avec des classes ?
Perso je pensais me tourner vers un système de :
- Je créé plusieurs classes (mères), une par type de bâtiment (une pour les habitations, une pour les bâtiments de prod, de guerriers etc). Ces classes implémentent les méthodes de ce type de bâtiment, comme ça pas besoin de me les retaper dans chaque classe enfant, vu qu'elles font toutes le même taf.
- Chaque bâtiment possède sa propre classe, classe fille du type de bâtiment.
- Chaque classe (enfant) possède ses attributs, donc il est facile de savoir et gérer les gains, le prix etc de chaque bâtiment.
Ou alors créer des fichiers simples, qui contiendraient des array avec les bâtiments, valeurs etc ?
Je me répète, mais je n'ai pas envie de continuer dans ma lancée et m'apercevoir dans 6 mois/1 an que le système doit être revu, car c'est une très grosse partie du code qu'il faudrait réviser.
Merci !
J'ai encore une petite question pour le bon développement de mon jeu
Comme je vous l'avais déjà expliqué, il s'agit d'un wargame en PHP, et il est possible de gérer plusieurs serveurs (chaque serv à sa BDD). Avec ceux-ci, j'ai une BDD de référence (que j'appelerai Ref) où je stocke tout ce qui est commun à chaque serveur (les bâtiments à construire, les utilisateurs (qui peuvent jouer sur plusieurs serveurs avec un seul compte user)).
C'est sur cette dernière (Ref) que je me pose des questions sur sa réelle utilité :
Tout le contenu de ma DB Ref est statique, hormis les comptes des utilisateurs.
En effet, tous les bâtiments etc ne changeront que très peu (pour l'équilibrage ou nouveaux bâtiments, quêtes etc), donc je me demandais si, selon vous, l'emploi d'une DB est bien adapté :
Le point positif à la DB est que les requêtes sont plus faciles (jointures toussa), bien que j'utilise un ORM assez simple, alors pour join 2 bases ça me demande un peu de boulot.
Le point négatif est que (je pense) l'accès à la DB reste plus long que l'accès à un fichier dur, surtout avec plusieurs DB et tables.
La raison me pousse à continuer dans ma lancée (sortir un proto le plus vite possible, hein Xenos ), mais en même temps si je décide un jour de virer les bâtiments de Ref pour les mettre en fichier, ça va me demander un boulot juste titanesque..
Sortir un prototype rapidement, c'est bien, mais si le code généré derrière est impossible à maintenir/faire évoluer, où est le gain ?
HS : Je pense par exemple à Destinee Online qui, d'après ce que j'en sais, ont fait un très bon jeu, mais le code trop 'complexe' n'a jamais permit de faire évoluer le jeu.. On sait où ça en est
Sinon, si les fichiers étaient choisis, pensez vous qu'il est plus agréable de travailler avec des fichiers simples (qui ne contiennent que des variables) qu'avec des classes ?
Perso je pensais me tourner vers un système de :
- Je créé plusieurs classes (mères), une par type de bâtiment (une pour les habitations, une pour les bâtiments de prod, de guerriers etc). Ces classes implémentent les méthodes de ce type de bâtiment, comme ça pas besoin de me les retaper dans chaque classe enfant, vu qu'elles font toutes le même taf.
- Chaque bâtiment possède sa propre classe, classe fille du type de bâtiment.
- Chaque classe (enfant) possède ses attributs, donc il est facile de savoir et gérer les gains, le prix etc de chaque bâtiment.
Ou alors créer des fichiers simples, qui contiendraient des array avec les bâtiments, valeurs etc ?
Je me répète, mais je n'ai pas envie de continuer dans ma lancée et m'apercevoir dans 6 mois/1 an que le système doit être revu, car c'est une très grosse partie du code qu'il faudrait réviser.
Merci !