Page 1 of 6
Help integrating the Steam API
Posted: Wed Apr 01, 2015 10:16 am
by crimsonnight
Hi all,
My novel's been Greenlit, so I now need to integrate the Steam API but am finding it a little overwhelming. According to these instructions, what's the minimum I need to do to prepare my game for distribution on Steam?:
https://partner.steamgames.com/document ... ng_started
Is it complicated to add achievements?
Is it ok to include any extra files/code in non-Steam builds of the game?
Thanks!
Re: Help integrating the Steam API
Posted: Wed Apr 01, 2015 6:07 pm
by SundownKid
You can message Pytom and he will send you the instructions for adding achievements. But it's mainly similar to changing a variable in the game, except you are just turning the achievement on, or adding an amount to it. As for the achievements themselves, you make those within Steam.
Re: Help integrating the Steam API
Posted: Fri Apr 03, 2015 7:54 am
by crimsonnight
Been trying to catch him on IRC - any advice regarding my other queries?
Re: Help integrating the Steam API
Posted: Fri Apr 03, 2015 9:33 am
by jack_norton
Unfortunately I don't have time now but I made a short guide worth checking:
http://lemmasoft.renai.us/forums/viewto ... 51&t=29362
Re: Help integrating the Steam API
Posted: Fri Apr 03, 2015 12:19 pm
by crimsonnight
Hi, thanks Jack, I have seen that, but it's integrating the API that I'm mainly struggling with. Are you able to help?
Re: Help integrating the Steam API
Posted: Fri Apr 03, 2015 6:42 pm
by PyTom
Basically, you have to unzip the files, add a steam_appid.txt file to the directory with renpy.exe in it, and then use the new achievements API documented in the Ren'Py manual.
Re: Help integrating the Steam API
Posted: Sat Apr 04, 2015 5:14 am
by crimsonnight
PyTom wrote:Basically, you have to unzip the files, add a steam_appid.txt file to the directory with renpy.exe in it, and then use the new achievements API documented in the Ren'Py manual.
Ok, thanks Tom, so literally just extract the files to the core Ren'Py directory and build the distributions as usual? Just the standard achievements outlined here:
http://www.renpy.org/doc/html/achievement.html will work with Steam?
Re: Help integrating the Steam API
Posted: Sat Apr 04, 2015 3:10 pm
by PyTom
Yes, the standard API should automatically enable steam if present. (You'll see the steam overlay pop up.)
Re: Help integrating the Steam API
Posted: Tue Apr 14, 2015 4:48 am
by crimsonnight
PyTom wrote:Yes, the standard API should automatically enable steam if present. (You'll see the steam overlay pop up.)
Hi Tom, sorry for the delay, was waiting to receive my appID. I've extracted the sdk zip to the root of my Ren'Py folder and added the steam_appid.txt (containing my ID) to the same folder, but I'm not seeing the Steam overlay present in the built distribution. I've tried both the 'sdk' folder and its child folders in the root directory but neither seem to be enabling the SteamUI - what am I doing wrong? Thanks
Re: Help integrating the Steam API
Posted: Tue Apr 14, 2015 11:29 pm
by PyTom
Depending on the platform, you may need to have steam running, or even launch the game from the steam launcher. You'll also need to copy the appid file into the built distribution.
Re: Help integrating the Steam API
Posted: Fri Apr 17, 2015 2:19 pm
by crimsonnight
PyTom wrote:Depending on the platform, you may need to have steam running, or even launch the game from the steam launcher. You'll also need to copy the appid file into the built distribution.
Hi Tom,
I've uploaded my novel to Steam (using the following guide:
https://youtu.be/SoNH-v6aU9Q) but when trying to run it from my Steam library I get the following error: 'Failed to start game (invalid app config)'. Do you know what I could be doing wrong? I've attached a screengrab of the folder I'm uploading to Steam which just contains the standard Ren'Py project output with the extra 'steam_appid.txt' file. Thanks.
Re: Help integrating the Steam API
Posted: Fri Apr 17, 2015 2:24 pm
by PyTom
I don't know, offhand. Perhaps one of the other steam users can help.
Re: Help integrating the Steam API
Posted: Fri Apr 17, 2015 2:38 pm
by jack_norton
Seems a problem of setup on Steam panel to me. Did you configure the launch options there ?
Re: Help integrating the Steam API
Posted: Fri Apr 17, 2015 5:00 pm
by crimsonnight
jack_norton wrote:Seems a problem of setup on Steam panel to me. Did you configure the launch options there ?
Under Installation -> Configuration? I have indeed, according to your guide (screengrab attached).
I've grabbed the code from the build/upload process - there was an error, but as the whole project seems to have uploaded I'm guessing it's not the issue?
Code: Select all
[ 0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
Logging in user 'grantwilde' to Steam Public...httpclient.cpp (3706) : Assertion
Failed: (uint32)m_pHTTPRequestCache->m_listCacheFileLRU.Count() == (uint32)m_pH
TTPRequestCache->m_mapCacheFiles.Count()
Logged in OK
Waiting for license info...OK
[2015-04-17 18:46:33]: Building depot 363411...
Building file mapping...httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTT
PRequestCache->m_listCacheFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapC
acheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
Scanning contenthttpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequest
Cache->m_listCacheFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFile
s.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
..httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listC
acheFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
httpclient.cpp (3706) : Assertion Failed: (uint32)m_pHTTPRequestCache->m_listCac
heFileLRU.Count() == (uint32)m_pHTTPRequestCache->m_mapCacheFiles.Count()
........................................................................
Uploading content.........................
[2015-04-17 19:07:37]: Successfully finished appID 363410 build (BuildID 593520)
Re: Help integrating the Steam API
Posted: Sat Apr 18, 2015 2:34 am
by jack_norton
Did you enable the new build in the default branch ?