• 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7
  • 9
Release SteamBMC - Launch and play Steam games from XBMC (v1.0.0, buggy but works)
#61
hi again,

I upgraded to 12.2 Frodo from the team-xbmc PPA.

I then installed successfully steambmc 1.0.5. (Although it shows as 1.0.4 in the addons page)

The first time I tried to load it I got an error about sqlite.
I had to install the python-sqlite and python-pysqlite2 packages.

After that, I got this:

Code:
17:12:50 T:139648353421056   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'sqlite3.OperationalError'>
                                            Error Contents: unable to open database file
                                            Traceback (most recent call last):
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/default.py", line 164, in <module>
                                                db = gamesdb.GamesDB()
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/gamesdb.py", line 44, in __init__
                                                self.db = sqlite3.connect(GAMES_DB_FILE)
                                            OperationalError: unable to open database file
                                            -->End of Python script error report<--
17:12:50 T:139650005329792   ERROR: GetDirectory - Error getting plugin://plugin.programs.steambmcdev/
17:12:50 T:139650005329792   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.programs.steambmcdev/) failed

I tried to create the following directory by hand:

~/.xbmc/userdata/addon_data/plugin.programs.steambmcdev

but then I got a different error:

Code:
17:13:33 T:139648663787264   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'gamesdb.FolderReservedNameException'>
                                            Error Contents:
                                            Traceback (most recent call last):
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/default.py", line 164, in <module>
                                                db = gamesdb.GamesDB()
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/gamesdb.py", line 48, in __init__
                                                self.buildTables()
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/gamesdb.py", line 60, in buildTables
                                                self.addFolder(-1, 'root')
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/gamesdb.py", line 123, in addFolder
                                                raise FolderReservedNameException
                                            FolderReservedNameException
                                            -->End of Python script error report<--
17:13:33 T:139650005329792   ERROR: GetDirectory - Error getting plugin://plugin.programs.steambmcdev/
17:13:33 T:139650005329792   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.programs.steambmcdev/) failed


Any help ?
Reply
#62
Hmm. It looks like it didn't initialise properly. Please delete ALL the files in the plugin.programs.steambmcdev (addon data) directory and restart XBMC then the addon.

It may also be because I accidentally uploaded my buggy 1.0.4 which doesn't work properly unless using an existing database. Will check at home & reupload if that's the case. 1.0.5 fixed that.
Reply
#63
OK, I'm an idiot - I uploaded 1.0.4. Which is broken for new installs.

Here is a new version 1.0.7 which fixes some other bugs too.

http://tgohome.com/SteamBMC/releases/plu...-1.0.7.zip

When first run, the plugin may take around 3 minutes to scan in a library of around 25 games (and longer for more games), this is normal and please do not abort it as otherwise your games list may end up empty and you will have to restart the scan again.
Reply
#64
Ok I tried again with 1.0.7.

The first run had the same error as the previous first run (error about directory) so I created the directory, and run again.

It started, showed me the configuration, I entered my url id and then got the following error:

Code:
23:37:00 T:139648663787264   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.UnicodeDecodeError'>
                                            Error Contents: 'ascii' codec can't decode byte 0xe2 in position 8788: ordinal not in range(128)
                                            Traceback (most recent call last):
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev (2)/default.py", line 207, in <module>
                                                refreshGamesWithProgress(ifc, db) # Run the first update/game scan.
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev (2)/default.py", line 171, in refreshGamesWithProgress
                                                connectAndGetGames(ifc, kwargs={'get_art': True, 'prog_callback': lambda a,b: progGamesUpdate(progress, a, b)})
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev (2)/default.py", line 117, in connectAndGetGames
                                                ec = ifc.getOwnedGames(*args, **kwargs)
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev (2)/steamapi.py", line 428, in getOwnedGames
                                                data = getUrlReq('http://steamcommunity.com/id/' + self._public_name + '/games?tab=all&xml=1')
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev (2)/steamapi.py", line 83, in getUrlReq
                                                return fp.read().encode('utf-8')
                                            UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 8788: ordinal not in range(128)
                                            -->End of Python script error report<--
Reply
#65
Can you tell me your URL ID so I can test it on my system?

Unicode bugs... I hate them with a passion.

Try with my ID tom6676 out of interest and see if that works.
Reply
#66
My url id is Kidlike. Go ahead !

I will try with tom6676.
Reply
#67
OK with your ID it works !

I am born to be a bug hunter... :p
Reply
#68
I got your games list to work after I modified my program, so I'll upload that shortly. Seems like my XML parser doesn't appreciate UTF-8. No idea why, but it works now...

