Pong sur le PIC de XGS (28 / 36 étapes)

Étape 28 : Paddle AI Demo - mise en oeuvre de AI

Maintenant pour la partie intéressante : l’algorithme de l’AI. L’approche évidente d’avoir le point médian de la pagaie à toujours suivre le ballon offre un adversaire extrêmement brutal et peu de chance pour le joueur à marquer. Un algorithme plus indulgent suit la balle si c’est dans l’état correct et passé une certaine partie de l’écran. La pagaie contrôlés par l’IA étant sur le côté droit de l’écran, la balle doit être dans un état de droit se déplaçant pour une collision se produise. En choisissant un emplacement x pour démarrer le contrôle de l’IA, le plus proche le choix est à 0, le plus difficile de l’IA, comme l’IA aura plus de temps pour rattraper son retard à la coordonnée y actuelles de la balle. À l’aide d’un tiers de l’écran comme une zone morte fournit un adversaire difficile.

Ainsi, si la balle est dans un état de droit se déplaçant et passé le milieu de l’écran, l’IA doit tenter de correspondre le point médian de la raquette par rapport au milieu de la boule afin de maximiser la possibilité d’une collision. Par conséquent, si le ballon est actuellement supérieur au point médian de la raquette, la pagaie devrait se déplacer vers le haut, ou décrémenter la coordonnée y de l’emplacement. De même, si le ballon est actuellement en dessous du point médian de la raquette, la pagaie devrait déplacer vers le bas, ou incrémenter la coordonnée y de l’emplacement.

Une dernière considération : paddle l’AI ne doit pas rouler hors de l’écran. Cela peut se produire si la palette est lié de tangente à la partie supérieure de l’écran et la balle se déplace encore vers le haut. Un autre cas existe symétriquement si la balle se déplace vers le bas. La solution la plus simple consiste à vérifier l’emplacement de la raquette avant de passer la pagaie dans la direction respective. Une préoccupation similaire se pose pour l’entrée de joueur dans la phase suivante. L’algorithme complet d’Ia ressemblera à :

 if (state_x == BALL_RIGHT && ball_x >= SCREEN_WIDTH/3) if (ball_y+BALL/2 > p2_y+PADDLE_HEIGHT/2) { if (p2_y < SCREEN_HEIGHT-PADDLE_HEIGHT) p2_y++; } else if (p2_y > 0) p2_y--; 

Articles Liés

Comment faire la meilleure Table de Beer Pong sur le campus

Comment faire la meilleure Table de Beer Pong sur le campus

Êtes-vous fatigué de jouer pong bière boiteux pli des tables ?  Ou peut-être fatigué de prendre vos amis porte les gonds, chaque fois que vous voulez jouer ?  Vous êtes-vous déjà demandé comment ils construisent toute la bière fraîche, tables de ping
Nulle part de Beer Pong sur roues

Nulle part de Beer Pong sur roues

nous aimons jouer pong bière alors j'ai créé ma propre version pour prendre n'importe où. Il peut être pris à part et stockées, et c'est sur roues. Le projet nécessite de couture et m'a pris environ 2 heures. Camping cet été va être un souffle lorsqu
Pong sur Arduino esplora !

Pong sur Arduino esplora !

Hey tout le mondeL'Arduino Esplora est un microcontrôleur incroyable utilisant le grand 32u4 Atmega avec intégré usb serial ainsi que de nombreux grands capteurs tels que :-Capteur-Capteur-Accéléromètre 3 axes-Joystick-Slider-RGB LED-BuzzerMaintenant
Comment mettre le texte sur un pic

Comment mettre le texte sur un pic

il s'agit d'un instructables sur comment mettre le texte sur une image. Je vais faire des choses en utilisant ce lapin heureux (très très ennuyeux)alors Amusez-vous.Étape 1: Les choses dont vous aurez besoin Chose que vous aurez besoin:PC ou ordinate
Bob l’éponge sur le mur

Bob l’éponge sur le mur

J'ai voulu une murale spéciale pour notre fille, quand j'ai enlevé un morceau de mousse à la salle d'artisanat, je suis venu avec une idée sympa de verryÉtape 1: mousse de rembourrage j'ai coupé dans la pièce de mousse le corps de Bob l'EpongeÉtape 2
PIC 12F675 programmeur/OscCal restauration/testeur

PIC 12F675 programmeur/OscCal restauration/testeur

Un de mes circuits que je construis assez souvent (20-40 à la fois), utilise un PIC 12F675. J'ai eu les problèmes suivants :Les conseils que je fais, n'a pas les capacités de programmation en circuit. C'est pour permettre une mise en page du Conseil
Ping Pong Gun

Ping Pong Gun

il s'agit d'un très amusant moyen de jouer au paintball sans toute la peinture. Ces armes sont faciles à faire et nécessite peu de matériel.Étape 1: Les matériaux Vous avez besoin :1-1/2 pouces ABS pipe (d'environ 18 pouces de long)-bouteille d'eau d
Amusez-vous avec PIC Assembly - Episode 22

Amusez-vous avec PIC Assembly - Episode 22

Le dicton est que « la nécessité est la mère de l'invention ». En réalité, cependant, il y a beaucoup de « mères » de l'invention. Mon préféré est « paresse » mais parfois trucs obtient inventé juste parce que c'est un plaisir au défi de comprendre u
Comment peindre une pépinière sur le thème de star/nuit-ciel qui durera jusqu’au lycée.

Comment peindre une pépinière sur le thème de star/nuit-ciel qui durera jusqu’au lycée.

Avant j'ai même eu des enfants, j'ai commencé à peindre ma chambre d'hôtes dans un thème de star/nuit-ciel parce que je suis vraiment, vraiment, vraiment noix pour l'espace et toutes les choses liées à la star. Comme la « all-I-ever-wanted-to-be-was-
Comment faire pour s’accrocher à une palette de ping-pong

Comment faire pour s’accrocher à une palette de ping-pong

Ping pong est un sport étonnant qui exige une coordination oculo-manuelle précise et des réflexes. Il faut habileté à frapper la balle et même plus de compétences de frapper la balle sur la table. Compétences de base à connaître sont pouvant servir l
Éponge + méthode de chlorure ferrique--Etch PCB en une Minute !

Éponge + méthode de chlorure ferrique--Etch PCB en une Minute !

Dans ce Instructable, je vais vous montrer Comment etch un circuit avec environ une cuillère à soupe de chlorure ferrique solution de gravure et une éponge carrée de 2 pouces. Vous serez surpris comme le cuivre exposé sur le circuit imprimé disparaît
Clignoter une LED avec langage assembleur & un PIC

Clignoter une LED avec langage assembleur & un PIC

pour énoncer l'évidence aveuglante, il y a beaucoup de saveurs du microcontrôleur dans le monde.  Il y a d'innombrables applications pour eux aussi.  Ce Instructable couvrira les étapes nécessaires à clignoter une LED en utilisant un microcontrôleur
Comprendre l’ICSP pour les microcontrôleurs PIC

Comprendre l’ICSP pour les microcontrôleurs PIC

programmation de microcontrôleurs n'est pas difficile. Construire un programmeur rend un grand premier projet électronique. L'objectif de cette instructable est d'expliquer la méthode simple « in circuit serial programming » utilisée avec PICs de Mic
Starry Night argile polymère plat porte-éponge

Starry Night argile polymère plat porte-éponge

j'étais fatigué de mon porte-éponge en plastique moche.  J'ai lu que l'argile polymère cuite est assez résistant à l'eau, et gens ont fait des scultpures en plein air avec lui.  Je décide donc d'utiliser l'argile polymère pour rendre le porte-éponge.