Quantcast
Channel: Kodi Community Forum - All Forums
Viewing all articles
Browse latest Browse all 84011

[WIP] SteamBMC - Launch and play Steam games from XBMC (v1.0.0, buggy but works)

$
0
0
Here's the first release of an addon I've coded in the past few days to do something that I've wanted from XBMC for a while.

Purpose
Essentially this lets you play and launch any installed Steam game on your system. It also fetches artwork and logo images from the Steam server. No messing around with custom Advanced Launchers -- this handles everything automatically, and will fetch new games as they are added to your Steam account. It integrates into XBMC, unlike Big Picture. It's buggy, unlike Big Picture. Hopefully the last one will change.

Features
  • Automatically downloads the list of owned games from SteamCommunity.com
  • Launch games with a single click, all within XBMC
  • Downloads artwork where available (background fanart and logo)
  • Pretty fast to launch games, faster than waiting for the Steam client to start

[Image: X7k3l2x.png]

[Image: uf44b7A.jpg]

Known Bugs (It is an Alpha release!)
  • Sometimes XBMC crashes if you select the settings dialog or items; I'm not sure why and it's hard to consistently replicate. It just seems to shut down. Log file leaves no error message. This needs fixing before any final release, I'd appreciate if anyone has any ideas on why this happens.
  • If an artwork download is in progress and XBMC is quit, the download will continue until all art has been downloaded, even if the XBMC window is gone. This leaves XBMC hanging at 100% CPU on shutdown in some cases, though it does eventually finish after art has been fully downloaded.
  • There are compatibility issues (it doesn't open the games page) with 12.0, or at least my install of 12.0. Use of 12.2 is recommended.
  • Some non-Confluence skin issues when loading, but they go away once loaded. (I'm guessing these occur because the directory entry hasn't yet been defined. Perhaps defining an empty directory before loading will help.)
  • "Border Art" is buggy, and only currently works for wide logo scaling. Don't use it unless you HAVE to (some skins like to scale artwork out of aspect ratio. Most are fairly good with not doing this in my experience.)
  • Time-out for HTTP requests isn't generous enough for some requests.
  • "Playback Failed" may appear in some cases, even if the game launches successfully. This appears to be related to some kind of internal XBMC time out. If the Steam.exe process does not fork quick enough, XBMC thinks the playback was unsuccessful.

TODOs
  • Multiple Steam profiles (different Steam accounts with different games), perhaps with dynamic user-switching (all games in one page, from multiple accounts, with it logging into a different Steam account for each.)
  • Linux/OS X support. Coming shortly.
  • Game time, game ratings, game summaries, etc. Skeleton code for fetching game play time, but nothing more.
  • Clean up code. (Maybe try and pull apart the steamapi and XBMC parts...)
  • Cache games list -- avoid fetching too often.
  • Ability to hide games not wanted on the list.
  • Group games into categories e.g. Kid Friendly. (Maybe...)
  • Add your own fanart.
  • Select higher resolution fanart if available. (Currently, the code only finds the first fanart available, which may be crusty and low resolution. Try and find a 720p/1080p background, if available.)
  • Don't hammer the server too much, I should add a delay between requests...
  • Perhaps move from os.system to subprocess, if it works better on some platforms.
  • You can try and launch Steam games you haven't yet downloaded, and Steam will try to download them. Is this a desired feature? Seems it would be better to abort with an error -- need to see if there's a way to detect if a game is actually installed.
  • Changing the public URL doesn't get reflected after you leave the settings dialog. You need to leave the addon then enter it again to refresh that.
  • Blank icon necessary if no art available.

Set up
In your Steam profile, you need to create a public profile URL. This is then used to download the games list you own. On first run, you will be asked for this URL. You can also change it at any time in the Settings dialog.

Compatibility
Currently Windows only. However, support for Linux will be coming very soon, and would be trivial to add. I just need to get Steam running on my Linux box to give it a try. OS X can be added by anyone who has a Mac or can tell me what the default command line path and format for Steam is.

Download
ZIP for XBMC: http://code.google.com/p/steambmc/downlo...akechanges
Source (GPLv2): http://code.google.com/p/steambmc/source...teambmcdev

Standard disclaimer applies: this may kill you cat, burn down your house, yadadada, make proper backups and all that. It's alpha software, liable to frequent crashes.



Feedback warmly welcomed...

Viewing all articles
Browse latest Browse all 84011

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>