[Exemple] Pathfinding ( Déplacement intelligent )

BigMiniGame, vient la que je t’enbrasse mon grand
ba quoi ?!!!, il c’est sauver le bougre :smiley:

Bon ba un gros soubis bien baveu :laughing:

Trop bien fait ! Je donne 10/10 pour toi (et le petit bonhomme !)
C’est dur de faire ça ? J’y comprends rien sous les évenements tellement que je trouve le jeu bien fait ! :mrgreen:

Ce n’est pa vraiment un jeu, c’est plutôt un exemple pour aider a faire un jeu :wink:
Et ce n’est pas si dur si l’on maitrise le logiciel depuis longtemps et si l’on a un peu de logique :slight_smile:

Alors tu pense que tu pourrai le mettre en automatisme 4ian :slight_smile:

Comme dit par Victor, les automatismes sont codés en C++, donc il ne s’agit pas d’un bête copié collé à faire.
Mais je garde ça sous le coude.

Ok merci 4ian :slight_smile:
Et tu peux trouver beaucoup de codes de ce type sur internet :wink:
Sinon t’en pense quoi de la demande de nouvelle fonctionnalité : Créer un objet par les événement ?

Lien mort, pourrais-tu le ré-uploader s’il te plaît ?

Également parce-que j’ai réorganisé mes fichier (comme jump 'n physic)…
Merci d’avoir signalé je modifie ça :wink:

Lien réparé :slight_smile:

Merci bien. :slight_smile:

Super, j’ai pas trop saisi l’intérêt de faire 3 objet grille mais je vais mieux analyser :wink:

En tout cas je penses que ça va bien m’aider pour mon new projet :stuck_out_tongue:

Edit : hé ben non, trop gourmant sur une grosse map --’

L’intérêt de faire 3 types de blocs, c’est que gd n’est pas assez puissant pour bien différencier 2 blocs du même type… (toujours a améliorer…)
Et j’ai remarqué que gd n’était pas non-plus si puissant que ça en fin de compte car en faisant plusieurs tests, il n’arrive pas à exploiter toutes la puissance de mon ordi (qui est très puissant…)

Là c’est encore autre chose.
Si un programme tente de faire tout les calculs d’un coup, il va coincer alors que si il tente de les faire en parallèle, il va coincer moins vite (il va utiliser plusieurs coeurs du pc aussi)

Je ne vais pas m’avancer sur la programmation de GD car j’en sais rien, mais de toute façon, la manière dont tu a programmé le pathfinding est correcte mais demande trop de calcul simultanés, il aurait fallut pouvoir faire des threads sur ce genre de calculs (enfin je crois je ne m’y connait pas trop en thread) mais à mon avis il y a une meilleur solution pour faire un pathfinding, je pense en tout cas.

Moi j’ai résolu mon problème plus simplement en mettant des checkpoints, au final c’est moins long que ton code et ça demande vraiment moins de calculs, par contre il faut choisir dès le début de son projet le maximum de checkpoint (enfin c’est mieux)

En effet, les checkpoints marchent, c’est d’ailleurs le système que j’ai fais dans War of frite world et Super frite batailles terrestre il y a 2 ans, mais c’est pas vraiment super car les personnages ne peuvent pas quitter les chemins et par conséquent ne peuvent pas suivre le joueur s’ils veulent lui faire la peau.
Checkpoints > oui, mais dans une certaine limite
Pathfinding > l’option la meilleure pour faire une IA et de loin (mais si c’est pour un chemin fixe, on s’en fout pour être honnête).

Vue que je fait un tower defense et pas un STR, c’est suffisant :wink:

Sinon j’avais trouvé un base de quelque chose réalisable en utilisant la physique, en gros j’avais fait si l’objet est a - de 50pixel de mur, le faire descendre.

Seulement ça demande beaucoup de conditions afin de calculer le chemin le plus court pour y arriver, et franchement, pour un td j’avais pas envi de m’embêter à programmer un truc aussi complexe XD

Maintenant si je viens à travailler sur un STR je vais y être obligé ^^’

La prochaine version devrait intégrer un automatisme de pathfinding, basé sur l’algorithme A*.
Rien de bien exceptionnel niveau qualité des chemins calculés, mais ce sera toujours plus efficace et pratique qu’utiliser directement les évènements pour mettre ça en place : Pas besoin de définir une grille par exemple, l’automatisme devrait s’occuper de ça automatiquement.

Taille des nodes configurable etoo comme dans Construct ?

Je viens d’aller voir, je suppose que c’est le comportement RTS ?
Oui, la taille de la grille virtuelle sera librement configurable.

Comme il ne s’agit pas d’un automatisme “RTS” ou ça, mais juste de pathfinding, je ne pense pas intégrer de mécanisme de waypoint ou d’accélération/décélération. ( Mais c’est gérable soi même, la vitesse de parcours sur le chemin étant configurable ).

Non il y a un behavior Pathfinding il me semble, m’enfin vu que la grille est configurable ça me suffit ;D

En espérant que ça puisse parcourir un map complète sans faire figer le logiciel le temps du calcul ^^