Beginner Project: This week's beginner project involves creating a Python script that generates a random maze using a maze generation algorithm, such as Prim's or Kruskal's algorithm. Your script should be able to output the generated maze as a simple grid of characters, where walls are represented by one character (e.g., '#') and paths by another (e.g., ' ').
Beginner Stretch Goal: Enhance your maze generator by adding a feature that allows users to input the dimensions of the maze. Also, provide an option to save the generated maze to an image file or another suitable format.
Intermediate Project: As an intermediate challenge, create a Python script that simulates a basic text-based adventure game. The game should consist of a series of interconnected rooms, each with a description and a set of possible actions (e.g., moving to another room, picking up an item, or interacting with a character). Players should be able to navigate between rooms by typing commands, such as "go north" or "take key."
Intermediate Stretch Goal: Expand your text-based adventure game by adding a combat system, allowing players to engage in battles with enemies encountered in the game. Implement a basic inventory system to manage items that players can use during combat or to solve puzzles in the game.
Advanced Project: This week's advanced project is to create a Python script that generates fractal images, such as the Mandelbrot set or the Julia set. Your program should be able to render the fractal images using a suitable graphics library, such as the Python Imaging Library (PIL) or PyGame.
Advanced Stretch Goal: Enhance your fractal generator by adding support for zooming and panning, allowing users to explore different regions of the fractal in greater detail. Additionally, implement options for customizing the appearance of the fractal, such as color schemes or different rendering styles.
Chris Franklin
Weekly Python