PDA

Voir la version complète : petit jeu en PHP ...



Ikaruga
09/05/2007, 18h33
Tout est dit dans le titre : je me suis amusé à créer un petit jeu en PHP sur le thème d'X3.

Il se trouve ici : http://rannat.free.fr

J'attends vos avis.


Merci

A+


EDIT : Version 1.1 : voir le change log



X – PROJECT
Jeu en PHP
Auteur : Ikaruga




Page d’accueil : Vous choisissez votre type de vaisseau, (le premier est le plus rapide et le moins puissant, le dernier est le plus lent et le plus puissant)

Page principale : elle est divisée en trois parties

- partie du haut : Affiche les informations sur le vaisseau sélectionné (vitesse, maniabilité, force …), les crédits (monnaie utilisée) et la quantité des différents minerais ramassés (minerais, silicium, nividium)
Contient également des boutons permettant de se déplacer sur la carte.

- partie du milieu : affiche la carte. Votre vaisseau y apparaît en gris, on peut y voir les astéroïdes, une station spatiale, et les vaisseaux pirates en rouge.


- Partie du bas : affiche sur quelle case vous vous trouvez. Si vous vous trouvez sur un astéroïde, vous pouvez le miner pour récupérer des minerais (type et quantité aléatoire mais plus le vaisseau est gros, plus vous en récupérerez)
Si vous vous trouvez sur un pirate, vous pouvez lui tirer dessus. Vous verrez alors le résultat


Ikaruga



A faire :

- Le jeu n’a pas de fin : y réfléchir …
- Les pirates ne bougent pas : leur faire faire un déplacement aléatoire
- La station spatiale est parfois cachée par un astéroïde : y remédier


Change log

V 1.2.a 22/05/07 :


Les vaisseaux pirates et celui du joueur ont maintenant un blindage, qui diminue pour chaque dégât encaissé. Si un vaisseau pirate est détruit, il disparaît de la carte. Si le joueur est détruit, il retourne à l’accueil.

Réglé le problème d’affichage sous Firefox

V 1.2 14/05/07 :


Possibilité de combattre les vaisseaux pirates : initiative en fonction de la vitesse du vaisseau. Si l’adversaire l’a, il fait un dégât en premier.

Nouvelle caractéristique : la vitesse. Plus elle est élevée, plus le joueur a de chances d’obtenir l’initiative.



V 1.1.a 11/05/07 :

Les images sont maintenant transparentes : quand le vaisseau du joueur est sur une station ou un astéroïde, on peut voir le joueur ET l’objet sur lequel il se trouve. C’est pas beautiful ??! 

Note : on ne voit pas les pirates qui sont sur un astéroïde ou une station. Ce n’est pas un bug. (Ils se cachent les fourbes :P)

V 1.1. 10/05/07 :

Le vaisseau a une cargaison limitée. Plus le vaisseau est gros, plus il peut transporter.
On peut vendre ses minerais à la station : gains aléatoires en fonction de la rareté du minerai (minerai<silicium<nividium)
Apparition aléatoire de vaisseaux pirates (en rouge)


Le vaisseau du joueur est vert
Les vaisseaux n’ont plus de points d’action : ils peuvent se déplacer à l’infini
La caractéristique vitesse a disparu
Le vaisseau a une cargaison limitée. Plus le vaisseau est gros, plus il peut transporter.

Utilisation des fonctions -> Economie de code


V 1.0. 01 / 05 / 07 :


Première version


-5 vaisseaux à choisir, du plus rapide au plus lent
-des astéroïdes dispersés aléatoirement sur la carte
-le joueur peut miner un astéroïde pour obtenir un type et une quantité aléatoire de minerais. Plus le vaisseau est gros, plus la quantité est importante
-une station spatiale apparaît aléatoirement sur la carte
-boutons de déplacement du vaisseau


succotash
09/05/2007, 20h56
Voila qq idées et remarques à chaud et en vrac,

d'abords sur le plan technique : est ce qu'il ne serait pas possible de ne refraichir que les cases modifiées entre chaque tour. C'est surement plus complexe à gérer mais ça évite d'avoir l'impression de jouer avec un stromboscope.
Sous firefox, le plateau de jeu recouvre les paneau des commandes.

Sur l'aspect esthétique je ne m'étendrai pas trop, je constate que tu es aussi bon dessinateur que moi^^

