playMaker

Author Topic: Steamworks.NET  (Read 25033 times)

markadet

  • Playmaker Newbie
  • *
  • Posts: 20
    • View Profile
Re: Steamworks.NET
« Reply #90 on: January 28, 2018, 05:38:55 AM »
BUMP because it's the last thing I have to do on my game, and any help would be greatly appreciated.  :P

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 12925
  • Official Playmaker Support
    • View Profile
Re: Steamworks.NET
« Reply #91 on: January 29, 2018, 01:52:46 AM »
I have the same problem than ManicMiner here:

I'm also using this set of actions, and I think I've found a fairly clear-cut problem with the "Steam Unlock Achievement" action.

I'm using it, and it DOES award the achievements.. however you only get notifications for it after you close the game.

The Steamworks.NET FAQ mentions this problem specifically, and says "This is most likely caused by not calling SteamAPI.RunCallbacks() in your game or not calling SteamUserStats.StoreStats() after you set an achievement."

He later said he fixed it here:

In the end we fixed it by just pasting "SteamUserStats.StoreStats();" into the unlock achievement action - I can't say I know enough coding to say if that's a GOOD solution or not, but it seems to be working so far?

How could I do that? I don't know the C# syntax enough to do this surely (and doing a lot of tests would be very long because it has to be tested as a build on Steam...)

FYI : here is the action:
Code: [Select]
// Created by Riley Labrecque for Digital Devolver and Terri Vellmann
// (c) 2014
using UnityEngine;
using Steamworks;

namespace HutongGames.PlayMaker.Actions
{
[ActionCategory("steamworks.NET")]
[Tooltip("Unlocks an Achievement by name.")]
public class SteamAchievementUnlock : FsmStateAction
{
[RequiredField]
[Tooltip("Achievement name.")]
public FsmString achievementId;

[UIHint(UIHint.Variable)]
[Tooltip("Returns true on success, false on failure.")]
public FsmBool success;

public override void Reset()
{
achievementId = null;
success = null;
}

public override void OnEnter()
{
success.Value = SteamManager.StatsAndAchievements.UnlockAchievement(achievementId.Value);
}
}
}


Hi,

 try this code:

Code: [Select]
// Created by Riley Labrecque for Digital Devolver and Terri Vellmann
// (c) 2014
using UnityEngine;
using Steamworks;

namespace HutongGames.PlayMaker.Actions
{
[ActionCategory("steamworks.NET")]
[Tooltip("Unlocks an Achievement by name.")]
public class SteamAchievementUnlock : FsmStateAction
{
[RequiredField]
[Tooltip("Achievement name.")]
public FsmString achievementId;

[UIHint(UIHint.Variable)]
[Tooltip("Returns true on success, false on failure.")]
public FsmBool success;

public override void Reset()
{
achievementId = null;
success = null;
}

public override void OnEnter()
{
success.Value = SteamManager.StatsAndAchievements.UnlockAchievement(achievementId.Value);

SteamUserStats.StoreStats();
}
}
}

Let me know if it helps.

Bye,

 Jean

markadet

  • Playmaker Newbie
  • *
  • Posts: 20
    • View Profile
Re: Steamworks.NET
« Reply #92 on: January 29, 2018, 03:58:51 AM »
I tested it, and it works! Thank you Jean!  :)

PS : all these actions are still pretty bad (for example when they ask for ID you won't have to use what is called "ID" on steam, but the "name"). I used hundreds of different Playmaker actions on this game, and the steamworks were the only bad one (broken / incomplete).

It will be enough for me to finish my current project though, so I'm happy, but if someone really want to make a lot of things with steamworks, using Playmaker only, it wont' be possible (in the current state of these actions).

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 12925
  • Official Playmaker Support
    • View Profile
Re: Steamworks.NET
« Reply #93 on: January 30, 2018, 01:53:05 AM »
Hi,

 yes, I have it planned to dedicated the next big chunk of my time on this. I first want to finish the meFace sample for DataMaker, and then I can tackle support for steamworks.

Bye,

 Jean

clandestine

  • Full Member
  • ***
  • Posts: 244
    • View Profile
Re: Steamworks.NET
« Reply #94 on: January 30, 2018, 07:21:25 AM »
yes, I have it planned to dedicated the next big chunk of my time on this. I first want to finish the meFace sample for DataMaker, and then I can tackle support for steamworks.
Thats really great Jean!
Many thanks!
« Last Edit: January 30, 2018, 07:26:00 AM by clandestine »

BDFgames

  • Playmaker Newbie
  • *
  • Posts: 28
    • View Profile
Re: Steamworks.NET
« Reply #95 on: February 01, 2018, 02:01:50 PM »
yes, I have it planned to dedicated the next big chunk of my time on this. I first want to finish the meFace sample for DataMaker, and then I can tackle support for steamworks.

This is excellent news! Thanks, Jean. You've made my day.  :D

craigz

  • Full Member
  • ***
  • Posts: 113
    • View Profile
    • Haven Made
Re: Steamworks.NET
« Reply #96 on: February 12, 2018, 08:16:56 AM »
Hi,

 yes, I have it planned to dedicated the next big chunk of my time on this. I first want to finish the meFace sample for DataMaker, and then I can tackle support for steamworks.

Bye,

 Jean

Wahoo! :D this gets me pumped to hear Jean! :D

Kathar

  • Playmaker Newbie
  • *
  • Posts: 39
    • View Profile
Re: Steamworks.NET
« Reply #97 on: February 13, 2018, 03:38:03 PM »
Hi,

 yes, I have it planned to dedicated the next big chunk of my time on this. I first want to finish the meFace sample for DataMaker, and then I can tackle support for steamworks.

Bye,

 Jean
Will be needing to integrate Steamworks into my game soon, so this is awesome to hear! Look forward to it - cheers!

Neikke

  • Junior Playmaker
  • **
  • Posts: 76
    • View Profile
Re: Steamworks.NET
« Reply #98 on: April 11, 2018, 05:07:32 AM »
Hey folks, any progress on that?

BDFgames

  • Playmaker Newbie
  • *
  • Posts: 28
    • View Profile
Re: Steamworks.NET
« Reply #99 on: April 27, 2018, 03:25:00 AM »
Intently watching this thread, guys...hoping something is happening?  :)

ben_aoineko

  • Playmaker Newbie
  • *
  • Posts: 1
    • View Profile
Re: Steamworks.NET
« Reply #100 on: May 18, 2018, 10:33:02 AM »
Very glad to hear this is being worked on. The players for my Steam game 'Super Pillow Fight' really want achievements!

terri

  • Sr. Member
  • ****
  • Posts: 357
    • View Profile
    • terrivellmann.tumblr.com
Re: Steamworks.NET
« Reply #101 on: May 19, 2018, 09:30:52 AM »
Very glad to hear this is being worked on. The players for my Steam game 'Super Pillow Fight' really want achievements!

Achievements, leaderboards and stats are totally doable with the actions you can find on this thread. Only the achievement unlock action needs a quick fix because they were made for an earlier version of Steamworks.net, but its super simple.

BDFgames

  • Playmaker Newbie
  • *
  • Posts: 28
    • View Profile
Re: Steamworks.NET
« Reply #102 on: May 20, 2018, 12:59:51 AM »
Any progress on this, Jean ?  :)

djaydino

  • Administrator
  • Hero Member
  • *****
  • Posts: 2952
    • View Profile
    • jinxtergames
Re: Steamworks.NET
« Reply #103 on: May 20, 2018, 03:45:58 PM »
Hi,
I will look into this in the upcoming weeks