École Internationale PACA Manosque

Asteroid (par Louis et Takuma)

Asteroid (par Louis et Takuma)

Asteroid (par Louis et Takuma)

Introduction:

 

Pour notre 1er projet d’NSI (notre 3eme de cette année) nous avons décidé de recréer le jeu d’arcade Asteroids développé par Atari. Dans Asteroids, le joueur contrôle le vaisseau spatial, et le but est de survivre le plus longtemps possible en se faisant attaquer par des astéroïdes, un score est généré et augmente à chaque fois qu’on détruit un astéroïde.

 

Présentation générale/ Description du projet

 

Description / mode d’emploi

 

le jeu se présente sous forme d’un jeu 2D dans lequel on est introduit avec un menu qui nous montre 3 choix : “Single Player”, “Multi Player” et “Quit”. Pour se déplacer dans le menu, on utilise “flèches haut” pour monter dans les choix ou “flèche bas” pour descendre dans les mêmes choix. finalement pour sélectionner un choix presser la touche “espace”.

 

 

  • Si “Single Player” est sélectionné, le jeu commence directement. Le vaisseau est placé au centre du terrain et des astéroïdes commencent à apparaître (seul les grands apparaissent). Pour avancer, on appuie sur la touche “flèche haut” ou “w” (on n’a pas la possibilité de reculer). Pour tourner, les touches “flèche droite” ou “d” pour le sens horaire et les touches “flèche gauche" ou “a” pour le sens horaire. finalement pour tirer, la touche “espace”. Le jeu se déroule sans limite de temps et le but est de détruire un maximum d’astéroïdes en tentant d’avoir le plus haut score. pour détruire les astéroïdes, ilfaut en toucher un avec les projectiles. Les grands astéroïdes donnent 100 points quand détruits et se divisent en plusieurs patits astéroïdes qui quand détruits donnent 50 points.

 

 

  • Si “Multi Player” est sélectionné, le menu propose 2 choix, si le joueur veut créer
    une nouvelle partie ou joindre une partie.
    ・Si le joueur choisit de créer une nouvelle partie(dans ce cas le joueur est l’hôte de la partie), il doit entrer le nombre de joueurs et son nom( qui va être utilisé pour distinguer son propre vaisseau des autres). Ensuite il devra attendre jusqu’à que tous les joueurs se connectent. L'adresse IP(adresse privée et non publique) de son ordinateur va être affichée dans un coin afin que les autres joueurs puissent avoir facilement l’adresse de l’hôte.
    ・Si le joueur choisit de joindre une partie (dans ce cas le joueur est un client), il doit entrer son nom et l'adresse IP de l’ordinateur où la partie est crée. Une fois la partie commence, tout se déroule comme dans single player mais avec d’autres joueurs, mais le score est la somme des scores de chaque joueur.
    Dans le mode multiplayer, on a réalisé une système pour détecter un timeout(=quand un autre ordinateur qu’on communique ne répond pas) :
    ・Chez le client, s' il reçoit pas de signal(message) de l’hôte pendant 10 secondes(cette valeur peut être changée en modifiant GameComponents/locals.py), le client va se déconnecter automatiquement de la partie et affiche une message au joueur.
    ・Chez l’hôte, même s'il trouve un joueur qui ne répond plus, il traite le joueur comme s' il était toujours là(c’est-à-dire que le vaisseau du joueur ne bouge plus sur l’écran des autres joueurs) .
  • Finalement, si “Quit” est sélectionné, la fenêtre se fermera

 

Codé  (par Alejandro et Axell)

Codé (par Alejandro et Axell)

Codé (par Alejandro et Axell)

 