Pour ce qui est du gameplay évidemment il y a tout juste une base et ça dépend vers quel type de jeu tu voudrais t'orienter mais dans tous les cas il manque des adversaires.
Tu pourrais faire par exemple une compétition d'exploitation avec une petite gestion de compagnie de prospection minière et des concurrents+pirates.
Ou bien des missions plutôt militaires avec une protection de la station commerciale.
Tu peux aussi envisager un système pour upgrader les stats du vaisseau avec l'argent gagné (vente de minerai ou prime contre les pirates).

Vis à vis des stats du vaisseau, la maniabilité peut servir à calculer un coef d'initiative. Si un M5 se fait attaquer par un M2 ou n'importe quelle baignoire à roues carrées, il aurait des chances de pouvoir interrompre l'attaque et de tirer le 1er (au détriment de son espérance de vie) ou de se tailler vite fait.
La force représenterait logiquement l'armement (donc les dégats) et combinée avec la maniabilité peut donner un coef d'attaque à opposer au vaisseau adverse.
Les vaisseaux n'ont pas de résistance (coque/bouclier).
Il serait aussi intéressant que les plus gros vaisseaux embarquent un moteur de saut pour pouvoir sauter vers des portes dispersées sur la carte (portes éventuellement utilisables de façon conventionnelle si elles communiquent entre elles).

Azz
10/05/2007, 00h50
Salut


Extra ton jeu, c'est le x3 du pauvre..... :)
Egosoft a dû commencer comme ça !

j'y vais moi aussi de mes suggestions :
Rajouter des Khaaks pour corser un peu qui se déplaceraient aléatoirement et détruiraient notre vaisseau s'ils le touchent (nbre de fois touché dépendant de la classe du vaisseau)
Les points d'actions pourraient se recharger complètement dans la station, et un peu quand on mine un astéroide
Faudrait trouver un but aussi, peut être miner un nombre minimum d'astéroides...


continue le développement, c'est bien parti pour devenir X4 :mrgreen:

Ikaruga
10/05/2007, 12h03
Pas mal de bonnes idées que vous avez là, les gars :D

Merci à vous.


En fait, à la base je voulais faire un "roguelike". Un peu comme Nethack pour ceux qui connaissent, les autres .... "Go Google, N00b" :P

Plus sérieusement, Nethack est un petit jeu d'aventures au tour par tour où chaque donjon est aléatoire. Le but du jeu est de descendre le plus bas possible dans les souterrains tout en tuant des monstres, récuperant des trésors, allant chez le marchand pour y acheter et vendre des trucs ...

Plus d'informations sur Nethack ici http://fr.wikipedia.org/wiki/Nethack




Je vais continuer à bosser dessus, je vous tiens au courant des évolutions futures.


Au fait, si quelqu'un a du temps libre et de bonnes compétences en graphismes et / ou en PHP, toute aide est bienvenue.

Ikaruga
14/05/2007, 18h30
UPDATED !

J'ai fait quelques modifs :

V 1.1.b 14/05/07 :

New :

Possibilité de combattre les vaisseaux pirates : initiative en fonction de la vitesse du vaisseau. Si l’adversaire l’a, il fait un dégât en premier.

Nouvelle caractéristique : la vitesse. Plus elle est élevée, plus le joueur a de chances d’obtenir l’initiative.



V 1.1.a 11/05/07 :

New :

Les images sont maintenant transparentes : quand le vaisseau du joueur est sur une station ou un astéroïde, on peut voir le joueur ET l’objet sur lequel il se trouve. C’est pas beautiful ??! :wink:

Note : on ne voit pas les pirates qui sont sur un astéroïde ou une station. Ce n’est pas un bug. (Ils se cachent les fourbes :P)



-Les pirates ne bougent pas : leur faire faire un déplacement aléatoire
-Les vaisseaux peuvent se tirer dessus et se faire des dégâts indéfiniment : faire en sorte que chaque dégât retire un point de blindage, et que dès que tous les points de blindage sont épuisés, le vaisseau disparaît









Encore une fois, j'attends vos conseils et si quelqu'un veut m'aider au développement d'une manière ou d'une autre, il est le bienvenu

Azz
16/05/2007, 20h05
hello Ikaruga, ça ne fonctionne plus chez moi... :?

Grizemine
16/05/2007, 21h48
à l'heure actuelle, cela fonctionne chez moi.

Dans la Todo Liste, si je puis me permettre:

Implanter un compteur de dégât :lol:
Une boîte de dialogue pourrait s'ouvrir lorsque le nombre de points de dégâts max est atteint pour y mettre fin?

