NSI project --> 2D platformer in Python with Pygame

Overview

Projet de NSI (2021-2022): Jeu sous Python

Collaborateurs: Remi K-S et Nathan D

Lien de l'environnement IDE de Python en ligne: https://replit.com/@RemiK-S/NSI-Project-2021-2022-Remi-K-S-et-Nathan-D#main.py ET si le premier lien ne marche pas: https://replit.com/join/xczalmmhdt-ndd7

Voir "Instructions du jeu" à la fin de ce fichier README

Idées de jeux sur lesquels se baser

  • Super Mario Bros. (1985)
  • Terraria
  • Pac-Man
  • Trap Adventure 2 (Impossible Game)

Idée générale: jeu Side Scroller nommé "Voyage of Death" (semblable à Trap Adventure 2)

  • Nom du jeu: "Voyage of Death"
  • Jeux programmé avec le moteur de jeu Pygame en utilisant le langage Python
  • L'arrière plan du jeu ne se déplace pas, mais c'est le personnage lui-même qui se déplace et une fois qu'il à atteint un coté de l'écran, le niveau change
  • Ce sera un Jeu de Plates-Formes (Platformer), où le joueur doit éviter des obstacles (piques, trous, ...) sous peine de perdre des coeurs (PV ---> Points de Vie)
  • "Voyage of Death" sera inspiré et basé sur le jeu Trap Adventure 2. Voici un lien Youtube pour donner une idée visuelle du jeu envisagé: https://youtu.be/YUTzQ-A0-oA
  • Il y aura plusieurs mondes, chacun contenant plusieurs niveaux
  • Chaque monde aura un thèmes different qui affectera les caracteristiques du personnage selon l'environnement, ces caractéristiques seront apliquées sur tout les niveaux de chaque monde
  • Une fois arrivé à la fin de tout les mondes sans mourir (sans avoir perdu tous les coeurs), le joueur à gagné le jeu
  • Les obstacles peuvent être statiques ou mobiles, les obsacles peuvent aussi apparaitre en dehors de l'écran
  • Le personnage sera customisable, differents cosmetiques, (couleurs, ...)
  • Il y aura un ou plusieurs niveau ou le personnage sera dans l'eau
  • Il y aura des super-pouvoirs (power-ups) qui auront des effets positifs et négatifs tels que double-saut, ralentissement, vitesse, plus de coeurs (amélioration)... qui seront achetables depuis un marchand
  • Il y aura un Boss au dernier niveau de chaque monde, qu'il faudra tuer pour progresser dans le jeu
  • Le personnage sera capable de sauter, s'accroupir, aller à gauche et à droite et d'attaquer
  • Il sera impossible de retourner à un niveaux précédent, sauf si le joueur tombe dans un piège (caché ou non)
  • Il y aura des passages secrets contenant soit des pièces d'argent ou des pièges que le joueur devra éviter
  • A chaque fin de niveau il est possible de gagner plus ou moins de pièces d'argent selon le temps pris par le joueur pour le compléter, si des power-ups ont été utilisés et la difficulté du niveau
  • Il y aura 2 modes de difficulté dans le jeu: "Normal" et "Hardcore". Le mode "Normal" laisse le joueur la possibilité d'utiliser l'entièreté du stock du marchand (sans pénalités), le joueur a un bon nombre de coeurs et si il meurs il peut réapparaitre à des checkpoints répartis à travers le jeu. Le mode "Hardcore" donnera au joueur moins d'options d'achat au marchand, il aura moins de coeurs et si il meurs, il devra recommencer au tout début du jeu (Monde 1, Niveau 1) et quand il gagne le jeu, il sera très bien récompensé
  • Des effets sonores et de la musique seront également présents dans le jeu

Les idées marquées en gras sont soit trop ambitieuses (pas absolument nécessaires) et ne seront peut-être pas achevées ou sont soit destinées à être modifiées

Planning prévisionnel général sur 15 semaines:

