(Not) Implementing Game Logic

While working on my game for this PyWeek (#20), I had an idea for a game: Tower Defence Defence. I started writing a library for implementing thet, since there is no way I could do it in one week, and realized that it would probably be considered to implement game logic, which the rules say is not allowed. So, how much could a library like that do? Could I have a template type library, so users of the library subclass parts of the library to make their own towers, weapons, and enemies and have the library do collision and death calculations, or would I have to have less than that, like a physics engine that can tell if collisions are happening but doesn't do anything? I would like to know so that I can do something like this in a later PyWeek and for other games.

(log in to comment)


My $0.02...

Ultimately it's up to your judgement. The phrase I've heard used around here before is "if it feels like cheating, it probably is". If the library is basically a framework for a very specific type of game (i.e. tower defense), then it probably is too specific for PyWeek.

If, say it was a series of advanced collision detection libraries for games that have lots of projectiles flying around and I could use the same library to build a missile command or space invaders-like game, then it probably is generic enough to be considered sufficiently game-logic-free.

My very humble opinion is that even very specific game frameworks are fine. Ren'Py, for instance, is pretty specific and I don't have any problem when it's used in PyWeek. If there's a great tool for writing games in Python, it seems counter to the goals of PyWeek to disallow it. I think if you say up front what your tools were, and they're publicly available and people can see the demo, that should give judges a good sense of how much work probably went into the entry. But again, that's just me.