Skip to main content

Games Pit

A minigames collection for children and a framework to start programming simple games.


Alfonso E.M.
(alfem)
A (growing) collection of small games for children. I have a little son. I love it. I have got a little Raspberry Pi. I love it too (in a different way, of course). Thinking about both, I decided to make some simple games for him, using cheap and safe components: a (far enought) TV, a wireless mouse and keyboard and -of course- one of my Raspberry Pis. To make many games quickly I choose my favourite language, Python, and started coding a little framework to avoid repeating boring tasks (loading images and sounds, printing things on the screen, waiting for keypresses...) So Games Pit is an assortment of little games (including a launcher) and an easy to learn framework to create new games.

Changes

Links

Home Page
https://github.com/alfem/gamespit/wiki

Releases

Games Pit 1.0 — 20 Mar, 2013

Pygame.org account Comments

  • Mekire 2013-03-21 15:05

    Pretty nice work. I would like to note that configobj doesn't necessarily come with python; you might want to add a comment about needing that dependency as well. Also, there actually isn't anything stopping this game running on windows. The only problem I faced doing so was in your image loader. Windows has the nasty habit of adding "index" files called thumbs.db to any folders that have images in them; because of this it was necessary to add a line in your image function telling it not to try to load anything that wasn't an appropriate file type.

    After adding the clause:
    if file[-3:] in ["png","jpg"]:
    to your autoload_images function, everything worked fine.

    As for content it was pretty amusing; the delay after dying in some of the games seemed a little too long. Also immediately after loading every time, the background behind the location of the mouse cursor doesn't update (leaves an artifact on the screen). Easily fixed.

    Anyway, great work. Cheers,
    -Mek

  • Alfonso E.M. 2013-03-22 08:23

    Thanks for your feedback!

    I have not used windows for ages, but It would be a pity if that huge group of users could not play Games Pit.

    As I am already using os.path.splitext, the fix ended up like this:

    name,extension=os.path.splitext(file)
    if extension.upper() in [".PNG",".JPG"]:

    (this change has been already uploaded to the github version)

    I am receiving more opinions of people installing it on netbooks, Raspberry Pis... so I probably willl add some general delay adjustment.

    I will try to reproduce the mouse cursor bug. I have not noticed that on my computers.

    Thanks againg!

    Mekire 2013-03-23 15:08

    Few other things. Again for the windows crowd, adding the .py or .pyw file extension on to your main file would be helpful. Also, I realized that each of your games code are put in your __init__ files. This is considered pretty bad form. Generally that init file should be blank unless you have a good reason for putting your code in there.

    I also found that your roulette game locks up. Generally this is a symptom of not making calls to the event queue often enough. Indeed after adding a pygame.event.pump() within your roulette while loop, the lock up problem is solved (however it still seems that you aren't making calls to the event queue there properly)

    Alfonso E.M. 2013-03-25 13:08

    I think adding extensions to main file is a matter of taste. I do not know if windows uses some kind of 'mime-magic' to detect the file type or just the old extension mehod.

    About the code in __init__, I put it there because I tried to make games as "plugins". As soon as you dinamically import a game it is setup and run.

    I am sure my "game center" concept is more interesting as the concept itself than as a beautiful pythonic code example. I love coding, but it is not my main activity right now. I would love to get some collaboration (or even a refactorization) from python gurus and recode everything in a future second version.

    tp9 2013-03-27 22:58

    Hi, I saw your comment and wanted to know what is your main activity beside coding? It's impressive that you find enough time to learn how to make these projects on your spare time, outside of your main line of work.

    Alfonso E.M. 2013-04-01 21:55

    I currently manage open source projects (desktop distributions, inventory and deployment...) for a regional government. But growing up my son is more time consuming!

    Alfonso E.M. 2013-03-26 08:11

    I have uploaded a little change for roulette I think fixed the lock up. Now you can stop it in the middile of one round and you can choose the number of figures and rounds in config file.

  • Bee Nine 2013-04-04 04:20

    Just like to let you know that Gamespit runs on MacOS X after I installed pygame (from the .mpkg file for Lion) and configobj (by downloading the .tar.gz, unpacking it, and running "python setup.py install".)

    The only bug I see so far is that zombies don't know how to spell "lose" and instead say that I "loose". Thanks for sharing your work.

    Alfonso E.M. 2013-04-08 17:06

    Well, As you can see, english is not my first language :-D

    I will fix that type in a second.

    I am glad to know Games Pit is useful for Mac users as well. Thanks for your instructions!

  • Bee Nine 2013-04-05 18:04

    Found a few other small bugs.

    1. Screen isn't maximized so it's easy for kids to accidentally click outside when drawing with Picazzo.

    2. There is no message letting adults know how to quit gamespit. Perhaps, if someone hits ESC, 'q', or the close box from the main menu, a message should appear saying, "Please push SHIFT + ESC to quit".

    3. The GitHub wiki page for this game says to use Control + Escape to quit, but that doesn't work on my Macintosh. I had to use Left-Shift + ESC.

    4. Picazzo's instructions say to use the middle and right mouse buttons, but Macintoshes have no concept of such things. I found I could work around it using Alt+Click (clear screen) and Command+Click (change between black, white, puce, and turquoise), but that's too much to ask of a little kid. Might I recommend having any key pushed on the keyboard change the color? Perhaps something like this:

    Space: Clear screen
    Enter: Black
    Backspace: White
    R: Red
    O: Orange
    Y: Yellow
    G: Green
    B: Blue
    V: Violet
    P: Pink
    T: Tan
    Any other key: Random color

    Thanks again for sharing your wonderful project.

    Alfonso E.M. 2013-04-08 17:04

    1. Oh! I think some more documentation is needed. In the main config
    file you can choose to fullscreen mode. Then your kid will not be able
    to exit (you have to press LeftShift + ESC)

    2. Ummm, I think that
    message will become another game for my toddler. If he learns that
    pressing ESC make a dialog pops up, he will smash the ESC key :-D Mmm,
    we need something subtle and unobstrusive...

    3. Oops! My fault! The real key combo is that LeftShift + ESC. I am changing it in the wiki right now... Done!

    4.
    Um, yes, it would be an good (and very easy to code) alternative. I
    released this early functional version with the idea of doing a full
    revision as soon as I get some feedback. But another geek project came
    to my imagination (a game with no screen, just voice) so this second
    round will be a bit delayed, but I take note of your suggestions.

    For
    Picazzo I also consider an alternate screen with different colour
    squares in a side panel where you can pick your pen color. Do you think
    this could better than different keystrokes?

    Anyway, thanks a lot for your opinion!

  • Rei 2013-11-05 04:08

    Does it now work on Windows? I would like to play it (much better if open-source).