Pour moi pour gauler les bots et les cheaters:
Tu crées un histogramme qui te donne la distribution du temps passé dans une atitude donnée:
Pour l'orientation avec le yaw/pitch, tu as un vecteur.
Tu prends un top et une orientation de référence, et tant que l'avatar est colinéaire (un dot de vecteurs entre l'orientation courante et la référence), tu continue à compter le temps.
Lorsque l'écart est trop important (>1°), tu prends le temps écoulé et tu rajoutes une occurence dans l'histogramme dans l'entrée correspondant à ce temps. (genre un histo de uint qui va de 10 ms à 4secs par pas de 10ms)
Ensuite tu reprends la nouvelle orientation comme référence et tu te remets à compter.
La même chose avec le vecteur de déplacement normalisé, en faisant le différentiel de position entre deux frames, par rapport à un vecteur de référence.
Déjà avec ça tu peux voir une diff stat entre un bot et un humain.
Un naab ou un bot aura un histogramme à droite, un mec nerveux qui contrôle tous ses angles aura un histogramme à gauche.
Pour les cheaters, c'est les temps de réaction qu'il faudrait plustôt prendre en compte.
Donc genre pour chaque joueur, voir comment il réagit lorsque un autre joueur rentre dans son frustum, et deviens géométriquement visible, et avec quelle vitesse et quelle "stabilité" il vise.
Donc genre un histogramme qui donne le temps de réaction (changement d'atitude) lorsque un joueur est dans le frustum mais caché, combien de temps il ne vise pas un joueur caché dans son frustum, combien de temps il ne se dirige pas vers ledit joueur, combien de temps il se dirige, combien de temps il est à 5° du (ou d'un) joueur caché.
Pareil pour un histogramme pour le joueur visible. (l'histo du temps de réaction, l'histo du temps d''établissement de la visée à 5° près )
Tu peux aussi faire un histogramme avec l'angle en abscisse et le temps en ordonnée lorsqu'un mec est visé dans les 10°.
Si l'histo te fais souvent un gros pic en ^ dans les 2°, tu sais qu'il marche pas qu'à l'eau.
Si il te fait un U, t'as un naab qui panique
(Alors peut-être pas en degrée, mais en % du fov, car forcément un sniper pétera plus facilement les scores)
Tu peux aussi faire un histo du comportement par rapport à une cible (je sais pas un truc qui donnerait le temps passé à accompagner une cible soit par le slide, soit à faire un changement d'orientation qui soit toujours dans le bon "sens" pour suivre la cible)
Enfin ce genre de trucs...
Message édité par bjone le 02-09-2010 à 18:54:46