Je pense que, si tu raisonnes en termes de cartes de 10x10 ou 15x15, tu devrais créer une table cartes contenant les infos sur la carte et surtout un champ avec le nombre de villages dessus. Après, si tu limites le nombre de village à 20 par exemple, tu peux faire une seule requête pour connaître la liste des cartes "non pleines" et en choisir une au hasard pour le joueur. Ensuite, tu récupères les positions des villages déjà placés sur la carte vide et tu les exclus du placement aléatoire sur la carte elle même. De cette manière, tu es sûr de ne pas avoir plus de deux requêtes (que des spécialistes de SQL pourraient peut-être ramener à une seule).
Donc pour résumer, deux requêtes :
1. les cartes dont le nombre de villages est inférieur à 20
2. les positions occupées par les villages déjà présents sur la carte sélectionnée
et 3 tables :
- joueurs
- cartes (contient le nombre de villages)
- villages (lié au joueur possesseur du village et à l'index de la carte).
Je pense que c'est un système relativement peu gourmand en ressources et facile à mettre en place pour un débutant. Cela suppose bien sur de connaître les bases de php...
Donc pour résumer, deux requêtes :
1. les cartes dont le nombre de villages est inférieur à 20
2. les positions occupées par les villages déjà présents sur la carte sélectionnée
et 3 tables :
- joueurs
- cartes (contient le nombre de villages)
- villages (lié au joueur possesseur du village et à l'index de la carte).
Je pense que c'est un système relativement peu gourmand en ressources et facile à mettre en place pour un débutant. Cela suppose bien sur de connaître les bases de php...