January 16, 2020

206 words 1 min read



a simple PlantsVsZombies game

repo name marblexu/PythonPlantsVsZombies
repo link https://github.com/marblexu/PythonPlantsVsZombies
language Python
size (curr.) 10317 kB
stars (curr.) 1106
created 2019-08-28


A simple PlantsVsZombies game. It's only for personal learning and noncommercial use. If this game infringes the copyright, please let me know.

  • implement plants: sunflower, peashooter, wallnut, snowpeashooter, cherrybomb, threepeashooter, chomper, puffshroom, potatomine, spikeweed, scaredyshroom, squash, scaredyshroom, jalapeno, sunShroom, iceShroom, hypnoShroom.
  • implement zombies: zombie, flagzombie, coneheadzombie, bucketheadzombie, newspaperzombie.
  • use json file to store level data (e.g.position and time of zombies, background info)
  • support to select plant cards at the beginning of the level
  • support day level, night level, moving card select level and wallnut bowling level


  • Python 3.7
  • Notice: python version 3.7 is advisable, but not required. For LINUX: if your Linux system has a preinstalled python 3+, it’s ok to run this game. Updating to python 3.7 directly may break LINUX Mint.
  • Python-Pygame 1.9

How To Start Game

$ python main.py

How to Play

  • use mouse to collect sun, select the plant cards and seed the plant
  • you can set the start level by changing START_LEVEL_NUM value in source/constants.py
    • level 1 and 2:day level
    • level 3: night level
    • level 4: moving card select level
    • level 5: wallnut bowling level


demo1 demo2

comments powered by Disqus