TourDeJeu, le réseau des jeux en ligne alternatifs : jeux web multijoueurs, jeux par forum. En savoir +

Flux RSS des discussions du forum : pour les joueurs, et pour les créateurs et MJ
  Reply to this topicStart new topicStart Poll

> Flash Et Php
Dimitri Mouche
Ecrit le : Jeudi 18 Novembre 2004 à 11h34
Quote Post


Kid
*

Groupe : Membre
Messages : 21


Bonjour

Mon jeu est un jeu écrit en php sur une base de données. Jusque la, rien de tres nouveau.
On travaille en ce moment pour créer une double interface : flash ou html

Actuellement pour utiliser les données par flash, on est obligé de construire une page xml pour recueillir les données, qui ensuite, seront utilisées par flash.
Hors, je ne vois pas l'intéret de construire ce fichier xml pour ensuite générer du html, puisque le php le fait tres bien déjà.

J'ai donc les 2 options suivantes qui ne me conviennent pas ni l'une ni l'autre :
Soit je duplique tous les fichiers (un fichier php qui génère du html, un autre qui génère du xml), et donc, pour la maintenance, je double le travail !
Soit je ne génère en php qu'un seul fichier xml, qu'ensuite, j'utilise pour générer soit du html soit du flash. Le pb, est alors que cela complique le processus inutilement pour les utilisateurs de html.

Quelqu'un a une solution adaptée ?

PS : Je précise que je ne connais quasi rien en flash (ma partie est plutot le php et la BD) mais c'est une autre personne qui s'occupe de ce volet !


--------------------
Viendez visiter un petit jeu sans prétention : Donjons & Parpaings
PMEmail Poster
Top
Angelus
Ecrit le : Jeudi 18 Novembre 2004 à 12h06
Quote Post


Ouf
*

Groupe : Membre
Messages : 216


Salut,

Question bête... pourquoi utiliser du XML ?

Je verrais bien le PHP pour être utilisé par le html et le flash ^^

Je connais pas XML donc si c'est mieux sous Flash de charger les variables qu'un fichier php c'est à vous de voir pour votre jeu. wink.gif


Le XML serait généré chaque X minutes ? Donc le flash ne serait pas vraiment à jour à chaque passage du visiteur, hors en utilisant un fichier php ça s'afficherait avec les données exactes de la base de donnée.


--------------------
PMEmail PosterUsers Website
Top
Dimitri Mouche
Ecrit le : Jeudi 18 Novembre 2004 à 14h20
Quote Post


Kid
*

Groupe : Membre
Messages : 21


Ben, comme je l'ai déjà dit, je ne connais pas grand chose au flash. Mais celui qui connait me dit que pour rappatrier les données dont il a besoin, le plus simple est de faire appel a une page xml.

Sinon, par quel biais tu rappatries les données dont tu as besoin dans l'objet flash ?

Bon, pour éviter que cette discution ne tourne rapidement au dialogue de sourd, et vu que si je comprends tout, il semblerait que l'on puisse utiliser des variables php dans du flash, je vais me renseigner plus avant de continuer sur ce sujet (toujours tourner ses mains 7 fois dans son dos avant de demander de l'aide ! whistling.gif )



--------------------
Viendez visiter un petit jeu sans prétention : Donjons & Parpaings
PMEmail Poster
Top
Angelus
Ecrit le : Jeudi 18 Novembre 2004 à 15h03
Quote Post


Ouf
*

Groupe : Membre
Messages : 216


Oui on peut utiliser une page php pour aller chercher les variables via flash. Je suis pas un pro en flash mais avec les fonctions getvariables (ou quelque chose du genre) sur un fichier php j'arrive à charger les variables qu'il génère.

Et à propos de ma question : "Le XML serait généré chaque X minutes ?" ?


--------------------
PMEmail PosterUsers Website
Top
Kalan
Ecrit le : Jeudi 18 Novembre 2004 à 16h34
Quote Post


Ouf
*

Groupe : Membre
Messages : 566


Heu... Si je comprends bien, l'interface flash doit récupérer des données en provenance de ta base de données ?

Moi je fais ca pour la carte Flash de Gloire et Pouvoir.

En fait, dans le programme flash, on fait un openfile('http://www.gloireetpouvoir.page_parametre.php?liste_param')

La page page_parametre.php génère bêtement un flux texte contenant les variables et leur valeurs du genre :
@variable1=toto
@variable2=titi

Et dans flash, on sait parfaitement exploitement ces variables.
Je n'y connais rien en flash non plus; mais je sais que c'est comme ca que ca marche pour ma carte flash ;-).



--------------------
Kalan de Vitall - Eternel roi de Scandinavie et d'Europe
Gloire et Pouvoir

