2D Game Development in Python

Discussion in 'Python' started by PatrickMinnesota, Dec 21, 2007.

  1. I like to do fun stuff when learning a new language. I've been
    working with Python for a little while on real world problems mostly
    fixing bugs and writing a simulator for work.

    I was thinking as a hobby project developing a simple 2d game (think
    Donkey Kong, Space Invaders, LoadRunner) and mentioned this to my 14
    year old nephew. About a week later I got a full write up for a game
    that he wrote and would like to play. So I figure why not take his
    write up and turn it into a game as an exercise in fun and learning
    more about Python?

    I think I need at least this: 2D graphics, sound, input (kbd, mouse,
    joystick maybe), some IPC might be nice (Stuff like: Sockets, TCP,
    UDP, pipes, msg queues, shared memory). The IPC stuff would only be
    used if I decide to allow some multi-player over a network.

    I've been playing with Pygame some in my late night hobby time. I'm
    wondering what else I should be looking at since I'm not all that
    impressed with Pygame so far. Maybe it is the right library, but
    maybe it's not. Please don't point me to a list of choices. I've
    seen all the lists. I've done my reading. What I don't have is
    actual testimonials by people who have used a chunk of code to program
    an animated 2D game and had a great experience.

    I am mainly developing on Windows XP using Python 2.5.1. I also have
    multiple Linux boxes that I am migrating my life to and so any game
    needs to be platform independent because I'll be on Linux full time
    soon. If it's going to run on Windows and Linux, I think it should
    run on Mac too.

    I've been developing systems and programs for over 20 years.
    Languages I'm an expert in include C, C++, Java. I have a strong
    working knowledge and have developed non-trivial software in Smalltalk
    and Lisp.

    Thanks if you can help. And no, writing some graphics library myself
    is not an option, I need the leverage, this is a hobby.
    PatrickMinnesota, Dec 21, 2007
    #1
    1. Advertising

  2. PatrickMinnesota

    Terry Reedy Guest

    "PatrickMinnesota" <> wrote in message
    news:...
    | I think I need at least this: 2D graphics, sound, input (kbd, mouse,
    | joystick maybe), some IPC might be nice (Stuff like: Sockets, TCP,
    | UDP, pipes, msg queues, shared memory). The IPC stuff would only be
    | used if I decide to allow some multi-player over a network.
    |
    | I've been playing with Pygame some in my late night hobby time. I'm
    | wondering what else I should be looking at since I'm not all that
    | impressed with Pygame so far. Maybe it is the right library, but
    | maybe it's not. Please don't point me to a list of choices. I've
    | seen all the lists. I've done my reading. What I don't have is
    | actual testimonials by people who have used a chunk of code to program
    | an animated 2D game and had a great experience.

    Someone recently posted on the pygame list that he had tried the rather new
    pyglet (which wraps ogre) and was switching many games to that. It is new
    enough that it might not be on 'all the lists' yet. But no, I have not
    tried it yet.
    Terry Reedy, Dec 21, 2007
    #2
    1. Advertising

  3. PatrickMinnesota

    Paul Boddie Guest

    On 21 Des, 02:16, PatrickMinnesota <> wrote:
    >
    > I've been playing with Pygame some in my late night hobby time. I'm
    > wondering what else I should be looking at since I'm not all that
    > impressed with Pygame so far. Maybe it is the right library, but
    > maybe it's not. Please don't point me to a list of choices. I've
    > seen all the lists. I've done my reading. What I don't have is
    > actual testimonials by people who have used a chunk of code to program
    > an animated 2D game and had a great experience.


    I guess it's not appropriate to point to a library like this...?

    http://www.pygame.org/project/547/

    The author of this library seems to be quite productive given that
    he's released quite a few games of late. I've written one-and-a-half
    games in Pygame, so I can't say that I can give you a testimonial, but
    if you're familiar with the basics of 2D sprite plotting and animation
    (not even to the level of the old days using microcomputers), then you
    should be able to write something fairly quickly using Pygame.

    Personally, I'm not too convinced about using a game library on top of
    Pygame since the old discussion about frameworks and libraries comes
    into effect: is working within the framework (or with the library) too
    restrictive when you know exactly what you want to do? Nevertheless, I
    can envisage situations, especially if you want to prototype stuff,
    where a library would save you some time.

    > I am mainly developing on Windows XP using Python 2.5.1. I also have
    > multiple Linux boxes that I am migrating my life to and so any game
    > needs to be platform independent because I'll be on Linux full time
    > soon. If it's going to run on Windows and Linux, I think it should
    > run on Mac too.


    Well, Pygame uses SDL which is itself pretty portable.

    > I've been developing systems and programs for over 20 years.
    > Languages I'm an expert in include C, C++, Java. I have a strong
    > working knowledge and have developed non-trivial software in Smalltalk
    > and Lisp.
    >
    > Thanks if you can help. And no, writing some graphics library myself
    > is not an option, I need the leverage, this is a hobby.


    I think Pygame is a good foundation because of the SDL dependency. One
    reads horror stories about getting certain other libraries working in
    a short space of time in connection with the PyWeek challenges [1],
    and I doubt that you really need OpenGL support or anything as
    complicated as that. If you want to do particularly fancy effects or
    transitions, it might be interesting to use Pygame's support for
    Numeric - I've really only used Numeric for mundane things like
    recolouring sprites, however.

    Whether Pygame qualifies as a full "graphics library" according to
    your expectations is probably something only you can judge at present.
    If you expect full management of sprites, scrolling maps, and so on
    then you will need to look into the add-on libraries for Pygame. There
    are only three pages of libraries to look at here:

    http://www.pygame.org/tags/libraries

    Since many of them are very specific, it should be possible to rule
    out a lot of them very quickly.

    Paul

    [1] http://www.pyweek.org/
    Paul Boddie, Dec 21, 2007
    #3
  4. PatrickMinnesota

    Terry Reedy Guest

    "Steven Clark" <> wrote in message
    news:...
    | Pyglet does NOT, to my knowledge, "wrap ogre". Pyglet is a lean-and-mean
    | standalone library, and gets a big, big thumbs up from me. Check it out.
    | http://pyglet.org/
    | 2D sprites can be accomplished pretty easily within its openGL framework.

    Sorry, I mentally mixed together two things I want to try out soon (the
    Python-ogre (pyogre) ogre wrapper being the other).
    Terry Reedy, Dec 22, 2007
    #4
  5. On Dec 20, 8:16 pm, PatrickMinnesota <>
    wrote:

    > seen all the lists. I've done my reading. What I don't have is
    > actual testimonials by people who have used a chunk of code to program
    > an animated 2D game and had a great experience.


    You could use Panda3D to create the game, who cares that it is really
    a 3D engine ... just don't rotate the camera ;-)

    http://panda3d.etc.cmu.edu/what.php
    i.
    Istvan Albert, Dec 22, 2007
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. BlackHawke
    Replies:
    12
    Views:
    1,483
    Andrew Thompson
    Jan 26, 2004
  2. judith
    Replies:
    0
    Views:
    1,598
    judith
    Nov 1, 2006
  3. Max Kubierschky
    Replies:
    10
    Views:
    1,812
    pabloreda
    Mar 31, 2007
  4. Advertiser for `2D Games Development Central`

    {Game Development} 2D Game Development Central

    Advertiser for `2D Games Development Central`, May 7, 2008, in forum: Java
    Replies:
    2
    Views:
    395
    RedGrittyBrick
    May 8, 2008
  5. Advertiser for `2D Games Development Central`

    {Game Development} 2D Game Development Central

    Advertiser for `2D Games Development Central`, May 7, 2008, in forum: C++
    Replies:
    0
    Views:
    376
    Advertiser for `2D Games Development Central`
    May 7, 2008
Loading...

Share This Page