Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Page 2 sur 2 PremièrePremière 12
Affichage des résultats 31 à 52 sur 52
  1. #31
    Et c'est un grande classique du développement logiciel, le coup du "bon ok je vais prendre la solution monolithique que tout le monde aime bien même si je sais que je vais devoir la bricoler parce que c'est un peu loin de mon besoin, ça ne peut que me simplifier la vie, non?"
    PERRRRDU!

    Surtout quand tu ne maîtrise pas le bousin monolithique alors qu'à l'inverse tu es à l'aise sur des fondamentaux, que tu peux prototyper des trucs vite plutôt que de passer ton temps à lire de la doc et des good practices spécifiques au monolithe.
    Comprendre qu'à un néophyte complet en programmation qui veut faire un jeu vidéo, tu ne peux que conseiller Unity, mais que y'a d'autres facteurs.

    La réinvention de la roue c'est tout aussi classique, mais ne pas utiliser de moteur ne veut pas dire ne pas utiliser de librairies, plus ou moins épaisses dans ce qu'elles couvrent
    Faisons confiance à Tomaka pour pas s'embourber là-dedans si il a envie de sortir un jeu un jour.

    M'enfin bref, je ne fais que passer, ça a l'air sympa comme début.
    Pour tes soucis d'UI, t'en fais pas trop, je suis sûr que tu trouveras un gentil volontaire. Ca m'intéresserait par exemple. Je suis pas designer, mais j'ai fait un paquet de design et d'interfaces, ça m'intéresserait bien d'essayer des trucs dans la catégorie jeu vidéo.
    Au bout de 30 mecs dans mon cas t'auras un truc potable

    Bash obligatoire de tompalmer: Superpower c'était cool mais c'est largement pas le seul. En plus de 80 days déjà cité, y'a Fate of the World (y'a aussi cet aspect "heatmap" très bien géré dedans) qui est un plutôt bon example à suivre. Leur UI est cosmique d'ailleurs.

  2. #32
    Le jour ou geopolitical simulator sera débuggé, c'est a dire jamais, ce sera le meilleur jeu.
    Grand maître du lien affilié

  3. #33
    Citation Envoyé par Charmide Voir le message
    ...
    Tout à fait !

    Je n'utilise pas de moteur, mais j'utilise des libs conçues pour être low-level (c'est à dire sans contrainte imposée) tout en détectant le maximum d'erreurs. Le langage que j'utilise (Rust) aide beaucoup, puisqu'il est spécialement conçu pour empêcher les erreurs sans pour autant ralentir le résultat final.

    En prenant des aspects en compte j'ai volontairement choisi un gameplay dont l'implémentation est techniquement complexe afin d'être sûr que personne d'autre ne l'a fait ou ne le fera dans les mois/années qui viennent. Après ce sont un peu des paroles en l'air tout ça pour l'instant, il faudrait que je ponde un pavé explicatif du système de ressources du jeu.
    Rust fanboy

  4. #34
    Tiens d'ailleurs, je suis en train de faire la conception d'un jeu à base de planètes et je me demandais quel type de grille/coordonnées t'utilisais (si c'est possible de savoir)?
    Citation Envoyé par Snakeshit Voir le message
    Mais comme on me l'a appris dans la Marine, plus les choses sont automatisées, moins ça consomme de cases plus vous en avez de libre pour choses utiles, comme penser à des filles dénudées .

  5. #35
    En fait j'ai deux systèmes complémentaires : d'un côté un système de cases rectangulaires, et de l'autre les coordonnées longitude/latitude.
    La surface est divisée en cases au moment de l'initialisation, et la distance entre chaque case et ses voisines est calculée (car elle n'est pas fixe, c'est quelque chose que je vais peut être changer).

    Certains éléments sont liés à une case précise (par exemple les bâtiments), et certains autres (par exemples les armées) utilisent une longitude/latitude. Mais pour ces derniers je fais régulièrement le saut longitude/latitude vers numéro de case.
    Rust fanboy

  6. #36
    Ce que j'appelle "case rectangulaire", c'est que tu prends une projection équirectangulaire et que tu découpes des rectangles dessus.
    Toutes les cases ont la même hauteur, par contre les cases sont plus larges aux pôles de façon à garder à peu près la même dimension "réelle".

    Après selon tes besoins une géode triangulaire sera probablement mieux, mais pour moi ça rend la conversion longitude/latitude <-> case un peu trop complexe.
    Rust fanboy

  7. #37
    Citation Envoyé par Tomaka17 Voir le message
    Ce que j'appelle "case rectangulaire", c'est que tu prends une projection équirectangulaire et que tu découpes des rectangles dessus.
    Toutes les cases ont la même hauteur, par contre les cases sont plus larges aux pôles de façon à garder à peu près la même dimension "réelle".

    Après selon tes besoins une géode triangulaire sera probablement mieux, mais pour moi ça rend la conversion longitude/latitude <-> case un peu trop complexe.
    Après le gros souci vient du fait que si tu conserves des cases rectangulaires, ça devient super compliqué au niveaux des pôles, tu te retrouves avec une tore, ou un truc du genre. En tout cas merci, je suis ton projet avec intérêt de toute façon (et je suis aussi en train de développer un truc dans mon coin avec glium )
    Citation Envoyé par Snakeshit Voir le message
    Mais comme on me l'a appris dans la Marine, plus les choses sont automatisées, moins ça consomme de cases plus vous en avez de libre pour choses utiles, comme penser à des filles dénudées .

  8. #38
    Citation Envoyé par war-p Voir le message
    Après le gros souci vient du fait que si tu conserves des cases rectangulaires, ça devient super compliqué au niveaux des pôles, tu te retrouves avec une tore, ou un truc du genre. En tout cas merci, je suis ton projet avec intérêt de toute façon (et je suis aussi en train de développer un truc dans mon coin avec glium )
    Oui je sais que c'est un peu la merde aux pôles.
    Mais bon les pôles terrestres ne sont pas les endroits les plus importants dans un jeu de stratégie. Pour l'instant toutes les valeurs (taxes, population, ressources, etc.) restent à zéro, donc le problème ne se voit pas.
    Rust fanboy

  9. #39
    Et voilà le petit post pour expliquer ce fameux système de ressources dont je parle depuis le début.

    Contrairement à d'autres jeux qui gèrent l'économie et le ravitaillement de façon abstraite, ici il s'agit de le représenter réellement la production, la propagation, et la consommation des ressources.

    Ainsi les terres émergées de la planète sont découpées en à près 385 000 cases de environ 25x25km chacune (voilà le document que j'ai fait pour me donner une idée de l'échelle). Chaque case possède une valeur de population, un niveau d'infrastructure, et pour chaque ressource disponible dans le jeu (sucre, nourriture, armes, bois, etc. ; j'ai prévu 32 ressources max) son stock et le pourcentage de la population qui produit cette ressource. Le but est de simuler une véritable économie, avec à chaque instant la population qui produit et consomme chaque ressource, ainsi qu'une propagation vers les cases voisines en fonction de l'offre et la demande pour simuler le commerce. L'un de mes objectifs est que par exemple la route de la soie émerge toute seule si on laisse le jeu tourner suffisamment longtemps.

    En plus de se propager toutes seules de case en case, les ressources peuvent aussi se déverser dans des ports. Le port est un bâtiment que le joueur devra construire sur une côte, et chaque port est virtuellement relié à tous les autres ports du monde suffisamment proches. Ainsi les ressources pourront aussi prendre la voie maritime. Là où le système est, je pense, intéressant, c'est que des convois sont créés individuellement et se déplacent physiquement sur la carte du monde jusqu'à destination. Ainsi si une flotte ennemie se place sur une route maritime, elle pourra couler les bateaux qui transportent les marchandises et priver le pays concerné de ses ressources. Contrairement à la plupart des autres jeux de stratégie, ici le système d'embargo est représenté de façon concrète.

    Le joueur devra évidemment faire attention à ce que sa population ait accès à toutes les ressources vitales, ou sinon elle risque de décroitre ou de se révolter.

    Mais il y a aussi un autre paramètre à prendre en compte : la consommation des armées. Non seulement la population consomme des ressources, mais aussi les armées. Ainsi il faudra faire attention à ce que l'acheminement de la nourriture et des armes arrive bien jusqu'à elles. Il n'est pas interdit de stationner une armée en pleine montagne, mais ses réserves de nourriture se videront probablement plus vite qu'elles ne se remplissent, et elle mourra de faim. Il n'est pas non plus recommandé de stationner une armée sur une colonie naissante sous peine de subir le même sort, à moins d'avoir un port dans la colonie et un niveau technologique suffisamment élevé pour que l'acheminement de nourriture depuis la métropole soit suffisant. Une grande partie du gameplay militaire (dont je n'ai pas encore parlé) est lui aussi basé sur ce principe de ressources, puisqu'à chaque incursion sur un territoire ennemi il faudra soit recourir au pillage soit faire attention de ne pas se faire couper ses lignes de ravitaillement.

    Voilà. Je pense que ce système sera plutôt intéressant à jouer. Ce que j'ai décrit là c'est le système "de base". Celui que je voudrais au minimum mettre en place dans une version alpha par exemple. Il y a d'autres choses dont je n'ai pas parlé (comme par exemple les usines, les choix agricoles, ou le fait de devoir acheminer du bois aux chantiers navals) car ce ne sont que des idées qui peuvent encore beaucoup changer. L'une des craintes que je peux avoir c'est que le joueur subisse plutôt que de contrôler (chose qu'on a pu reprocher à Victoria 2), mais dans un second temps je vais ajouter des features permettant au joueur de décider plus concrètement de ce qu'il se passe dans son pays.
    Dernière modification par Tomaka17 ; 02/02/2016 à 16h33.
    Rust fanboy

  10. #40
    C'est effectivement très intéressant.


    Quelques commentaires qui me sont venus à l'esprit :

    * Idées réelles possibles pour le choix des routes commerciales : une caravane/navire doit avoir les cales pleines au départ comme à l'arrivée (explique la succès de certains ports au profit d'autres plus avantageux). Il faut s'arrêter régulièrement pour refaire le plein de vivres/eau/carburant (importance des îles pacifiques). La sécurité terrestre et maritime est essentielle et liée à la stabilité du pouvoir (conquête de l'Algérie en partie liée à la piraterie). Chaque frontière à traverser est dissuasive (taxes + risques politiques), visible dans le choix des trajet des oléoducs par exemple.

    * Ton jeu a l'air de demander beaucoup de micro-gestion pas passionnante. Construire chaque navire de commerce et les reconstruire et réassigner des routes après chaque guerre, pffffiouh. Si tu optes pour cette voie, je te recommande de fournir un moyen de reconstruire automatiquement (pas plus d'un clic par route endommagée).

    * Ton modèle peut-il faire disparaître Rouen et apparaître une nouvelle ville au nom arbitrairement choisi ? Ou bien vas-tu artificiellement stimuler les villes existantes et ne pas en autoriser de nouvelles ? Car il me semble impossible que ton modèle converge vers la réalité sans le brider massivement.

    * Du coup est-ce que ce ne serait pas plus intéressant de quitter le cadre terrestre pour faire une autre planète ? Car si tu te places dans un cadre historique tu vas devoir brider ton moteur pour ne lui laisser choisir que des détails et en même temps tu auras perdu l'opportunité d'exploiter certains événements historiques.

    * La conso des armées est une bonne idée mais souvent mal exploitée. Dans EU4 par exemple la moindre guerre dure des années parce qu'il faut tout conquérir avant d'obtenir un foutu cessez-le feu. En plus il n'y a pas de bon indicateur de saisons et on ne se rend compte que sur le tard qu'on est en décembre. Et il n'y a pas de phase de préparation de la chaîne logistique ou de réserve stratégique (vivres, bois, métal, etc).

    Pour moi ça fonctionne surtout en tour par tour avec un indicateur des pertes à chaque tour (un -1 ou -4 qui apparaît au-dessus de l'unité et s'évanouit par ex). En temps réel je n'ai pas encore vu réussite. Mais je ne demande qu'à voir.

  11. #41
    Merci pour le retour !

    Citation Envoyé par Roscopolo Voir le message
    * Idées réelles possibles pour le choix des routes commerciales : une caravane/navire doit avoir les cales pleines au départ comme à l'arrivée (explique la succès de certains ports au profit d'autres plus avantageux). Il faut s'arrêter régulièrement pour refaire le plein de vivres/eau/carburant (importance des îles pacifiques). La sécurité terrestre et maritime est essentielle et liée à la stabilité du pouvoir (conquête de l'Algérie en partie liée à la piraterie). Chaque frontière à traverser est dissuasive (taxes + risques politiques), visible dans le choix des trajet des oléoducs par exemple.
    Citation Envoyé par Roscopolo Voir le message
    * Ton jeu a l'air de demander beaucoup de micro-gestion pas passionnante. Construire chaque navire de commerce et les reconstruire et réassigner des routes après chaque guerre, pffffiouh. Si tu optes pour cette voie, je te recommande de fournir un moyen de reconstruire automatiquement (pas plus d'un clic par route endommagée).
    Non, il n'y aurait pas ce niveau de microgestion. Au contraire comme je l'ai dit pour l'instant j'ai peur que le joueur n'ait pas assez de choses à gérer.

    En l'occurrence les bateaux de commerce font partie d'une réserve séparée de la flotte de guerre. On ne les gère pas directement. Lorsqu'un bateau est détruit il est automatiquement reconstruit.
    C'est pareil pour les bateaux de transport d'ailleurs, mais ça c'est une autre histoire.

    Par contre c'est intéressant cette histoire de cales pleines, je n'y avais pas pensé.

    Citation Envoyé par Roscopolo Voir le message
    * Ton modèle peut-il faire disparaître Rouen et apparaître une nouvelle ville au nom arbitrairement choisi ? Ou bien vas-tu artificiellement stimuler les villes existantes et ne pas en autoriser de nouvelles ? Car il me semble impossible que ton modèle converge vers la réalité sans le brider massivement.
    Effectivement en théorie des villes peuvent disparaitre et d'autres apparaitre. Sauf que les villes n'auraient pas de nom, parce que c'est un peu trop chiant à gérer.
    On verrait sur la carte où est située la population, mais sans qu'un nom de ville apparaisse. De toutes façons les cases sont trop grandes pour qu'il y ait de grands espaces vides.

    Citation Envoyé par Roscopolo Voir le message
    * Du coup est-ce que ce ne serait pas plus intéressant de quitter le cadre terrestre pour faire une autre planète ? Car si tu te places dans un cadre historique tu vas devoir brider ton moteur pour ne lui laisser choisir que des détails et en même temps tu auras perdu l'opportunité d'exploiter certains événements historiques.
    Le jeu est comme un Europa Universalis, c'est à dire qu'une fois la partie lancée ça peut partir vers n'importe quoi.
    Je ne compte pas mettre d'événements historiques. Tout doit fonctionner de façon procédurale.
    Effectivement ça pose quelques problèmes. Par exemple j'hésite encore sur la manière de gérer le fait d'interdire au joueur de cultiver de la canne à sucre en Europe.

    Mais sinon pour le fait d'aller sur une autre planète, j'y ai pensé et je laisse la possibilité ouverte (pour un éventuel mod par exemple). Mais comme le jeu est complexe je pense que c'est un gros avantage que le joueur soit familier avec les pays, les ressources, etc. Par exemple si ta population réclame du thé ou que le Mexique te déclare la guerre, tu sais où regarder. En revanche si le jeu se passe sur une autre planète et que ta population réclame du Znobu ou bien que la nation Proutok te déclare la guerre, là c'est moins intuitif.

    Citation Envoyé par Roscopolo Voir le message
    * La conso des armées est une bonne idée mais souvent mal exploitée. Dans EU4 par exemple la moindre guerre dure des années parce qu'il faut tout conquérir avant d'obtenir un foutu cessez-le feu. En plus il n'y a pas de bon indicateur de saisons et on ne se rend compte que sur le tard qu'on est en décembre. Et il n'y a pas de phase de préparation de la chaîne logistique ou de réserve stratégique (vivres, bois, métal, etc).
    Là par contre la guerre serait très différente que dans les jeux Paradox. Les armées ne se déplaceraient pas de droite à gauche mais feraient des manoeuvres lentes à grande échelle.
    De plus chaque armée a une réserve de ressources qu'elle transporte avec elle. Un avertissement apparait si les réserves sont en dessous d'un certain seuil pour que le joueur puisse réagir avant que les hommes commencent à mourir.
    En ce qui concerne le gameplay militaire je ne compte pas faire trop réaliste. Je veux surtout quelque chose d'amusant à jouer et qu'il n'est pas nécessaire de trop microgérer.
    Rust fanboy

  12. #42
    Pour ton souci de canne à sucre, tu peux faire en sorte que telle ou telle plantation réclame telle ou telle conditions météorologiques, terroirs... Etc, il parait en effet peu probable de faire pousser du maïs dans l'Aude alors que la vigne s'y développé sans aucun soucis. Ça pourrait amener des mécanismes sympa de gestion du territoire et des ressources (sélection des semences, gestion des crises comme celle du phylloxéra...)

  13. #43
    Citation Envoyé par war-p Voir le message
    Pour ton souci de canne à sucre, tu peux faire en sorte que telle ou telle plantation réclame telle ou telle conditions météorologiques, terroirs... Etc, il parait en effet peu probable de faire pousser du maïs dans l'Aude alors que la vigne s'y développé sans aucun soucis. Ça pourrait amener des mécanismes sympa de gestion du territoire et des ressources (sélection des semences, gestion des crises comme celle du phylloxéra...)
    Pour l'instant j'ai mis une latitude minimum et maximum.
    Sauf que du coup il y a aussi une production de sucre en Afrique et en Asie, ce qui n'est pas cohérent avec la réalité.

    J'ai aussi eu une idée de "propagation de graines". Sauf que c'est peut être un peu overkill.

    Et puis je ne suis pas assez calé pour savoir quelles sont les raisons pour lesquelles certaines zones produisent ou non certaines marchandises.
    Rust fanboy

  14. #44
    D'abord merci pour les réponses, qui m'ont pas rassuré sur l'aspect microgestion. Pour la guerre aussi je pense que ça peut être aune approche intéressante.

    Et je suis tout à fait d'accord pour dire que la véritable carte terrestre est plus immersive. Et puisque tu t'es de toute façon résolu à t'affranchir de la trame historique, alors effectivement tu pourrais bien avoir les avantages du procédural sans les inconvénients.


    Pour les semences, c'est trop chaud à simuler : Il faudrait prendre en compte la nature des sols, l'altitude, la température, l'ensoleillement et l'humidité. Et en plus les moyennes annuelles ne suffisent pas, il faut regarder les variations mensuelles et les événements exceptionnels (sécheresse) : certaines plantes ne survivent pas à l'hiver, d'autres en ont besoin. Et puis y a la faune aussi (pollinisateurs, consommateurs, etc).

    Mieux vaut utiliser des données saisies à la main, éventuellement modifiées par le relief pour ne pas cultiver de blé en montagne. Au passage ça t'aidera peut-être : Major world crop areas. Sinon tu peux aussi utiliser des ressources ponctuelles, à la civ5.

  15. #45
    Citation Envoyé par Tomaka17 Voir le message
    Pour l'instant j'ai mis une latitude minimum et maximum.
    Sauf que du coup il y a aussi une production de sucre en Afrique et en Asie, ce qui n'est pas cohérent avec la réalité.

    J'ai aussi eu une idée de "propagation de graines". Sauf que c'est peut être un peu overkill.

    Et puis je ne suis pas assez calé pour savoir quelles sont les raisons pour lesquelles certaines zones produisent ou non certaines marchandises.
    Oui, gérer les productions en fonction en fonction des latitudes ne me semble pas la meilleur option, il vaudrait ajouter une composante "climat" à chacune de tes zones, il en faut pas beaucoup, je pense que 5 ou 6 devraient suffire (méditerranéen, continental etc) après le soucis est qu'il faut les définir à la fin. Après pour tout la composante environnementale, là aussi, je pense qu'au début il faut se limiter à peu de cultures/élevages et voir les conditions qu'ils nécessitent.
    Pour la propagation des graines, c'est une bonne idée mais carrément overkill, cependant, ça peut être une ressource : un état peu avoir un stock de graine pour replanter/donner à manger, le joueur ayant le choix de ce qu'il veut planter et où il le veut, son choix étant guidé par les caractéristiques de chaque zones.

    Au final, tu as "peu" de variables, mais ce sont les combinaisons qui sont intéressantes ici, je pense.

    EDIT : Semi grillé
    Citation Envoyé par Snakeshit Voir le message
    Mais comme on me l'a appris dans la Marine, plus les choses sont automatisées, moins ça consomme de cases plus vous en avez de libre pour choses utiles, comme penser à des filles dénudées .

  16. #46
    Bump du topic !
    J'ai en effet déterré le projet il y a quelques temps et j'ai recommencé à bosser dessus.

    Voilà un petit screenshot de là où j'en suis rendu au niveau graphique :



    (Les zones cyan et rouges sont censées représenter les territoires carthaginois et romains, mais un petit bug les a placées au mauvais endroit et pour l'instant j'ai la flemme de les refaire)

    En revanche je dois revoir les mécaniques de ressources car j'ai beaucoup trop de problèmes de performances avec l'ancien système.

    - - - Mise à jour - - -

    Et vu de plus loin :

    Rust fanboy

  17. #47
    Cool ! Et classe les screens (le bleu arrache un peu sur le premier) mais le reste est bien cohérent et les ombres sont sympa mais peut-être un peu "longues". Tout ça est en Rust et OpenGL ?

  18. #48
    Citation Envoyé par Patate Voir le message
    OpenGL ?
    Vulkan en fait
    Rust fanboy

  19. #49
    Not bad, ça rend bien ! Je suis curieux, comment ça se fait qu'un système de ressource pose des problèmes de perf ?
    @Grhyll / 3-50.net
    Projet actuel : oQo

  20. #50
    Citation Envoyé par Grhyll Voir le message
    Not bad, ça rend bien ! Je suis curieux, comment ça se fait qu'un système de ressource pose des problèmes de perf ?
    C'est ce que je voulais faire en particulier qui pose trop de problèmes.

    À la base l'idée était que chaque endroit du monde ait un prix et un stock de chaque ressource.
    Le problème c'est que si on suppose une mise à jour des données à chaque frame, et 256 octets de données par case, en prenant en compte la latence mémoire, je ne peux découper le monde qu'en 160k cases, soit 1000km² par case. Ça peut sembler suffisant, mais c'est en réalité c'est vraiment très serré car il faut prendre en compte d'autres paramètres notamment le fait qu'il faille connaître les valeurs des cases voisines. J'ai essayé quelques benchmarks, et je n'arrive pas à descendre en dessous de 50ms pour une update. Si je descends en dessous de 110k cases ça devient vraiment pas assez précis et on perd tout l'intérêt du système.

    Du coup j'ai essayé de chercher des alternatives. J'ai essayé de regrouper des cases ensembles (par exemple la forêt amazonienne, la Sibérie ou la Patagonie n'ont pas besoin d'un découpage aussi précis que l'Europe) sauf que ça pose encore d'autres problèmes bien compliqués.

    J'ai aussi pensé à updater un dixième des cases uniquement à chaque frame (à chaque fois un dixième différent) de façon à diviser par dix le temps de calcul, mais ça n'est pas satisfaisant non plus niveau gameplay.

    J'ai aussi pensé à découper la planète entre centre de trades et ne permettre aux marchandises de circuler que de centre en centre, sauf que là aussi je n'arrive pas à trouver comment découper efficacement de façon dynamique le monde en centres de trade.
    Rust fanboy

  21. #51
    Ahh oui ok, je n'avais pas réalisé qu'il y avait autant de cases ^^'
    Tu es vraiment obligé d'avoir une gestion des ressources temps réel à ce point ? Ca ne serait pas ok si une case n'était updatée qu'une fois par seconde par exemple ?
    @Grhyll / 3-50.net
    Projet actuel : oQo

  22. #52
    Le problème c'est que je voulais faire dépendre les autres aspects du jeu là dessus.
    Par exemple lorsque tu lances la construction de bateaux dans un port, le prix du bois sur la case du port augmenterait.
    Si je n'update chaque case qu'une fois par seconde, ça veut dire que l'augmentation de prix prendrait énormément de temps à se propager aux cases alentours.
    Rust fanboy

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •