お世話になっております、AchievementのProgressに関して質問があります。
OnlineAchievementsInterface.h - 47行目付近
/** The progress towards completing this achievement: 0.0-100.0 */
double Progress;
となっており、0-100想定と思っているのですが、Win版(OnlineAchievementsEOS)を利用すると1.0に丸め込まれます。
OnlineAchievementsEOS.cpp - 71行目付近
if (Achievement.Id == AchievementId)
{
Achievement.Progress = 1.0f;
TriggerOnAchievementUnlockedDelegates(*LambdaPlayerId, AchievementId);
break;
}
ですので、実績をUnlockした場合、次回時に取得した際に1.0で返ってくるのですがこちらはどう対処すべきでしょうか?
他のPlatformを見る限りは0-100準拠ぽいので、OnlineAchievementsEOSを修正すべきでしょうか?
見当違いなことをいっていたら申し訳ございませんがご教授お願いいたします。
[Attachment Removed]
お世話になっております。
お問い合わせありがとうございます。
`FOnlineAchievement::Progress` は仕様上 0.0–100.0(completion percentage) で扱う前提と考えられますが、
`OnlineAchievementsEOS` ではUnlock時に `1.0f` が設定されており、他プラットフォーム(例:Steamの100.0)と比較すると、
スケールが異なるように見える状態です。
そのため、少なくともUnlock時のキャッシュ値は 100.0 に揃える方が自然と考えられます。
一方で、Query 時にEOSから取得される Progress の値については、
実際の返却スケールを確認したうえで、必要に応じて補正を検討するのが安全です。
なおUnlock時の `1.0f` はローカルキャッシュ上の値であり、
そのままサーバーへ書き戻されるものではなく、再度Queryを行うと取得値で更新されます。
本件は現在内部でも確認中のため、追加情報が分かり次第ご連絡いたします。
[Attachment Removed]
ご連絡ありがとうございます。
本件は現在も内部で確認中のため、
進展があり次第、改めてご連絡いたします。
恐れ入りますが、今しばらくお待ちいただけますと幸いです。
[Attachment Removed]
本件につきまして、その後も内部で確認を継続しておりますが、
現時点では追加でご案内できる情報がない状況です。
また、現状本件に起因する問題も発生していないとのことでしたので、
一度本ケースはクローズさせていただければと思います。
今後、内部確認にて新たな情報が得られた場合には、
改めてご連絡いたします。
何か進展やご不明点がございましたら、お気軽にご連絡ください。
よろしくお願いいたします。
[Attachment Removed]
回答ありがとうございます。追加情報ありましたら返答よろしくお願いします。
[Attachment Removed]
了解しました。本件クローズしていただいて問題ございません。
今後ともよろしくお願いいたします。
[Attachment Removed]