Grease project development

21 views
Skip to first unread message

Hemebond

unread,
Jan 11, 2011, 7:49:45 AM1/11/11
to Grease Users
Is there an actual Grease project repository and issue tracker? Is
development still on-going for it? It looks like a great framework and
I am trying to understand it now; just having a few problems using it.

Casey Duncan

unread,
Jan 11, 2011, 4:27:49 PM1/11/11
to grease...@googlegroups.com
Hi! Development is in sleep-mode while I finish up a book project I'm
helping with, but I have plans to get a new tutorial game going in a
few weeks and add a bunch of new features. Interest helps too! 8^) I'm
happy to help answer questions or fix problems.

At the moment the grease code is in my personal code repo here:

http://code.google.com/p/caseman/

I plan to move it to either bitbucket or github though when I renew
development. There is no real issue tracker, feel free to mail bug
reports to the list for now. We'll get one once it has it's own repo.

-Casey

hemebond

unread,
Jan 11, 2011, 6:09:13 PM1/11/11
to grease...@googlegroups.com
Hi Casey,

Thanks for the reply. The example game in the tutorial, Blasteroids,
does not work. The input and event handling is broken, which means you
can't actually control the ship. I don't know Pyglet or Grease well
enough to find the problem, but I was able to get input going by
attaching decorators and handlers directly to the window object by
following the Pyglet examples.

I'm looking forward to learning Grease; I've been looking for a
component-based Python game framework to learn from and Grease looks
really good.

Casey Duncan

unread,
Jan 11, 2011, 7:01:36 PM1/11/11
to grease...@googlegroups.com
It definitely works for me, I'd be interested to know what the
difference is. I'll do a fresh install of Pyglet and Grease when I get
a chance and see if I can reproduce this. Can you tell me some details
of your OS and exactly how you are running blasteroids? Also, what
exactly did you change to work around this? That might provide a clue.

-Casey

hemebond

unread,
Jan 11, 2011, 10:29:55 PM1/11/11
to grease...@googlegroups.com
All this is from memory since I'm at work. I'm using Ubuntu 10.04 with
Python 2.6.5, with only numpy installed system-wide. To run
blasteroids2.py (the first blasteroids.py file has no user input) I
use the command line:

PYTHONPATH=/path/to/pyglet-1.1/:/path/to/grease-0.2/ python ./blasteroids2.py

Everything runs fine but there doesn't appear to be any key binding
done. I did a quick hack at 2am this morning just to check that
regular Pyglet event handling worked. In main(), after the "window"
object is created I added

@window.event
def on_key_press(symbol, modifiers):
if symbol == key.LEFT:
if world.system.game.player_ship.exists == true:
world.system.game.player_ship.turn(-1)
elif symbol == key.RIGHT:
if world.......

etc

Same code you've got in your KeyHandler, but thrown directly into
main() against the world.

hemebond

unread,
Jan 12, 2011, 8:29:01 AM1/12/11
to grease...@googlegroups.com
I just downloaded blasteroids3.py and Grease trunk via SVN. Same
issue. This time I embedded the event handlers

def on_key_press(self, symbol, modifiers):
if symbol == key.LEFT:

into GameSystem and TitleScreenControls. I didn't even have to comment
out the existing decorators. All works well.

One small bug with the movement is that the ships position.angle
property only affects the thrust when you initially start thrusting.
If you turn while thrusting the new angle is not used.

Reply all
Reply to author
Forward
0 new messages