
Envoyé par
el_slapper
Ce n'est pas UN algorithme. Ce sont des palanquées d'algorithmes. Un algorithme pour déterminer les caractéristiques du joueur à la création. Un algorithme pour determiner l'évolution des caractéristiques(suivant l'entrainement, le potentiel, et l'expérience). Un algorithme pour déterminer la valeur du joueur(en fonction de son âge, sa réputation, son potentiel, ses caractéristiques). Un algorithme pour detecter tout ce qui se passe quand on avance d'une journée.
Et tout ceci est encapsulé dans une programmation modulaire(probablement objet, ça s'y prête pas mal). Par exemple, si on detecte un changement de mois, on va scanner tous les joueurs, et leur appliquer l'algorithme d'évolution des caractéristiques. Etc.....
Plus le programme est complexe, plus il nécéssite une architecture solide basée sur des routines. Dans le cas d'une programmation objet, la routine, c'est la méthode.
C'est indispensable car nul n'est assez intelligent pour faire rentrer un logiciel complet dans son crâne(même John Carmack). Par contre, à un moment donné, on peut faire rentrer une routine pas trop grosse, sans oublier sa place dans l'architecture. L'algorithme de tir des pénalties sera utilisé dans deux cas, les fautes dans la surface et les coups de pied de but en fin de prolongations, mais écrit une seule fois. C'est une des innombrables briques unitaires qui composent Football Manager.
Au final, programmer, c'est fabriquer les briques(chaque routine contenant un algorithme), et les assembler. Et debugguer, évidemment. Chaque brique est unique, souvent compliquée, et son assemblage avec les autres n'a rien d'évident.
Partager