= Fini ; = Incomplet ou pas commencé

  • Semaine 1-3 (3 Déc. - 10 Déc. - 17 Déc.): Brainstorming d'idées pour la création du jeu

  • Semaine 4-6 (7 Jan. - 14 Jan. - 21 Jan.): Etablir les bases du jeu: Création du personnage (son Sprite ---> son apparence), ses déplacements (gauche, droite, saut, accroupissement (et peut-être attaque))

  • Nathan: Faire le Pixel art des sprites du Personnage et du Marchand

  • Rémi: Faire le plan de la carte du premier monde (Idée de projet --> 2 Mondes), faire la logique du marchand et ses marchandises

  • Semaine 7-9 (28 Jan. - 4 Fév. - 11 Fév.): Introduire plusieurs éléments dans la base du jeu: Système monétaire (pièces d'argent), marchand, power-ups, cosmétiques

  • Nathan: Collision du personnage avec les obstacles, faire le pixel art des ennemis

  • Rémi: Faire tous les niveaux de chaque monde (Idée de projet --> 2 mondes), faire la logique du marchand et ses marchandises

  • Semaine 10-12 (18 Fév. - 25 Fév. - 4 Mars): Ajouter au jeu: le son, la musique, animations des Sprites et du monde

  • Semaine 13-15 (11 Mars - 18 Mars - 25 Mars): Testing du jeu, recherche de bugs et glitches ---> debugging, balancement du jeu (Equitabilité de la difficulté)

Instructions du jeu programmé (sur Replit - "FrenchRawPerformance"):

= Fini ; = Incomplet ou pas commencé

Pour déplacer le personnage:

  • Flèches directionnelles horizontales: '←' et '→' --> Aller à gauche et à droite
  • Barre d'Espace: ' ' --> Sauter (On pourra peut-être utiliser '↑' pour sauter)
  • Flèche basse: '↓' --> S'accroupir

Pour interagir avec l'environnement:

  • Touche f ou e: 'f' ou 'e' --> Interagir (avec marchand ou autre)
  • Clique gauche de souris: 'LMB' --> Attaquer (LMB = Left Mouse Button = Boutton de Souris Gauche)
Owner
Remi K-S
Remi K-S
Implementation of the famous puzle Tower of Hanoi

Tower_of_Hanoi Implementation of the famous puzle "Tower of Hanoi". The setup consists of three pegs (sticks) and a certain amount of discs (in this i

Raffaele Fiorillo 3 Mar 08, 2022
A little python script for finding the best word choice in a Wordle game

A little python script for finding the best word choice in a Wordle game, by assuming that at each step you want to minimise the average number of possible answers left after guessing that word (note

zeb 26 Mar 16, 2022
🪨 📄 ✂ game in python with recursion

🪨 📄 ✂ Game Rock Paper Scissor game in python with recursion ⚙️ Developer's Guide Things you need to get started with this code:- Download python3 fr

Atul Anand 3 Jul 25, 2022
This is a simple rock paper scissor game created with python.

This is a simple rock paper scissor game created with python.

Fayas Noushad 3 Feb 04, 2022
PyUnity is a Python implementation of the Unity Engine, written in C++

PyUnity is a Python implementation of the Unity Engine, written in C++. This is just a fun project and many features have been taken out to make it as easy as possible to create a scene and run it.

PyUnity 206 Jan 03, 2023
Scalable computer implemented in the game of life.

scalable-gol-computer This is a computer built in Conway’s game of life. It supports variable sizes of 8, 16 and 32 bit. Maximum program size: 256 lin

Nicolas Loizeau 19 Nov 19, 2022
Lutris helps you install and play video games from all eras and from most gaming systems.

Lutris Lutris helps you install and play video games from all eras and from most gaming systems. By leveraging and combining existing emulators, engin

Pop!_OS 2 Nov 15, 2021
Wordlebot - A simple Wordle puzzle solver in python

WordleBot A simple search-based puzzle solver for Wordle, built in Python. Inspi

Rob Kimball 2 Jan 27, 2022
A Python tic tac toe game

Tic Tac Toe A Python tic tac toe game To start the game, run python3 main.py First, you have to select the game level. Today, it has three levels In a

Phant 1 Jan 14, 2022
A simple game with the main idea to be: Guess The Number

GuessTheNumber GuessTheNumber is a simple game I made using Python. The main mechanic of the game is to guess the number that randomly generated from

0 Jun 24, 2022
Brawl Stars private server for version 30.242

Brawl Stars v30 Brawl Stars v30.242 server emulator written in Python. Requirements: Python 3.7 or higher pymongo dnspython colorama Running the serve

15 Oct 17, 2021
Advanced guessing game made in only python.

Guessing Game This is a number guessing game written in python which consists of three modes; easy,medium and hard. Each mode contains there own diffi

Ayza 2 Nov 30, 2021
Pokemon game made in Python with open ended requirements from Codecademy

Pokemon game made in Python with open ended requirements from Codecademy. This is one of my first projects utilizing OOP and classes! -This game is a

Kevin Guerrero 2 Dec 29, 2021
Are you obsessed with playing the increasingly-popular word game Wordle?

WORDLE-VISION Up your Wordle game! Are you obsessed with playing the increasingly-popular word game Wordle? Ever wondered what the optimal first word

Ravi Gupta 5 May 10, 2022
Minecraft - Online Players Overlay Generator

Minecraft - Online Players Overlay Generator Contents About Quick Start Download Pre-Built Binary Run from Source Configuration Command-Line Options F

4 Sep 12, 2022
🎅 Celebrating 2021 Christmas with the development of this game

ChristmasGame (DEVELOPING) 🎅 Celebrating Christmas with the development of this game You can also use this engine to create your game too, just empty

Érik Freitas 5 Jan 10, 2022
Quantum version of the game Tic Tac Toe.

QTicTacToe Quantum version of the game Tic Tac Toe. This game was inspired by the game at this site. Installation The game requires the qiskit python

1 Jan 05, 2022
Vac-Man in Python

Vac-Man in Python This is my personal version of Vax-man game using python, which is the first task of EA Software Engineering Virtual Experience Prog

ZiXiang Luo 3 Jan 05, 2022
a simple keyboard game

Maxwell-Demon-Game Powered by Taichi. a simple keyboard game This is hw2 of Taichi course, as a basic exercise of class. Rigid 2d bodies and resolve c

8 Feb 01, 2022
This a secret santa game organizer that assigns secret santa randomly to each participant and then sends an automated mail to each santa with details of his/her secret santa child.

Before executing the script, make sure to turn on 'Less Secure App access' option from your gmail ID that will be used to send out the mails to all participants of the game. To do so, get going with

DEV_FINWIZ 10 Dec 06, 2022