PyWeek - Grimfang - feedback

Fun Prod Inno Disq N/W Comments
1 1 1 yes

Game unplayable in fullscreen mode on a dual monitor setup. Tried to edit code to disable
fullscreen, but couldn't work out how to.

3 4 5

I like the idea. But I didn't like to have to install Panda3d.

5 4 5

Brilliant idea! It's pretty rare to find an idea that merges mechanics and theme so naturally,
and this is a very good implementation of it. I also like the drawings. My only complaint is that
it is too short (but that's a good thing). :)

In terms of design, a suggestion is to rethink the loss condition, because it is much easier to
lose in the beginning than in the end. Once you've stabilized yourself a bit, you don't really
have to worry much about losing, especially since the rate of red and blue balls seem to be the
same or similar. On the other hand, the difficulty may feel unfair in the beginning because an
unlucky red ball would make you immediately lose.

I would really like to see a refined implementation of this! I think this is a great idea with a
lot of potential for a full-fledged game!

3 4 3

I really liked the character art. My strategy was to keep the flippers up most of the time.

1 1 1 yes

After install panda3d 1.9.1 I could see the menu and instruction scene at the start of the game
(nice lions!) but then the game exited with a traceback complaining that node had no attribute
.name. Changing .name to .get_name() then caused the game to lock up hard (I had to restart X11)
on exiting the help. Was looking good though!

4 3 4

The idea here is very cool and it is a nice pinball implementation. There should be more visual
and audible feedback when a good or bad dude makes it through. Also when you fire the bad guys
into the cells or police then you should hear some kind of sound for that. In terms of gameplay
the way to win seems to be just to hold both doors up to control the flow. This means it isn't much
fun so you probably need to add something to where that strategy isn't enough. Overall though a
very nice game.

3 3 4

Please provide more attribution and information about the music you're using. The only one I
could easily find was CC-NC-ND, which isn't a particularly free license.

Overall, the concept isn't bad, and the gameplay works, but it's too short. It desperately
needs more levels, or some additional twist on the mechanics to shine.

1 1 1 yes

ImportError: No module named panda3d.core

1 1 1 yes

Clicking buttons on the start screen does nothing. (MacOSX 10.6, Panda3D 1.9.2, Python2)

1 1 1 yes

I see the title screen and intro screen, but I can not see the game board, the game music is good!
C:\Python27\python.exe C:/Users/TJ/Desktop/bouncer/bouncer/main.py Warning:
pandac.PandaModules is deprecated, import from panda3d.core instead Known pipe types:
wglGraphicsPipe (all display modules loaded.) :pnmimage:png(warning): iCCP: known
incorrect sRGB profile Traceback (most recent call last): File
"C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 46, in eventLoopTask
self.doEvents() File "C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 40,
in doEvents processFunc(self.eventQueue.dequeueEvent()) File
"C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 97, in processEvent
messenger.send(eventName, paramList) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 326, in send
self.__dispatch(acceptorDict, event, sentArgs, foundWatch) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 411, in __dispatch method
(*(extraArgs + sentArgs)) File "C:\Panda3D-1.10.0\direct\gui\DirectButton.py", line
103, in commandFunc self['command'](*self['extraArgs']) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 326, in send
self.__dispatch(acceptorDict, event, sentArgs, foundWatch) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 411, in __dispatch method
(*(extraArgs + sentArgs)) File "C:/Users/TJ/Desktop/bouncer/bouncer/main.py", line
307, in exitApp self.userExit() File
"C:\Panda3D-1.10.0\direct\showbase\ShowBase.py", line 2816, in userExit
self.exitFunc() File "C:/Users/TJ/Desktop/bouncer/bouncer/main.py", line 478, in
__writeConfig page.makeDeclaration("difficulty", 0) TypeError: Arguments must match:
make_declaration(const ConfigPage self, ConfigVariableCore variable, str value)
make_declaration(const ConfigPage self, str variable, str value) :task(error):
Exception occurred in PythonTask eventManager Traceback (most recent call last): File
"C:/Users/TJ/Desktop/bouncer/bouncer/main.py", line 487, in main.run() File
"C:\Panda3D-1.10.0\direct\showbase\ShowBase.py", line 3029, in run
self.taskMgr.run() File "C:\Panda3D-1.10.0\direct\task\Task.py", line 514, in run
self.step() File "C:\Panda3D-1.10.0\direct\task\Task.py", line 468, in step
self.mgr.poll() File "C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 46,
in eventLoopTask self.doEvents() File
"C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 40, in doEvents
processFunc(self.eventQueue.dequeueEvent()) File
"C:\Panda3D-1.10.0\direct\showbase\EventManager.py", line 97, in processEvent
messenger.send(eventName, paramList) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 326, in send
self.__dispatch(acceptorDict, event, sentArgs, foundWatch) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 411, in __dispatch method
(*(extraArgs + sentArgs)) File "C:\Panda3D-1.10.0\direct\gui\DirectButton.py", line
103, in commandFunc self['command'](*self['extraArgs']) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 326, in send
self.__dispatch(acceptorDict, event, sentArgs, foundWatch) File
"C:\Panda3D-1.10.0\direct\showbase\Messenger.py", line 411, in __dispatch method
(*(extraArgs + sentArgs)) File "C:/Users/TJ/Desktop/bouncer/bouncer/main.py", line
307, in exitApp self.userExit() File
"C:\Panda3D-1.10.0\direct\showbase\ShowBase.py", line 2816, in userExit
self.exitFunc() File "C:/Users/TJ/Desktop/bouncer/bouncer/main.py", line 478, in
__writeConfig page.makeDeclaration("difficulty", 0) TypeError: Arguments must match:
make_declaration(const ConfigPage self, ConfigVariableCore variable, str value)
make_declaration(const ConfigPage self, str variable, str value)