ben-bay / learn-python

Project for my brothers to learn python.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python-learning quest

First pupil project submission here.

Welcome to Benj's excellent python quest. We r gonna learn us some python basics and make a fun game!

Code Game

Learning

Literally everyone writes code tutorials online. Here are some good ones:

...and on and on for eternity.

When u want to learn some programming thing, the steps are:

  1. Figure out what thing you want to learn
  2. Figure out how to describe the thing in words
  3. Google it
  4. Try it

Quest

U r making an RPG. U need 24 points. Each * is 1 point.

Required

Technical

  • Use python3
  • Use strings, ints, and floats
  • Use variables
  • Use conditions
  • Use lists
  • Use for/while loops
  • Use functions
  • Use classes and objects

Game elements

  • Character attributes like hp, strength, xp
  • Ability for character to choose between actions
  • 6+ monsters
  • 6+ items
  • Include randomness
  • Win and loss conditions (not too easy!)
  • Someone named "Blecks"

A la carte

Technical

  • Use dictionaries or tuples
  • Use f-strings
  • Use inheritance at least twice
  • Separate your one file into multiple files by using modules
  • Use exception handling
  • Use the modulus operator (%) meaningfully
  • Read/write to files
  • Use the internet somehow, like an API
  • Use recursion! (DANGER)
  • Use version control (GitHub!)

Game elements

  • Interesting lore that somehow is connected to the gameplay.
  • A special monster that tells riddles.
  • Procedurally generated game elements (monsters, names, items, dungeons, etc.). This can count more than once for each time it's done in a different way.
  • Add spells and magic
  • Use dungeon maps-- some sort of class or data structure that represents levels/location
  • Add more complex player attributes that affect the game in different ways such as wisdom, luck, charisma, etc.
  • Let monsters / NPCs use items just like you.
  • Add complexity to monsters / NPCs: individuals differing from their race, memory, likes/dislikes
  • Add background music/sound (probably with a third party library). Bonus if it's dynamic, linked to what's happening in the game.
  • Add visuals somehow
  • Use WASD controls for player
  • Custom goal -- as long as it's approved by Benj

About

Project for my brothers to learn python.