[BUG] Steam achievement progress instant unlock
Hello, we have problems with the achievement system between UE4 and Steam. We have followed this link images to create stats and achievements: link text We have also added achievements to "DefaultEngine.ini" and Steam overlay is visible when we run the build game or in "Standalone Game". We added achievements and stats to Steamworks as the following pictures: Any error in them? From our PlayerController we increased the initial value (0)+1, and try to write the result. However, even the achievement of the image needs 100 attempts, is unlocked in the first try. Thx ;).
(comments are locked)
|
Hi, It looks like Incremental Achievements work differently than regular Achievements. The WriteAchievements node will unlock the achievement when it is run. The Progress input is a bit misleading; that actually refers to a function in the engine that is not currently implemented in the Steam OSS, SteamUserStats()->IndicateAchievementProgress() for things like showing a progress bar. Instead, you want to update the Stat itself. In Blueprints, you can access this using the ReadLeaderboardInteger and WriteLeaderboardInteger nodes. Once the value you feed it reaches the max limit you've set on the Achievement, it will automatically unlock (as long as the Stat and Achievement are appropriately linked; it looks like yours are). Hope that helps! answered Oct 28 '15 at 09:46 PM ![]() Today we trying to read and write "stats" using ReadLeaderboardInteger and WriteLeaderboardInteger, but the "ReadLeaderboardInteger" node always fails and WriteLeaderboardInteger returns TRUE, but nothing has changed. Stat "1_0" for Achievement "1/0" and stat "1_1" for Achievement "1/1", Write and Read Leaderboard Blueprints, GameOuput, DefaultEngine.ini and Steam Achievement status: Any advice? Thx. Can you provide the logs from your game after you run WriteLeaderboardInteger and ReadLeaderboardIngeger? Of course, Where I can find them? "C:\Users[MyUser]\AppData\Roaming\Unreal Engine\AutomationTool\Logs\"? I apologize, in a Shipping build it won't generate the logs I need. I'll keep digging and let you know. Right now I'm seeing a few reports from people who are seeing a potential problem in the Leaderboard code, and I'm looking into that now. Here's a reference that may be helpful: https://answers.unrealengine.com/questions/257107/how-to-use-steam-leaderboards-from-bp.html I'll post back here when I get more info. I can try in Standalone Game with my SteamAppId as SteamDepAppId. ¿Logs are also generated in this way? PD: mmmm, same name for Stat and Achievement with '_' for key-value pair? I'll try and tell you something.
does this mean the write achievement progress node cannot just show the achievement progress? After some testing when progress=0 nothing happens, when progress anything>0 it just unlocks the achievement (which is tied to stats/leaderboard correctly). Using blueprints only here. Hello Lazy Games, I'd recommend looking at our Unreal Match 3 Project. It is done in blueprints, and has a working achievement system, including the Get Cached Achievement Progress node functioning as expected. Looking into that project should give you an idea of how to get your setup in working order. Have a great day Using "Write Leaderboard Integer" as a workaround (for the "Progress" input on "Write Achievement Progress" being broken), does work, provided you also use the workaround required for the "Write Leaderboard Integer" node (i.e. the doubled up stat name), BUT DO NOTE: it only works up to a value of 10, oddly. e.g. if you write the stat each time "Item X" is used, with a goal of 20 times, it successfully writes the stat for the first 10 times, but after that fails. I explained it better here.
(comments are locked)
|
SUCCESS! Stats Behaviour is very strange. As I read the link, I followed these steps: -Steam Stat name = mystatname_mystatname Yes, twice Stat name separated by underscore. Careful not to use more than one underscore. -Then in Steam Achievement: Steam Achievement name = myachievementname Here it does not matter if it is different from the Stat name. -Stat Blueprint name = mystatname: Without underscore , because UE4 adds subsequently and forms mystatname_mystatname string. First of all, get the CacheAchievements to read and write Stats. It seems to work. Anything else? We have noticed that if we make several "WriteLeaderboardInteger" (max 5) takes a long time to update the status of Stats.
(comments are locked)
|
Not too familiar with steam, but you have your minimum value for the acheivment as Zero, so, when you add +1 its already above 0 and they get it. Or thats what it seems like to me.
(comments are locked)
|
Follow this question
Once you sign in you will be able to subscribe for any updates here
It's the same for me, the progress just gets set to 100+whatever I'm incrementing
Hi all,
I'm trying to get our support team a Steamworks account we can use to test this with the Steamworks tool. I will let you know once we're able to investigate further.
Hey Ben, Any updates on this topic?
Hi ooParanoia,
The information provided below is all we have to go on right now.