De la même manière que l'initiative est prise en compte, un malus de dégât pourrait être appliqué lorsque le joueur quitte la zone sans avoir vaincu son adversaire?

Sinon, un clin d'oeil bien agréable ce petit jeu.
Bonne continuation :D

Azz
16/05/2007, 22h17
Ok ça marche, avec Internet Explorer, mais pas avec Opéra....


Les graphismes ont fait un bond en avant !! :D

+1 sur les propositions de grizemine


J'aimais bien la notion de points de déplacement, je trouve que cela aurait pu ajouter un élément tactique intérèssant... avec recharge par exemple de la totalité des points sur la station, et de la moitié sur un astéroide...


en tout cas en retrouve bien les sensations de pilotage de X3... (non je blague :D )

en tout cas continue comme ça, vivement la suite ... :D

Ikaruga
16/05/2007, 22h19
Merci pour votre feedback, les amis :D


j'ai corrigé un bug qui faisait que le jeu ne tournait pas sous Firefox. Maintenant ça devrait être bon, Azz...


Vous avez peut être vu que les vaisseaux avaient changé de gueule. QU'en pensez vous ?

Je trouve qu'on voit mal le vaisseau du joueur ...



J'en profite pour pousser un gros coup de gueule à propos du forum français d'egosoft : ces ******** ont censuré mon topic sous prétexte que c'était un truc qui avait pas de rapport direct avec X3.

*** No Comment*** [Phlt]


Je me demandais pourquoi j'allais jamais sur le forum français de X3, maintenant j'ai compris.

Azz
17/05/2007, 18h08
impeccables les graphismes :D

ça marche maintenant sans problème sous opéra...
à noter que sous IE 6 la grille se réaffiche entièrement à chaque déplacement, ce qui est assez fatiguant, alors que sous opéra (et firefox je suppose) on n'a pas ce problème....

Ikaruga
18/05/2007, 13h42
Effectivement je viens de voir ça, c'est curieux ...

Mais quelle idée d'utiliser IE aussi :roll:

IE c'est le mal :twisted:

Ikaruga
22/05/2007, 13h58
UPDATED !

Les vaisseaux pirates et celui du joueur ont maintenant un blindage, qui diminue pour chaque dégât encaissé. Si un vaisseau pirate est détruit, il disparaît de la carte. Si le joueur est détruit, il retourne à l’accueil.

Réglé le problème d’affichage sous Firefox

Grizemine
23/05/2007, 23h04
Huhuhu, la pénalité quand le joueur fuit la zone de combat fonctionne.
Mais les dégâts infligés par l'adversaire ne sont pas reportés sur le décompte des points d'armure du joueur.

[Chieur Inside]
on a aucun moyen de connaître la force de l'adversaire (la valeur de ses points d'armure ou de son initiative).
Je suis resté comme un *** quand j'ai lut que je l'avais détruit avec seulement 10 points de dégât dans mon M5.
Un petit tirage au sort de la force à combattre sur la table de classe de vaisseaux disponibles ?
Cela donnerait plus de poids au choix de combattre ou non et de subir la pénalité ou pas, en cas de fuite.

[lPensée du jour inside]
Un "Event" pourrait pimenter les déplacements sur la map.
Définir une table d'évènements positifs ou négatifs pour le joueur selon la case traversée sur un tirage aléatoire?

:P

Alphaprimes
23/05/2007, 23h37
Voila un essai de Gate :
http://images0.hiboox.com/images/2107/x64apogb.png

J'aime bien, a quand la 3d lol ? j'plaisante :o)
Un but du jeu ? euh Récolter suffisament de ressource pour construire un cannon interstélaire pour tuer une bonne fois pour toute l'adversaire (idée issus de supreme commander :o))

Ikaruga
24/05/2007, 10h08
Bonne idée le coup de l' "event" possible à chaque déplacement, faudra que je creuse ça.

Effectivement le système de combat est peut être à revoir.

Quoi qu'il en soit, je suis entrain de faire une mise à jour majeure en utilisant le XAjax, une technologie qui permet -entre autres-de rafraîchir seulement une partie de la page, donc plus d'effet "kaléidoscope à chaque mouvement.

Je vous tiens au courant dès qu'il y a du nouveau

Alphaprimes, je ne vois pas ton image.


EDIT : c'est bon je la vois

Sinon, j'aime bien ton idée de but du jeu. Je vais creuser ça ...