C’est un jeu qui consiste au déchiffrement d’un message secret qui vous sera présenté avec une clef de chiffrement. Vous devrez alors entrer le message correct pour pouvoir gagner la partie ! Il vous fera sentir comme un vrai Alan Turing, qui cherche la clé pour résoudre le mystérieux message.

 Vous retrouverez de différentes difficultés disponibles : de la difficulté facile pour nos joueurs occasionnels, à la plus dure qui est dédiée à nos experts en déchiffrement ! Bien-sûr sans oublier les amateurs dans l’affaire qui auront des difficultés intermédiaires.

 Il y a aussi des chiffrements variés pour tous les goûts, qui vont d’un simple décalage à des fonctions mathématiques qui rendent la résolution du message de plus en plus dure.

Faisons-nous face à un apprenti qui deviendra maître du déchiffrement ?

 

Une vidéo de présentation de notre projet

Mastermind (par Aaron et Axzell)

Mastermind (par Aaron et Axzell)

Mastermind (par Aaron et Axzell)

Tout d’abord on avait commencé avec l’idée de faire une fonction pour faire en sorte que ce soit plus simple pour nous mais cela n’a pas été le cas. Donc on a défini une variable nommé (random.randint) qui nous donnerait une quantité de combinaisons infinie comprise entre 1000 et 6666 pour faire le jeu plus simple, suite à ça on a établis à chaque couleur un chiffre qui vont de 0 à 6 suivi d’une fonction (int) qui prend une chaîne et renvoie l’entier (nombre entier) représenté par la chaîne. On a utilisé donc (int(input)) pour que l’utilisateur rentre une combinaison (on l’a nommé combi_util).

On a ensuite cherché la façon de déterminer si la combinaison tapée par l’utilisateur était juste ou fausse, si un des «couleurs» était à la bonne place ou si un des chiffres tapé par
la personne était juste mais à la mauvaise place. Donc il nous a été conseillé d’utiliser une chaîne de caractères (str) pour vérifier chaque chiffre autant du (combi_util) comme
celui de (combi_alea). Après on a eu de l’aide pour créer deux fonction qui puisse vérifier si la position d’un chiffre et bonne et si la «couleur» et bonne aussi, qui on était nommé (def verif_pos(position) et (def verif_couleur(chiffre).

Et enfin on a aussi demandé de l’aide pour établir une boucle qui donnera une nombre limitée d’essais qui pour l’instant n’est pas encore à point mais il nous manque juste trouver la petite erreur

Le Pendu (par Estelle et Giovanni)

Le Pendu (par Estelle et Giovanni)

Le Pendu (par Estelle et Giovanni)

-Jeu réalisé par Estelle et Giovanni dans le cadre du projet NSI.

-L’objectif était de reproduire le jeu connu de tous en le programmant sur Pyscripter.

-Notre jeu se présente de la même manière que si on y jouait sur papier, avec un mot à trouver et un certain nombre de vies, modélisées par la construction du dessin du pendu.

-Nous avons toujours un gagnant : soit celui qui a proposé le mot, soit celui qui l'a deviné !

-Le pendu que nous avons codé dans l'interpréteur Python

-Exemple du déroulé d’une partie avec le mot ‘camion’:

Démineur (par Elias et Nelly)

Démineur (par Elias et Nelly)

Démineur (par Elias et Nelly)

Dans le cadre de la spécialité Nsi première nous avons décidé de programmer sur python un démineur avec interface graphique. Le démineur est un jeu de réflexion dans lequel le but est de trouver les mines éparpillés sur le terrain avec des nombres qui permettent de savoir le nombre de mines a proximité. Si l’on tombe sur une mine, c’est perdu il faut recommencer

Bien que le projet soit resté inachevé dû à la complexité du module pygame qui sert a programmer les interfaces graphiques, nous avons tout de même réussi à programmer un terrain avec des cases qui disparaissent lorsque leurs coordonnées sont entrées. Les mines et les nombres quant à eux ne s’affichent pas, notre programme est donc une coquille vide.

Boucle qui génère le terrain

 

Tableau qui nous montre les mines et où on peut entrer les coordonées