2015-08-07 08:20:49

the error is as follows.
No handlers could be found for logger "accessible_output.speech.outputs.sapi"
Traceback (most recent call last):
  File "monopoly0.1.py", line 15, in <module>
    output = Output(braille=True, speech=True)
  File "C:\Python27\lib\site-packages\accessible_output-0.7.95-py2.7.egg\accessi
ble_output\main_output.py", line 10, in __init__
    self.speech_output = Speaker(default_output=speech_output)
  File "C:\Python27\lib\site-packages\accessible_output-0.7.95-py2.7.egg\accessi
ble_output\output.py", line 44, in __init__
    self.possible_outputs.append(o())
  File "C:\Python27\lib\site-packages\accessible_output-0.7.95-py2.7.egg\accessi
ble_output\speech\outputs\sapi.py", line 35, in __init__
    self._createVoiceList()
  File "C:\Python27\lib\site-packages\accessible_output-0.7.95-py2.7.egg\accessi
ble_output\speech\outputs\sapi.py", line 76, in _createVoiceList
    self._sapi5VoiceList.extend([voice + " - SAPI5" for voice in self.sapi5obj.l
ist_voices()])
  File "C:\Python27\lib\site-packages\accessible_output-0.7.95-py2.7.egg\accessi
ble_output\speech\outputs\sapi5voice.py", line 30, in list_voices
    return self.available_voices.keys()
AttributeError: 'SAPI5' object has no attribute 'available_voices'

I don’t believe in fighting unnecessarily.  But if something is worth fighting for, then its always a fight worth winning.
check me out on Twitter and on GitHub

2015-08-07 09:02:17

I have no idea, I don't develop accessible_output, perhaps talk to the developer about it?
Christopher Toth <[email protected]>

2015-08-07 09:15:21 (edited by dhruv 2015-08-07 09:16:12)

use accessible output 2, and use  this code, for example:

 setup(
    data_files = accessible_output2.find_datafiles() + libaudioverse.find_datafiles() + list_sounds(),
    options = {
        'py2exe': {
            'compressed': False,
            'excludes': ['win32pipe', 'win32com.gen_py', 'ingress', 'Tkinter', 'IPython', 'zmq'],
            'bundle_files': 1,
        },
    },
    zipfile = None,
    windows = ['main.py'])

This is from my code, but this should work with py2exe. The list_sounds is a function from my local file but yeah.

This is not a signature.

2015-08-07 16:29:38

yeah frastlin thought you'd say that, but thought i'd toss it up here anyway if anyone else had seen it before. if at all possible i'd prefer to use pyinstaller. i'd really like to get things up and working on windows, osx, and Linux. all i have to do with pyinstaller is run it with my code on that platform and it compiles it to work there.

I don’t believe in fighting unnecessarily.  But if something is worth fighting for, then its always a fight worth winning.
check me out on Twitter and on GitHub

2015-08-09 18:16:18 (edited by Orin 2015-08-09 18:16:53)

What modifications does Pyaudiogame make? What am I missing if I simply use Python 2.7, and Pygame?
I completed some of the tutorials that come with Pyaudiogame and I'm more successful with those than BGT sadly. The reason I say sadly is, will Pyaudiogame be updated anymore? I'm guessing really all Pyaudiogame is is just Pygame and Accessible Output? I want to create a side scroller and I don't know if Pyaudiogame is the best fit for that. The only game I know of that people play regularly that is developed with Python and thus Pygame is SoundRTS.

2015-08-09 18:29:21

OK, so what pyaudiogame is is me stripping out all the graphics and filtering the useful parts into a wrapper.
I will develop it more when I finish my text engine and put out a couple games with that. I just have it out there because figuring out how pyaudiogame works is 1000000 times easier than trying to figure out how panda3d works, pygame works or pyglet works. You can download branches of pyaudiogame that use all 3 of those.
It is a toolkit for developing audio games. It isn't really an engine, it is just a wrapper that makes development using the engines easier.
pyaudiogame can totally make sidescrollers in the pygame form. Use the grid module and make some walls that have 2 squares between them. Then have the character walk through the walls and have his y coords only change to 2 for a few seconds and then have it turn back to 1 for jumping. You can schedule an event to run every few milliseconds that is the step and only have it run when the keys are down.
You can also read through the scripts in pyaudiogame, they are very heavily commented and the names are very explicit.
If you would like to add functionality do a pull request or let me know your code.

2015-08-10 04:22:03

while not a very good example for a speedy game, RSGames is written in python. and if i'm not mistaken, it almost looks like they used pyinstaller for the compilation. are all of the pyo files a reason for their lagginess? would it be quicker if they compiled to a single .exe?

I don’t believe in fighting unnecessarily.  But if something is worth fighting for, then its always a fight worth winning.
check me out on Twitter and on GitHub

2015-08-10 04:50:27

I believe that sound RTS built the laggyness into the game to be like that. It is a very slow paced game. Python and the packaging have very little to do with the speed.

2015-08-10 14:55:31

no, i was saying RSGames is slow and laggy. soundRTS flies compared to RSGames.

I don’t believe in fighting unnecessarily.  But if something is worth fighting for, then its always a fight worth winning.
check me out on Twitter and on GitHub

2015-08-10 20:09:58

Oh, sorry, I'm not sure. I think it may be their algorithms or whatnot. It is possible to make python laggy, but only after you get over 10000000 items in the space and you have about that many equations going on at once.
But if you really want something faster you can use kivy which uses Cython although it is really difficult to learn and use. Cython in general will speed up your program, but it is much more difficult to use.