-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Background games redeemer ja JP
バックグラウンドゲーム有効化機能は、ASFに組み込まれた特別な機能で、指定されたSteamCDキーのセット(名前と一緒に)をバックグラウンドで有効化することができます。 この機能は、有効化するキーが大量にあり、全てのバッチを処理する前に確実にRateLimited
**ステータス**に到達してしまう場合に特に有用です。
バックグラウンドゲーム有効化機能は単一ボットスコープで動作するように設計されており、RedeemingPreferences
を使用しません。 この機能は、必要に応じてredeem
**コマンド**と組み合わせて(または代わりに)使用することができます。
インポート処理は、ファイルを使用するかIPCを使用するかの2つの方法で実行できます。
ASFはconfig
ディレクトリ内でBotName.keys
という名前のファイルを認識します。 このファイルは、ゲーム名とCDキーが決められた構造で記述され、お互いにタブ文字で区切られ、改行で終わって次のエントリを示します。 複数のタブが使用される場合、最初のエントリはゲーム名、最後のエントリはCDキー、その間にあるものは無視されます。 例:
POSTAL 2 ABCDE-EFGHJ-IJKLM
Domino Craft VR 12345-67890-ZXCVB
A Week of Circus Terror POIUY-KJHGD-QWERT
Terraria これは無視される これも無視される ZXCVB-ASDFG-QWERT
または、キーのみの形式を使用することもできます(各エントリ間に改行は必要)。 この場合、ASFはSteamの応答を使用して(可能であれば)適切な名前を埋めます。 任意の種類のキータグ付けについては、Steamで有効化されるパッケージは有効化するゲームのロジックに従う必要がないため、キーに自分で名前を付けることをお勧めします。 開発者が設定した内容によっては、正しいゲーム名、カスタムパッケージ名(例:Humble Indie Bundle 18)、あるいは完全に間違った、場合によっては悪意のある名前(例:Half-Life 4)が表示される可能性があります。
ABCDE-EFGHJ-IJKLM
12345-67890-ZXCVB
POIUY-KJHGD-QWERT
ZXCVB-ASDFG-QWERT
どちらの形式を選択したかに関わらず、ASFはボット起動時または実行中にkeys
ファイルをインポートします。 ファイルの正常な解析と無効なエントリの除外の後、正しく検出されたゲームはすべてバックグラウンドキューに追加され、BotName.keys
ファイル自体はconfig
ディレクトリから削除されます。
上記のキーファイルの使用に加えて、ASFはGamesToRedeemInBackground
**ASF APIエンドポイント**も公開しており、ASF-uiを含む任意のIPCツールで実行できます。 IPCを使用する方が強力な場合があります。 タブ文字に強制されることなくカスタム区切り文字を使用するなど、適切な解析を自分で行ったり、完全に独自のカスタマイズされたキー構造を導入したりできるためです。
ゲームが正常にインポートされると、キューに追加されます。 ボットがSteamネットワークに接続され、キューが空でない限り、ASFは自動的にバックグラウンドキューを処理します。 有効化を試行され、RateLimited
にならなかったキーはキューから削除され、そのステータスはconfig
ディレクトリ内のファイルに適切に記録されます。 キーがプロセスで使用された場合(例:NoDetail
、BadActivationCode
、DuplicateActivationCode
)はBotName.keys.used
に、そうでなければBotName.keys.unused
に記録されます。 ASFは、キーがSteamネットワークから返される有意義な名前を持つことが保証されていないため、意図的に提供されたゲーム名を使用します。 この方法により、必要/希望に応じてカスタム名を使用してキーにタグを付けることができます。
プロセス中にアカウントがRateLimited
ステータスに到達した場合、クールダウンが消えるのを待つために、キューは1時間完全に一時停止されます。 その後、キュー全体が空になるか、別のRateLimited
が発生するまで、プロセスは中断したところから続行されます。
100個のキーのリストがあると仮定しましょう。 まず、ASFのconfig
ディレクトリに新しいBotName.keys.new
ファイルを作成する必要があります。 ASFが作成された瞬間にこのファイルを取得しないようにするために.new
拡張子を追加しました(新しい空のファイルでまだインポートの準備ができていないため)。
新しいファイルを開いて、100個のキーのリストをコピー&ペーストし、必要に応じて形式を修正できます。 修正後、BotName.keys.new
ファイルは正確に100行(または最後の改行で101行)になり、各行はGameName\tcd-key\n
の構造を持ちます。
ASFが取得する準備ができていることを知らせるために、このファイルをBotName.keys.new
からBotName.keys
に名前を変更する準備が整いました。 これを行った瞬間、ASFは自動的にファイルをインポートし(再起動の必要なし)、その後削除して、すべてのゲームが解析されキューに追加されたことを確認します。
BotName.keys
ファイルを使用する代わりに、IPC APIエンドポイントを使用することも、必要に応じて両方を組み合わせることもできます。
しばらくすると、BotName.keys.used
とBotName.keys.unused
ファイルが生成されます。 これらのファイルには有効化プロセスの結果が含まれています。 例えば、BotName.keys.unused
をBotName2.keys
ファイルに名前変更して、前のボットがそれらのキーを使用しなかったため、未使用のキーを他のボットに送信することができます。 または、未使用のキーを他のファイルにコピー&ペーストして後で保管することもできます、あなた次第です。 ASFがキューを処理する際、新しいエントリが出力のused
とunused
ファイルに追加されるため、それらを使用する前にキューが完全に空になるまで待つことをお勧めします。 キューが完全に空になる前にこれらのファイルにアクセスする必要がある場合は、まずアクセスしたい出力ファイルを他のディレクトリに移動し、その後解析する必要があります。 これは、あなたが作業をしている間にASFが新しい結果を追加する可能性があり、例えば3つのキーが含まれているファイルを読み取って削除し、その間にASFが削除されたファイルに4つの他のキーを追加したという事実を完全に見逃すことで、一部のキーが失われる可能性があるためです。 これらのファイルにアクセスしたい場合は、読み取る前にASFのconfig
ディレクトリから移動させるようにしてください(例:名前変更によって)。
既にキューにいくつかのゲームがある状態で、上記のすべての手順を繰り返すことで、インポートする追加のゲームを追加することも可能です。 ASFは追加のエントリを既に進行中のキューに適切に追加し、最終的にそれを処理します。
バックグラウンドキー有効化機能は内部でOrderedDictionary
を使用しており、ファイル(またはIPC API呼び出し)で指定された順序でCDキーが保持されることを意味します。 つまり、指定されたCDキーが上にリストされているCDキーに対してのみ直接的な依存関係を持ち、下にあるものには持たないリストを提供できる(そして提供すべき)ということです。 例えば、ゲームG
を最初にアクティベートする必要があるDLC D
がある場合、ゲームG
のCDキーは常にDLC D
のCDキーより前に含まれる必要があります。 同様に、DLC D
がA
、B
、C
に依存している場合、3つすべてが前に含まれる必要があります(それら自体が依存関係を持たない限り、任意の順序で)。
上記のスキームに従わないと、アカウントがキュー全体を通過した後にアクティベートする資格があるにも関わらず、DLCがDoesNotOwnRequiredApp
でアクティベートされません。 それを避けたい場合は、DLCが常にキュー内のベースゲームの後に含まれるようにする必要があります。