user posted image
PMEmail PosterUsers Website
Top
Mouton
Ecrit le : Jeudi 18 Novembre 2004 à 21h27
Quote Post


Pro
*

Groupe : Membre
Messages : 78


Il y à plusieurs possibilités. Mais il y en a une autre encore, qui permet à flash d'afficher directement du html, et gere une partie des CSS également (si je ne dit aps de betises, mais je n'ai jamais essayé les CSS par contre)... ça reglerait pas directement le problême? huh.gif
Bonne chance!


--------------------
Lorsque l'on vous offre une seconde chance,
ne passez surtout pas à côté!

user posted image
PMEmail PosterUsers Website
Top
gorgu
Ecrit le : Samedi 20 Novembre 2004 à 01h48
Quote Post


Unregistered






bien bien bien wink.gif

alors oui tu devra entretenir 2 versions si tu décide de passer la carte en flash.

J'ai mis cela sur adept depuis ... longtemps smile.gif et j'ai finit par virer la version php pour ne garder que la version flash

mais je n'ai mis que la carte en flash.

Avec php tu va te generer un petit fichier xml afin de donner se qu'il se trouve sur la carte
Avec flash tu va aller cherger le xml
Ensuite tu va redecouper toute les données etc (c'est le bordel cela wink.gif)

pourquoi xml? parce que flash c'est bien lire l'xml
pourquoi ne pas se connecter direct à la base de donnée? gros soucis de sécu car flash tourne chez le joueur.

l'avantage de flash: les animations.. (ouaif) et surtout la génération graphique tourne chez le joueur pas sur le serveur.

w00t.gif (rien c'est juste que je trouve ce smile joli wink.gif )
Top
zumba
Ecrit le : Samedi 20 Novembre 2004 à 14h40
Quote Post


Ouf
*

Groupe : Membre
Messages : 496


autre avantage avec flash : un lissage gouraud et une fonctionalité de zoom implicite qui rend super bien...

par contre les animations c'est carrément compliqué , ca demande une programation spécifique avec timers et tout -> grosse galère. alors qu'en html tu te contente d'afficher un gif animé comme une image normale...

mais attention, pour avoir éssayé de refaire mon moteur de carte à la base en JS en flash, j'ai été super décu par la performance. Il faut dire que flash est fait pour du graphisme vectoriel et non pour afficher des matrices de bitmaps...

bref les 2 moteurs sont équivalents, avantage a flash sur l'ergonomie car tu scrolles ta carte en glissant déplacant (et ca va quand meme un peu plus vite, surtout sur une petite machine) ce qui est fort commode. Mais dans mon moteur flash, pas d'animation.... de plus les interactions de la carte en flash avec le reste de la page (html JS) demande une bonne prise de tête supplémentaire.

mais tout ca est pondéré par l'objet intégré scrollpan de flash avec un mask par dessus. il y a ptet un moyen plus efficace de faire ca, par exemple en reprogrammant de 0 un scrollpan ?



--------------------
Z
PMEmail Poster
Top
Dimitri Mouche
Ecrit le : Lundi 22 Novembre 2004 à 15h11
Quote Post


Kid
*

Groupe : Membre
Messages : 21


QUOTE (gorgu @ 20 Nov 2004, 01:48 )


QUOTE
alors oui tu devra entretenir 2 versions si tu décide de passer la carte en flash.

Oui, c'est ce qu'il me semblerait !
Pour éviter le pb, il faudrait faire une page xml a partir des données de la base sql, puis la transformer selon l'interface demandée par l'utilisateur : flash ou html. Et je trouve dommage de générer une page au format xml (a partir du php) pour ensuite la retransformer en html derriere (et je ne parle pas du coté optimisation, ni du travail que cela demande !)
Donc, je vais etre contraint de maintenir deux versions différentes (pas top non plus sad.gif )

Pour répondre a la question pourquoi le xml, c'est effectivement parceque flash sait bien lire ce genre de fichiers.
Pour les solutions proposées (a savoir un fichier texte avec un openfile) ça revient au meme : générer un fichier tiers, pour pouvoir l'utiliser dans flash. Donc, maintenir ce fichier en plus.

Lorsque c'est juste une carte ou un seul fichier, ça va, les changements sur les regles de gestion de l'affichage de la carte ne doivent pas changer tous les jours. Mais comme on s'attaque à toutes les pages du jeu (feuille de perso, équipement carte,etc...) on se pose la question sur ce qui est le plus rentable !

En gros, le pb, c'est que l'on ne peut pas utiliser le langage sql directement dans un objet flash (chose qui résoudrait directement tous mes pbs !), mais là, je ne pense pas que ce soit possible !



--------------------
Viendez visiter un petit jeu sans prétention : Donjons & Parpaings
PMEmail Poster
Top
gorgu
Ecrit le : Mardi 23 Novembre 2004 à 01h12
Quote Post


Ouf
*

Groupe : Membre
Messages : 417


cela existe avec mx et un librairie php... mais je penses qu'il doit y avoir de jolis trous de sécu la dessous.

j'ai passé smiles en flash (pour faire mumuse avec flash) et si j'avais su... snif... j'aurais tout fais en flash direct... de A à Z sans passer par le html et ses navigateurs divers et veriés qui ne veulent pas des tableaux ou iframes, des transparences, des css incopatibles des images qui clignotent sous ie etc etc ...

la seule fonction a connaitre sous flash est

function chargerfichier(url)
{
loadVarsText = new LoadVars();
loadVarsText.load(url);
//assign a function which fires when the data is loaded:
loadVarsText.onLoad = function(success) {
if (success) {
//Now that we know the data is loaded,
//set the text content of the Text Field
//with the instance name "scroller" equal to the
//contents of the variable
scrooler.html=true;
scroller.htmlText = this.actions;
vie = this.vie; viemax = this.viemax;pd=this.pd;pa=this.pa;
xp=this.xp;jetons=this.jetons;he=this.he;tr=this.tr;
} else {
scroller.htmlText = "Pas de connexion serveur";
}
};
}

et pour ton php il est simpliste.

<?
connecte toi

verifit les comptes etc

// requete sur le perso vie etc etc
switch($action)
{
case"jebute";
//ton petit script rapide voir sujet sur l'optimisaiton dans le coin
if($ki=="toto")$msg="toto est mort";
break;
}

// requete de mise à jour si besoin

echo"actions=$msg
&vie=$vie
&pointforce= ... etc etc
?>
ensutie depuis tes boutons flash tu fais une petit on(relase){chagefichier(http//tonsite/fichiercache17793315667665.777.php?action=jebute&ki=toto);}

et ouala
tu t'occupe des inscriptions,messageries forums etc en php (c'est plus simple ;p)
et tout se où tu n'as pas besoin de input tu fait ta boite à clic dans flash avec cette architecture.

c'est super rapide: recodage de smiles en 4 heures (hors apprentissage pour trouver cette fameuse fonction)

a dernier detail... mieux que le xml, tu passe dans se même fichier et tu fait un split de ta variable pour retrouver ton tableau

carte=tavariable.split(",") par exemple... cela permets de récuperer bcp plus simplement qu'avec xml et ses parseurs .

derniers détails... il te faudra filtrer les é^&% etc ou coder tes pages en UTF-8.


(la version flash sera pas open source, j'ai vu trop de sites avec mes graphiques de fleches et mes bugs de carte php qui disaient avoir inventé cela...)


echo"bon courage";


flash permets tout de même des animations trés simplement et assez jolies... comment faire en html que le petit plus sur le quel on appuie explose sur tout la carte lorsque l'on ajoute un point d'xp ;p


--------------------
enfin je crois ...
Adept JDR
PMEmail PosterUsers Website
Top
Jim
Ecrit le : Mardi 23 Novembre 2004 à 12h09
Quote Post


Kid
*

Groupe : Membre
Messages : 39


Salut,

La c'est difficile de répondre, à mon avis tout dépend de la nature des données.

Si on considère que :

XML + Flash = Interface Utilisateur Flash
XML + XSL = Interface Utilisateur HTML

Alors, Il faudra placer le plus de logique possible avant la création du xml et le moins possible dans le Flash et XSL pour que ça devienne plus maintenable. Malheureusement, ça aura le désavantage que le xml va devenir plus grand et donc moins performant....

Une autre option serait de crée un tableau superglobal et de précalculer toutes tes valeurs dans des fonctions ou mieux des objets. Puis générer un XML pour le Flash ou directement un html en php. Ca sera moins portable, mais a priori plus performant, plus souple et t'auras moins de code à écrire par ce que générer des longs formulaires en XSL c'est assez contraignant. A l'époque je m'étais tappé toute une application en XML & XSL, mais a vrai dire c'est super pour les listes XSL, mais pour les formulaires c'est assez lourd...

Dans tout les cas, si tu places la logique le plus en aval possible, tu peux que être gagnant au niveau maintenance/débugage par la suite, et quand je dis gagnant c'est gagner au moins 10x le temps que tu as investis au départ. Ca c'est mes 5 ans d'expériences professionnels en informatique qui resortent smile.gif

J'espère avoir aidé.

A+



--------------------
Jim
__________________
http://www.stellarium.ch Le jeu des rivalités dynastiques dans un empire stellaire naissant
PMEmail PosterUsers WebsiteICQ
Top
« Sujets + anciens | Programmer | Sujets + récents »

Reply to this topicStart new topicStart Poll