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
source codes for my(small indie game developer) games

My repository for most of my finished && unfinished games Table of Contents Getting Started Prerequisites Installation Usage License Contact Prerequis

Gustavs Jākobsons 1 Jan 30, 2022
a game of life implementation in python

gameoflife-py python implementation of game of life Installing As long as you have bash and curl installed and are on Linux the install script should

Raghav 5 Jun 09, 2021
Useful tools for Minecraft worlds such as remove unused chunks, find blocks or entities.

Useful tools for Minecraft worlds such as removing unused chunks and finding blocks, command blocks or entities.

Rapha149 1 Feb 17, 2022
中文版本的ai地牢,一个使用GPT-2的文字冒险游戏,使用清源CPM预训练模型finetune而成。

中文版本的ai地牢,一个使用GPT-2的文字冒险游戏,使用清源CPM预训练模型finetune而成。

icybee 178 Jan 03, 2023
It calculates the Nim sum of a nim game.

nim-sum It calculates the Nim sum of a nim game. The rules of Nim The traditional game of Nim is played with a number of coins arranged in heaps: the

2 Jan 02, 2022
🥕Try and keep da carrot alive or else . . .

Carrot 🥕 Warning 💥 : I am not a botanist. I do not study carrots or plant life. I am a noob programmer :P. So don't belive anything you see in this

1 Jan 03, 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
A simple yet powerful Snake Game made with myPygameWorkflow

snakeGame A simple yet powerful Snake Game made with myPygameWorkflow. Requirments python3 Python.org myPygameWorkflow Github Ripo Usage $ cd main $ p

DuskyElf 1 Dec 26, 2021
A Pygame game made in 48 hours

Flappuccino Flappuccino is a game created in 48 hours for the PyGame Community New Years Jam using Python with Pygame. Screenshots Background Informat

PolyMars 242 Jan 02, 2023
The original Tetris tile-matching game as adopted by IBM PC.

🕹️ Tetris Game The original Tetris tile-matching game as adopted by IBM PC. Game developed purely on python using the Dear PyGui Framework. 📖 Instru

14 Nov 12, 2022
Un semplice Snake game , come negli anni 90!

Project-SnakeGame Un semplice Snake game , come negli anni 90! ITA VI porto un semplice giochino per i nostalgini degli anni 90 , ispirato al vecchio

Matt K Lawrence 1 Oct 17, 2021
Multiple hacks that breaks the game

Blooket-Hack All of the cheats are based on a game mode.

glizzz_y 484 Feb 25, 2022
This is a basic virtual quiz game using opencv-python

Basic Virtual-Quiz-Game This is a basic structure of a virtual quiz game using opencv-python. As the camera window opens up we can see the questions a

2 Dec 11, 2021
Wordle Tas Tool is a terminal application for solving Wordle puzzles

Wordle Tas Tool Terminal application for solving Wordle puzzles Wordle Tas Tool (WTT) is a Python script that iterates over SCOWL95 to solve Wordle pu

1 Feb 08, 2022
This repository contains algorithm and solver for the game WORDLE

Wordle-Cracker This repository contains algorithm and solver for the game WORDLE How to use Run the program: python main.py Type in the guess word in

YiHsin Chen 3 May 14, 2022
Minimalistic generic chess variant GUI using pyffish and PySimpleGUI, based on the PySimpleGUI Chess Demo

FairyFishGUI Minimalistic generic chess variant GUI using pyffish and PySimpleGUI, based on the PySimpleGUI Chess Demo. Supports all chess variants su

Fabian Fichter 6 Dec 20, 2022
This is a python interactive story game that I made to show off what I've learnt in python coding for a month

Purpose The files in this repository are for that of a story game created with python version 3.8.5 The purpose of this project was to get familiar wi

0 Dec 30, 2021
An asynchronous Minecraft server wrapper written in python3 with asyncio

mark3 (WIP) A modern Minecraft server wrapper written in python3 with asyncio TODO Note: The order of the following checklist doesn't necessarily mean

Colin Andress 7 Jul 29, 2022
A coven of tools to assist in PnP RPGs.

pupillae A coven of tools to assist PnP RPGs. Status: Pre-alpha. Testing. Adding necessary functions and features as discovered/required. Other-than-P

0 Dec 09, 2021
You can play TicTacToe with the engine running UI.py with python3

TicTacToe An "Engine" for TicTacToe You can play TicTacToe with the engine running UI.py with python3. The file engine.py is designed so you can make

Ahnaf Syndeed 3 Feb 20, 2022