実績 link

Achievement モジュールは開発者がプレイヤーに実績を授与したり、クリアしたり、実績が授与されたか判定出来るようにしたりします。実績への達成度の記録もできます。

デフォルトでは Achievement は persistent ファイルに情報を保存します。Steam のサポートが利用可能かつ有効なら実績情報は自動的に steam と同期します。

Steam サポートは Steam のパートナープログラムに同意した制作者によって配布されるのみであることを確認してから Ren'Py に追加される必要があります。インストールにはランチャーから "preferences", "Install libraries", "Install Steam Support" を選択してください。

achievement.Sync() link

achievement.sync() を呼び出すアクションです。これは実績が同期されていないときのみ有効になります。

achievement.clear(name) link

name 実績をクリアします。

achievement.clear_all() link

すべての実績をクリアします。

achievement.get_progress(name) link

name 実績への達成度を返します。その実績の進行が登録されていないまたは不明なら 0 です。

achievement.grant(name) link

既に授与されていなければ、 name 実績を授与します。

achievement.has(name) link

プレイヤーに name 実績が授与されていれば True を返します。

achievement.progress(name, complete) link

name 実績がまだ授与されたことがなければ、(*訳注 complete までの達成を授与した上で)実績の達成度を報告します。その実績には達成度が定義されていなければなりません。

name

実績の名前です。これは実績名で、 stat ではありません。

complete

その実績達成へ向けて完了した行程数の整数値です。

achievement.register(name, **kwargs) link

実績を登録します。実績が登録される必要はありませんが、こうするとバックエンドに情報を渡せます。

name

登録する実績の名前です。

以下のキーワードパラメーターは任意です。

steam

steam で使用する名前です。指定されないとデフォルトで name になります。

stat_max

実績が開放される stat の整数値です。

stat_modulo

達成度の stat_modulo による剰余が 0 なら達成度はユーザーに表示されます。例えば stat_modulo が 10 なら、達成度が 10, 20, 30… のときにユーザーに表示されます。指定されないと、これはデフォルトで 0 になります。

achievement.sync() link

ローカルストレージとその他のバックエンド (steam など ) の登録された実績を同期します。

Achievement を制御する変数 :

achievement.steam_position = None link

None またはSteamの通知ポップの位置設定です。これは "top left" または "top right", "bottom left", "bottom right" のいずれかの文字列でなければなりません。

define config.steam_appid = None link

None または Steam appid です。 Ren'Py は開始時に自動的にこの appid を設定します。これは define ステートメントで設定される必要があります。

define config.steam_appid = 12345

Steamworks API link

Steam が利用できるなら、 Steamworks API への ctypes ベースのバインディングが achievement.steamapi として利用可能です。このバインディングは、 こちら にあるように steamapi モジュールのインスタンスであり、C++ Steamworks API の Python への機械翻訳を表しています。