Issue #26 new

10 classic games

Daniel Pope
repo owner created an issue

The Raspberry Pi foundation would like a collection of 10 example games written with Pygame Zero to form the basis of course material. These games need to be licensed for possible commercial use by the Raspberry Pi foundation as well as CC-BY-SA, under which they will be included in the Pygame Zero distribution.

The games need to be written as clearly as possible, with plenty of docstrings and comments, so that the way they work is obvious. However any working implementations of games would be gratefully received, and can be improved afterwards.

Below is a suggested list of games that could be created as example games, as well as the contributors who have made an offer to complete these games. This list is not exhaustive, but large, open-ended game projects are much less suitable than simple reimplementations of classic games.

Comments (26)

  1. Joseph Haig

    I came here to say I was having a bit of a look at Lunar Lander and had some questions but have just been tweeted by Nathan to say he hasn't started on Space Invaders yet so I may have a go with that instead.

    Regarding Lunar Lander, it requires the ability to rotate an actor but there doesn't appear to be that feature implemented, or I have looked in the wrong place. Has anyone given any thought yet about the best way to do this?

    Edit; And I've just looked at the pull requests and the one for issue #3 is about rotation and the comment about anchors is exactly the problem I encountered from my experiments.

  2. Daniel Pope reporter
    • edited description

    I've merged some of these implementations into the repo just so they can be in for the 1.1 release, which I've just cut. These were

    • Mini GirlGeek - this is great! I didn't want to include the menu and subprocess stuff, so I just dropped that and took the basic implementation
    • Tim Martin - merged with only a small deprecation fix
    • Steve Holden - merged, but I replaced your face with a playing card image I hastily drew

    I did this in the most clumsy and hasty way possible, by snapshotting the Github repos. I linked to the original Github repos in the commit messages, but I forgot to ensure there were README files so that people can track the upstream development. I will try to do this for 1.1.1!

    I haven't looked through all the other games yet. I wanted to get a release done today so I can get the results of the Europython sprint out to users, so I took a few things I could grab quickly.

  3. Log in to comment