Scanning your library in took over 15 minutes, so be patient and it should work. Looks like I'll need to improve scanning in future, perhaps only add new games and add an option to "update all" which would re-download everything.
Reply
#69
I was in the process of posting that I was receiving similar errors to the addon not accepting some UTF-8 characters, then I saw your reply. Thanks for the quick work, man.
Reply
#70
1.0.8: fix Unicode bugs in steam XML downloader. Everyone should update as adding unicode-name game may cause crashes.

http://tgohome.com/SteamBMC/releases/plu...-1.0.7.zip

Plans for 1.1.0 adjusted:
- Search of games list
- Faster Steam scrape, only full-update games if requested otherwise just add new games (2~3 second scan time)
- Game genre/extra info on skin (currently blank.)
- Multiple artwork support. Selectable, auto selecting highest detail/resolution. And on skins supporting it, fading between them (not sure if possible.)
- Adding artwork to folders based on games they contain or custom user design.
- Clean up all the LOGNOTICE events which make xbmc.log huge.
- (maybe) adding non-Steam games.
- (maybe) finally get transparent borders to work.
- (maybe) multiple Steam accounts - depends on security issues storing users' passwords.
- (maybe) search integration into XBMC, if possible
- (maybe) artwork selection
Reply
#71
Is that really 1.0.8 ?

It says 1.0.7 on the link and addon.xml
Reply
#72
Let's try this again.
http://tgohome.com/SteamBMC/releases/plu...-1.0.8.zip

*headdesk*
Reply
#73
I know it's late.. Smile

edit: yay !! it worked ! :}
Reply
#74
Including game scanning? If so, great!
Reply
#75
Yeah yeah.. It's still at 35% though. But it's going well so far ! (no errors in log)

I spoke too soon Sad

I should think this one is fairly simple though.. it threw a socket timeout exception:

Code:
01:18:52 T:139823559390976   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'socket.timeout'>
                                            Error Contents: timed out
                                            Traceback (most recent call last):
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/default.py", line 207, in <module>
                                                refreshGamesWithProgress(ifc, db) # Run the first update/game scan.
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/default.py", line 171, in refreshGamesWithProgress
                                                connectAndGetGames(ifc, kwargs={'get_art': True, 'prog_callback': lambda a,b: progGamesUpdate(progress, a, b)})
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/default.py", line 117, in connectAndGetGames
                                                ec = ifc.getOwnedGames(*args, **kwargs)
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/steamapi.py", line 454, in getOwnedGames
                                                game.scrapeUncachedArtwork(art_update)
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/steamapi.py", line 352, in scrapeUncachedArtwork
                                                self.scrapeArtworkSteam("promo")
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/steamapi.py", line 299, in scrapeArtworkSteam
                                                data = getUrlReq('http://store.steampowered.com/app/' + str(self.game_id) + '/')
                                              File "/home/xbmc-d-user/.xbmc/addons/plugin.programs.steambmcdev/steamapi.py", line 79, in getUrlReq
                                                fp = urllib2.urlopen(req)
                                              File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen
                                                return _opener.open(url, data, timeout)
                                              File "/usr/lib/python2.7/urllib2.py", line 406, in open
                                                response = meth(req, response)
                                              File "/usr/lib/python2.7/urllib2.py", line 519, in http_response
                                                'http', request, response, code, msg, hdrs)
                                              File "/usr/lib/python2.7/urllib2.py", line 438, in error
                                                result = self._call_chain(*args)
                                              File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
                                                result = func(*args)
                                              File "/usr/lib/python2.7/urllib2.py", line 625, in http_error_302
                                                return self.parent.open(new, timeout=req.timeout)
                                              File "/usr/lib/python2.7/urllib2.py", line 400, in open
                                                response = self._open(req, data)
                                              File "/usr/lib/python2.7/urllib2.py", line 418, in _open
                                                '_open', req)
                                              File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
                                                result = func(*args)
                                              File "/usr/lib/python2.7/urllib2.py", line 1207, in http_open
                                                return self.do_open(httplib.HTTPConnection, req)
                                              File "/usr/lib/python2.7/urllib2.py", line 1180, in do_open
                                                r = h.getresponse(buffering=True)
                                              File "/usr/lib/python2.7/httplib.py", line 1030, in getresponse
                                                response.begin()
                                              File "/usr/lib/python2.7/httplib.py", line 407, in begin
                                                version, status, reason = self._read_status()
                                              File "/usr/lib/python2.7/httplib.py", line 365, in _read_status
                                                line = self.fp.readline()
                                              File "/usr/lib/python2.7/socket.py", line 447, in readline
                                                data = self._sock.recv(self._rbufsize)
                                            timeout: timed out
                                            -->End of Python script error report<--
Reply
  • 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7
  • 9

Logout Mark Read Team Forum Stats Members Help
SteamBMC - Launch and play Steam games from XBMC (v1.0.0, buggy but works)0