在实时Steam成就中添加进度统计会有什么后果?


10

假设我在游戏中取得了一项成就,“收集您的第一件事”,并且将其发布到游戏的实时版本中,而没有进度统计。稍后,我决定我要在更新中添加一些新成就,包括基于先前成就的一个成就:“收集10个东西”。

我为此创建了一个进度统计信息,并在代码中对其进行了更新,但是我还编辑了原始成绩,以便通过进度统计信息而不是代码中的AwardFirstThingamajigAchievement()函数将其解锁。

这会有什么后果?拥有该解锁功能的玩家会发现该成就已被锁定,因为该成就已被编辑,从技术上讲使其成为新的?它会保持解锁状态,但仍会在下一个Thingamajig收集的第一个成就上弹出一点弹出窗口吗?还是Steam根本不会触摸已经解锁的成就?


我认为重命名成就将使它对那些获得成就的人保持解锁状态。删除成就以将其替换为新成就应该做相反的事情。
Rudey

Answers:


1

根据我对Steam API的了解,您可以手动设置/重置玩家通过Steam API的进度,这使您可以通过多种方式解决问题。

只要后端中的成就标识符反映了代码中的值,您就可以了,新成就应反映旧统计信息中已经实现的进度。

如果要将已经运行的成就迁移到新类型,则可以“弃用”。

  • 将旧的“隐藏”起来,并删除更新该值的游戏代码。
  • 在Steam后端创造新成就
  • 创建一个游戏代码,该代码将从旧成就中获取玩家的值并将其保存到新的加号中,并将旧值设置为0。

我想你明白我的意思。这种方法有些起伏,但很安全,可能会导致弹出窗口。但是我或多或少确定您可以设置成就值而不会引起弹出窗口。

另一方面,如果您将原始成绩更改为“ progressable”,我认为蒸汽不会清除玩家数据。这只是使进度条弹出的标志,即使您更改最大值或以其他方式修改成就,它也应该保留现有数据。所以就去观察吧!

如果您不想冒险,请做一些实验。如果您认真对待Steam部署,则无论如何都应该有一个testApp ID。

希望这可以帮助!


-1

我不了解Steam如何处理事物(尚未在此处发布),但我认为任何已经解锁成就的玩家都将保留该成就。这是因为成就与打开和关闭的布尔变量不同。成就将在成就服务器上注册。因此,此后取得的任何其他进展,无论对代码进行的任何更改都无关紧要。这样,即使我删除了游戏,我的成就也仍然存在。如果Steam不这样做(即更改代码时必须重新解锁成就),那么当您重新下载游戏时成就也将消失,因为有关成就条件的所有本地数据都将被删除。然而,

希望这可以帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.