IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Projets Discussion :

Projet de city builder


Sujet :

Projets

  1. #1
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut Projet de city builder
    Bonjour,

    Je présente ici un projet qui me tient à cœur depuis longtemps, à savoir un city builder (à la caesar ou simcity), en ligne, et donc multijoueur.

    La plupart de ces jeux en lignes sont de simples affichages (générés bien souvent en php) et ne sont pas très dynamiques.

    J'ai donc voulu coder mon jeu entièrement en javascript.

    Je suis arrivé à faire pas mal de truc, bien que ne fonctionnant pas sous internet explorer (encore lui), ce site de démonstration de mon moteur de jeu fonctionne très très bien sous Chrome (je conseille) et un peu moins fluide sous firefox.

    exemple de mon moteur graphique

    Ce moteur n'est qu'un exemple des possibilités et travaillant seul, il n'est pas fini.
    Puis, côté graphisme, je ne suis pas graphistes, les images sont données à titre d'exemple.



    Je l'ai crée dans le but d'intéressé des personnes à mon projet, de plus, étant adepte de la réunion de travail, je préfèrerai des personnes sur Toulouse pour les codeurs javascript/php (mais sinon c'est pas grav ).

    S'agissant du background, je n'ai pas défini de thème pour le jeu, il est libre à la discussion.

    Les quelques idées techniques:
    - Le jeu sera basé sur la gestion de citoyens qui monteront en grade quand on satisfait des besoins.
    - L'arrivée d'immigrants ne se fera que si les points de bonheurs de la cité sont satisfaisant (points de culture).
    - Chaque citoyen sera dur à combler, chaque bâtiment sera cher à construire et pourra être suffisamment évolué pour ne pas en construire trop, cela afin de limiter le nbre d'objet sur la map.
    - Des animations seront intégrés:il y a déjà la crue du fleuve qui est faite, ce qui irrigue les terres cultivables;
    - Pour les animations des citoyens: il faudra voir si on construit des routes, si on recherche le plus petit chemin entre A et B passant par la route, et si on lance le déplacement du perso: à voir en fonction de la fluidité du jeu.

    - Possibilité d'engager des émissaires culturels/commerciaux/aventures que le joueur enverra dans le royaume pour réaliser diverses taches, ramener divers objets (comme des livres d'évolution de batiments ou des plan de nouveaux) , ce qui augmentera les capacités de l'émissaires. Possibilité pour un joueur de louer un émissaire d'un autre joueur afin de remplir une mission.


    Le jeu ne sera pas en mode persistant, si le joueur quitte sa partie, celle-ci s'arrête et il la retrouvera à sa prochaine connexion telle quelle.

    Une chute des immigrants puis des citoyens sera faite selon le temps de déconnexion.

    Une fenêtre de score affichera le score dans chaque branche de la ville (économie, culturel, armée...). Ces scores seront une moyenne divisé par le temps de jeu total. Donc pas de hight score en vue mais le meilleur joueur à un instant T sera celui qui sur la longueur aura obtenu le plus souvent de '...'.

    Cela dans une optique de ne pas avantager ceux qui jouent depuis longtemps.

    Voilà.

    Qu'en pensez-vous? et surtout, cela intèresse-t-il quelqu'un?
    Dans l'idéal, il faudra 1/2 codeurs (javascript/php) et 1/2 infographistes.

    Ce projet a un réel but, je veux le mener à bien, et j'ai pour projet de financer à terme (je dis bien à terme) l'équipe par ce site (jeu video), soit par pub, soit autre.

    Pour info, j'ai réalisé la maquette du moteur graphique en 4 jours (certains diront, ça se voit ). Je reprendrais tout à zero avec le ou les futurs codeurs.
    Darkyl, celui qui conduit quand il boit pas .(faudra penser passer le permis )

  2. #2
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Des nouvelles du projet et des questions.

    Alors le projet en ai là :
    - Création de la map de 50*50 cases avec texture herbe par defaut.
    - Création des textures dans la map comme, la mer, les ressources etc.
    - Création des terres fertiles qui seront inonder par la crue.
    -Création de l'animation crue.

    - Lancement du timer bénéfice bâtiment qui met à jour tous les bâtiments construits, en recalculant leur production en cours, leur attribution de main d-œuvre, l'attribution de locataire pour les bâtiments d'habitation.
    Tout cela marche bien.

    -Ce que je vais faire très prochainement :
    - calcul de l'entretien des bâtiments

    -Peaufinage du moteur graphique et du rendu : 2 bug restent à résoudre (la création d'un objet dom image pour chaque bâtiment construit, ce qui évitera l'effet de scintillement quand on le place sur une case vide; et attribution du z index de la case la plus en haut à gauche de l’empattement au sol à l'objet image créer pour le bâtiment.

    - Cela résoudra les petits bug et le moteur de jeu sera (est déjà mais bon...) capable d'afficher n'importe quel type de bâtiment sans défaut d'affichage.



    Sinon, j'ai une petite question d'ordre technique:

    - Pour l'instant, je n'ai pas du tout optimiser la programmation ou la mise en cache des images, il y a beaucoup de rappel à des fonctions au lieu de variable, bref je me suis pas fait ch.....i...er.
    Mais, j'ai remarqué depuis le lancement du timer benefice_batiment, que le jeu ramait grave. Je n'ai pas d'analyseur d'environnement javascript, n'ai pas accés au fuite mémoires, au inspection de variables et tout le tra lala mais avant d'optimiser le code:
    - Javascript est-il (ainsi que l'environnement dans lequel il est employé, c'est à dire un navigateur internet) assez puissant pour gérer un jeu de ce type?
    Avec timer toute les sc qui calcul sur des gros objets...
    Ou est-ce simplement mon code qui est a optimiser....?
    Darkyl, celui qui conduit quand il boit pas .(faudra penser passer le permis )

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Oui, je pense que le javascript peut gérer un jeu de ce genre.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  4. #4
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Les moteurs JS actuels sont capables de beaucoup de choses . (Surtout avec l'avènement de HTML5 et ce qui va avec - que tu n'utilises pas, d'ailleurs : comme beaucoup de projets amateur, la première chose faite est de recréer un moteur graphique, qui sera plus mauvais que la moyenne de ce qui est disponible gratuitement et librement sur le Web, sauf exception : http://www.createjs.com, par exemple.) Exemple : Cut the Rope, porté par Microsoft en JS, http://www.cuttherope.ie/.

    Maintenant, si tu veux tout gérer en JS (comme on pourrait le croire en lisant le début de ton premier message), ça me semble complètement fou, ne fut-ce que pour une certaine persistance (aussi pour générer du code JS à la volée ou autre technique : si tu dois changer ton code JS pour chaque nouveau bâtiment ou rééquilibrage, bonne chance ; je préférerais largement gérer ça côté serveur dans une base de données puis envoyer les données qui vont bien au navigateur).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Suite à un temps de latence impressionant du jeu video en l'état, j'ai repris le code depuis le début en optimisant le tout. (voir topic sur forum javascript).

    Donc, le projet repart à zéro mais la refonte devrait allé vite.

    Concernant les bibliothèques de moteur graphique et autres, je comprend mal l'anglais donc utilisé une bibliothèque va me demander trop de temps, en tout cas plus que celui de coder ce qu'il me faut.

    Aprés, cela m'apprend beaucoup de coder moi-même tout. Rien qu'à voir le soucis d'optimisation que je n'aurais jamais eu avec une biblio tierce.

    Merci pour vos conseils, le lien fonctionne toujours et sera toujours la dernière étape du développement du projet.
    Je tiendrai o jus les personnes intéressés.

    Je ne pense pas que le projet soit trop gros, déjà reproduire un caesar-like en javascript... c'est pas sorcier
    Ha, L'innocence du programmeur amateurs...

    J'aurais juste besoin à terme d'un infographiste 2d (3d se serait mieux) mais je reposterai au besoin (et selon avancé du codage).

    dourouc05 : l seul truc qui me faisait peur est une certaine instabilité de javascript, je pensais que des timeout ou interval pouvait bugé et s'arrété tout seul (sous l'influence d'un script tierce)... Mais apparent javascript (et non son codeur ) est fiable.. donc pas de soucis je continu en générant mes fenêtres par javascript et aucun appel href.

    Merci en tout cas
    Darkyl, celui qui conduit quand il boit pas .(faudra penser passer le permis )

  6. #6
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Au fait, n'hésite pas à regarder du côté d'outils prévus pour coder en JavaScript de manière industrielle... sans JavaScript : GWT (en Java), Dart (les deux de Google).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  7. #7
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Un petit post pour tenir au courant de l'avancé du projet :

    - J'ai refait entièrement le moteur graphique (avec l'aide de Willpower et ses astuces).



    - Pour l'instant, seul deux bâtiments marchent : cabane et hutte de bucheron.

    Les autres, faut que je mette à jour leurs propriétés mais cela donne un aperçu des possibilités.

    - il me reste à géré les habitants comme des objets uniques et la structure globale du jeu sera faite.


    Le jeu est compatible firefox et chrome mais pas IE...

    - Reste à faire :

    finir de peaufiner la charte graphique des menu
    faire la mini map
    gérer les citoyens
    ...

    Il reste pas mal de choses (evidemment) mais je mis met à temps plein donc je suis confiant.

    Le jeu , en tant que tel, ne marche pas encore. Les citoyens n'évoluent pas, pas de zones de stockages (entrepôt) disponible, donc même en produisant, les bâtiments s’arrêtent dés que leur capacité max est atteinte...


    N'hésitez pas à me donner vos remarques, idées, bug ou autres partages de connaissances.

    jeu
    Darkyl, celui qui conduit quand il boit pas .(faudra penser passer le permis )

  8. #8
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Un petit up car le projet avance.

    kermit6000 m'a rejoins dans l'aventure, il a eu le courage et n'a pas pris peur en prenant connaissance des sources .
    On a scinder les taches en deux, il va s'occuper du moteur de jeu à proprement parler (les relations entre objets et leurs definitions), moi je m'occupe du moteur graphique.

    D'ailleurs ce dernier évolue et on passe en html5 avec canvas (je suis en train de voir pour me servir de webgl). La vue a changer et passe en réel 3d iso.
    lien

    Le projet se veut un minimum ambitieux en terme graphique et en terme unité animé gérée. J'ai d'ailleurs ouvert deux topic à ce sujet (sur forum javascript) dont un concernant l'optimisation en javascript.

    Je remercie tous ceux qui m'y ont répondu et tous les liens fournis m'ont été d'une grande aide.
    Darkyl, celui qui conduit quand il boit pas .(faudra penser passer le permis )

Discussions similaires

  1. [IDE] Migration d'un projet vers C++ Builder XE6
    Par Irisael dans le forum C++Builder
    Réponses: 1
    Dernier message: 01/09/2014, 15h17
  2. [IDE] Passer un projet de C++ Builder 6 à C++ Builder XE3
    Par bakaneko dans le forum C++Builder
    Réponses: 2
    Dernier message: 07/09/2012, 13h09
  3. structurer son projet borland c++ builder
    Par petitours dans le forum C++Builder
    Réponses: 6
    Dernier message: 06/09/2008, 11h08
  4. conversion de projet Borland C++ builder en Visual C++ ou
    Par kurul1 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/09/2005, 08h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo