Skip to content

Configuration ja JP

ArchiBot edited this page Sep 20, 2026 · 125 revisions

設定

このページはArchiSteamFarm(ASF)の設定に関する完全なドキュメントです。 configディレクトリの構造と設定オプションについて説明します。


はじめに

ASFの設定は大きく2つに分かれます ― グローバル(プロセス)設定と、各ボットの設定です。各ボットにはBotName.json(BotNameはボット名)の設定ファイルが必要で、グローバルASF(プロセス)設定はASF.jsonという1つのファイルです。

ボットとは、ASFプロセスに参加する1つのSteamアカウントです。 ASFを正しく動作させるには少なくとも1つのボットインスタンスが必要です。ボット数に制限はなく、好きなだけ(Steamアカウント数分)利用できます。

ASFは**JSON**形式で設定ファイルを保存します。人間にとっても読みやすく、普遍的な形式です。 JSONの知識がなくてもASFの設定は可能です。しかしながら、スクリプトで大量生成したい場合などは知っておくと便利です。

設定方法はいくつかあります。当社の WebベースのConfigGeneratorを使用できます。これはASFとは独立したローカルアプリです。 ASF 内で直接設定を行うには、ASF-ui IPC フロントエンドを使用できます。最後に、以下で指定した固定された JSON 構造に従って設定ファイルを手動で生成することができます。利用可能なオプションについてはまもなく説明します。


Web Config Generator

WebベースのConfigGenerator の目的は、ASF構成ファイルの生成に使用されるフレンドリーなフロントエンドを提供することです。 WebベースのConfigGeneratorは100%クライアントベースで、入力した詳細はどこにも送信されず、ローカルでのみ処理されることを意味します。これにより、セキュリティと信頼性が保証されます。必要であれば、**オフライン**でも動作できます。すべてのファイルをダウンロードし、お好みのブラウザーで index.html を実行する場合です。

WebベースのConfigGeneratorはChromeとFirefoxで正常に動作することが確認されていますが、一般的なすべてのJavaScript対応ブラウザで正常に動作するはずです。

使い方は非常に簡単です - 適切なタブに切り替えて、 ASF または Bot 設定を生成するかどうかを選択します。 設定ファイルのバージョンがASFリリースと一致していることを確認し、すべての詳細を入力し、「ダウンロード」ボタンを押します。このファイルをASF config ディレクトリに移動し、必要に応じて既存のファイルを上書きします。すべての最終的なさらなる変更について繰り返し、設定するためのすべての利用可能なオプションの説明については、このセクションの残りの部分を参照してください。


ASF-ui設定

私たちの**ASF-ui** IPCインターフェースでも ASF を設定できます。また、初期設定を生成した後に ASF を再設定する場合には、Web Config Generator が静的に設定を生成するのに対して、ASF-ui は設定をその場で編集できるため、より優れた方法です。

ASF-ui を使用するには、私たちの**IPC**インターフェース自体を有効にしておく必要があります。 IPC はデフォルトで有効になっているため、自分で無効にしていなければすぐにアクセスできます。

プログラムを起動したら、ASFの IPC アドレス に移動します。すべてが正常に動作した場合は、ASF構成をそこから変更することもできます。


手動設定

一般に、ConfigGenerator または ASF-ui のいずれかを使用することを強くお勧めします。 JSON 構造で間違いを犯さないようにするので、より簡単になります。 でも何らかの理由で手動で適切な設定を作成することもできます適切な構造で良いスタートを切るには、以下の JSON の例を確認してください。 コンテンツをファイルにコピーして、設定のベースとして使用できます。フロントエンドを使用していないので、設定が **有効な**であることを確認してください。 ASFは解析できない場合はロードを拒否します。有効な JSON であっても、すべてのプロパティに ASF が要求する適切な型があることを確認する必要があります。使用可能なすべてのフィールドの JSON 構造については、 JSON マッピング セクションと下のドキュメントを参照してください。


グローバル設定

グローバル設定は ASF.json ファイル内にあり、以下の構造を持っています。

{
    "AutoRestart": true,
    "Blacklist": [],
    "CommandPrefix": "!",
    "ConfirmationsLimiterDelay": 10,
    "ConnectionTimeout": 90,
    "CurrentCulture": null,
    "Debug": false,
    "DefaultBot": null,
    "FarmingDelay": 15,
    "FilterBadBots": true,
    "GiftsLimiterDelay": 1,
    "Headless": false,
    "IdleFarmingPeriod": 8,
    "InventoryLimiterDelay": 4,
    "IPC": true,
    "IPCPassword": null,
    "IPCPasswordFormat": 0,
    "LicenseID": null,
    "LoginLimiterDelay": 10,
    "MaxFarmingTime": 10,
    "MaxTradeHoldDuration": 15,
    "MinFarmingDelayAfterBlock": 60,
    "OptimizationMode": 0,
    "PluginsUpdateList": [],
    "PluginsUpdateMode": 0,
    "ShutdownIfPossible": false,
    "SteamMessagePrefix": "/me ",
    "SteamOwnerID": 0,
    "SteamProtocols": 7,
    "UpdateChannel": 1,
    "UpdatePeriod": 24,
    "WebLimiterDelay": 300,
    "WebProxy": null,
    "WebProxyPassword": null,
    "WebProxyUsername": null
}

すべてのオプションについて以下に説明します。

AutoRestart

bool type, デフォルト値 true. このプロパティは、必要に応じてASFが自己再起動を実行できるかどうかを定義します。 ASF の自己再起動が必要になるイベントがいくつかあります。たとえば、ASF の更新(UpdatePeriod または update コマンドによるもの)、ASF.json 設定の編集、restart コマンドなどです。通常、再起動には、新しいプロセスの作成と現在のプロセスの終了の 2 つの部分が含まれます。ほとんどのユーザーはこのままで問題なく、このプロパティをデフォルト値の true のままにしておくべきです。ただし、自分のスクリプトや dotnet を使って ASF を実行している場合は、プロセスの開始を完全に制御したいことがあります。また、新しい(再起動された)ASF プロセスが、古い ASF プロセスと一緒に終了したスクリプトのフォアグラウンドではなく、どこかのバックグラウンドで静かに実行され続けるような状況を避けたい場合もあります。これは、新しいプロセスがもはやあなたの直接の子供ではないという事実を考慮すると、特に重要です, これはあなたを作ることができません e. をクリックします。

この場合、このプロパティはあなたのために特別に、そしてあなたのためにそれを false に設定することができます。ただし、その場合はプロセスの再起動はあなたの責任になることに注意してください。これは、ASFが新しいプロセスをスポーンさせる代わりに終了するだけであるため、何らかの点で重要です。 更新後)、ロジックが追加されていない場合は、再起動するまで動作を停止します。 ASF は常に、成功(ゼロ)または非成功(非ゼロ)を示す適切なエラーコードで終了します。これにより、失敗時には ASF を自動再起動しないようにしたり、少なくとも後で分析できるよう log.txt のローカルコピーを作成したりする適切なロジックを、スクリプトに追加できます。また、restart コマンドは、このプロパティの設定に関係なく常に ASF を再起動することにも注意してください。このプロパティはデフォルトの動作を定義するものであり、restart コマンドは常にプロセスを再起動します。この機能を無効にする理由がない限り、有効にしておく必要があります。


Blacklist

ImmutableHashSet<uint> 型はデフォルト値が空です。名前が示すように、このグローバルconfigプロパティは、自動ASF農業プロセスで完全に無視されるappID(ゲーム)を定義します。残念ながらSteamは「カードドロップ可能」として夏/冬の販売バッジにフラグを立てるのが大好きです ASFプロセスを混乱させることによって、それは農業をするべきである有効なゲームであると信じさせます。ブラックリストのいずれかの種類がなかった場合、ASFは実際にはゲームではないゲームを農業で最終的に「ハング」するでしょう。 そして無限にカードドロップが起こらないのを待つのです ASFブラックリストは、これらのバッジを農業用に利用できないとマークする目的を果たしています 農場を決める時は黙って無視して 罠にはまらないのです

ASF にはデフォルトで 2 つのブラックリストが含まれています。ASF のコードにハードコードされていて編集できない SalesBlacklist と、ここで定義する通常の Blacklist です。 SalesBlacklist は ASF のバージョンと一緒に更新され、通常はリリース時点で「不良」とされるすべての appID が含まれています。そのため、最新の ASF を使用している場合は、ここで定義する独自の Blacklist を管理する必要はありません。このプロパティの主な目的は、ASFリリースappIDの時点で知られていない新しいものをブラックリストに載せることです。ハードコードされた SalesBlacklist は可能な限り迅速に更新されるため、最新の ASF バージョンを使用している場合、自分の Blacklist を更新する必要はありません。しかし Blacklist がないと、Valve が新しいセールバッジをリリースしたときに「動作し続ける」ためには ASF を更新せざるを得なくなります。私は最新の ASF コードの使用を強制したくないため、このプロパティは、何らかの理由で新しい ASF リリースに含まれるハードコード済みの SalesBlacklist へ更新したくない、または更新できないが、それでも古い ASF を動作させ続けたい場合に、ASF を自分で「修正」できるようにするために用意されています。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。

代わりにボット単位のブラックリストを探している場合は、fb、fbadd、fbrm **コマンド**を参照してください。


CommandPrefix

文字列 type、デフォルト値は !。このプロパティは、大文字と小文字を区別するプレフィックスを指定します。これは ASF **コマンド**に使用されます。言い換えれば、ASFがあなたに耳を傾けるためには、それぞれのASFコマンドの先頭にあるものです。この値を null または空に設定することで、ASFにコマンドプレフィックスを使用しないようにすることができます。 コマンドを単純な識別子で入力します。ただし、 ASFが CommandPrefix で始まらない場合、メッセージをさらにパースしないように最適化されているため、ASFのパフォーマンスは低下する可能性があります。 ASFは、ASFコマンドでない場合でも、すべてのメッセージを読み取り、応答することを余儀なくされます。そのため、デフォルト値の ! が好みでない場合は、/ など、何らかの CommandPrefix を使い続けることをおすすめします。一貫性を保つために、 CommandPrefix はASFプロセス全体に影響を与えます。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


ConfirmationsLimiterDelay

バイト 型のデフォルト値は 10 です。 ASF は、レート制限の発生を避けるため、連続する 2 回の 2FA 確認取得リクエストの間に少なくとも ConfirmationsLimiterDelay 秒の間隔を空けるようにします。これらのリクエストは、たとえば ASF 2FA が 2faok コマンド中に使用するほか、さまざまなトレード関連操作を実行する際に必要に応じて使用されます。デフォルト値はテストに基づいて設定されており、問題に遭遇したくない場合は下げるべきではありません。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


ConnectionTimeout

バイト 型のデフォルト値は 90 です。このプロパティは、ASFによって行われたさまざまなネットワークアクションのタイムアウトを秒単位で定義します。具体的には、ConnectionTimeout は HTTP および IPC リクエストのタイムアウトを秒単位で定義し、ConnectionTimeout / 10 はハートビートの最大失敗回数を定義します。また、ConnectionTimeout / 30 は、Steam ネットワークへの初回接続リクエストに許可する分数を定義します。デフォルト値の 90 は大多数の人にとって問題ないはずですが、ネットワーク接続や PC がやや遅い場合は、この数値をより高い値(120 など)に増やした方がよいかもしれません。大きな値は、魔法のように遅い、またはアクセスできないSteamサーバーを修正しないことに注意してください。 だからいつまでも待つべきではありません 後でもう一度試してみましょうこの値を大きすぎると、ネットワークの問題を引き起こし、全体的なパフォーマンスが低下することになります。この値を小さすぎると全体的な安定性とパフォーマンスも低下します。ASFは有効なリクエストの解析を中止します。そのため、この値をデフォルトより低く設定すると、一般的に利点はありません。 Steamサーバーは時々超遅くなり、ASFリクエストの解析にさらに時間がかかることがあります。デフォルト値は、ネットワーク接続が安定していることと、指定したタイムアウト時にリクエストを処理するためにSteamネットワークで疑わしいこととのバランスです。問題を早期に検出してASFの再接続/応答を速くしたい場合。 デフォルト値は行う必要があります(または、 60のように、ASFの患者を減らします)。一方で、リクエストの失敗、ハートビートの喪失、Steam との接続中断など、ASF がネットワークの問題に遭遇していることに気づいた場合は、それが自分のネットワークではなく、Steam 自体によって引き起こされていると確信できるなら、この値を増やすのが理にかなっているでしょう。タイムアウトを増やすことで ASF はより「辛抱強く」なり、すぐに再接続しようと判断しなくなるためです。

このプロパティの増加を必要とする例として、ASFがSteamによって完全に受け入れられ、処理されるのに2分以上かかる非常に大きな貿易オファーに対処することができます。デフォルトのタイムアウトを増加させることで ASFはより忍耐強く、貿易が通過しないと判断し、最初の要求を放棄する前に、より長く待つでしょう。

別の状況は、送信されるデータを処理するために多くの時間を必要とする非常に低速のマシンまたはインターネット接続によって引き起こされる可能性があります。これは、CPU/ネットワーク帯域幅がボトルネックになることはほとんどありませんが、まだ言及する価値がある可能性があります。

要するに、ほとんどの場合、デフォルト値はまともでなければなりませんが、必要に応じて増加させたい場合があります。しかし、大きなタイムアウトは魔法のようにアクセスできないSteamサーバーを修正しませんので、デフォルト値をはるかに上回ると、あまり意味がありません。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


CurrentCulture

文字列 型のデフォルト値は null です。デフォルトでは、ASFはオペレーティングシステムの言語を使用しようと試みます。可能な場合は、その言語で翻訳された文字列を使用することを好みます。これは、すべての最も一般的な言語で ASFをローカライズしようとするコミュニティのおかげで可能です。何らかの理由でOSのネイティブ言語を使用したくない場合 このconfigプロパティを使用して、代わりに有効な言語を選択できます。利用可能なすべての文化のリストについては、 MSVN にアクセスし、 言語タグ を探します。 ASF は "en-GB" のような特定のカルチャコードだけでなく、"en" のようなニュートラルカルチャコードも受け付けることに注意してください。現在のカルチャーを指定することは、通貨/日付フォーマットや同様な他のカルチャー固有の動作にも影響します。言語固有の文字を適切に表示するためにフォントや言語パックが必要になる場合がありますのでご注意ください。通常、ASFを母国語ではなく英語で使用する場合は、このconfigプロパティを使用します。


Debug

bool type, デフォルト値 false. このプロパティは、プロセスをデバッグモードで実行するかどうかを定義します。デバッグモードでは、ASFは config の隣に特別な デバッグディレクトリを作成します。 ASFとSteamサーバー間の通信全体を追跡します。デバッグ情報はネットワークや一般的なASFワークフローに関連する厄介な問題を発見するのに役立ちます。それに加えて、いくつかのプログラムルーチンははるかに冗長になります。 例えば、 WebBrowser いくつかのリクエストが失敗している正確な理由を示しています - これらのエントリは通常の ASF ログに書き込まれます。開発者に指示された場合を除き、ASF を Debug モードで実行しないでください。 Debug モードで ASF を実行すると、パフォーマンスが低下し、安定性に悪影響を与え、さまざまな箇所で出力がはるかに詳細になります。そのため、特定の問題をデバッグする、問題を再現する、失敗したリクエストについてより多くの情報を得る、といった目的で、短時間だけ、意図的にのみ使用するべきであり、通常のプログラム実行には使用するべきではありません。新しいエラーの 多くの が表示されます。 例外について - ASFについて十分な知識があることを確認してください。 蒸気とその癖は、すべてが適切ではないとして、自分自身でそのすべてを分析することを決定した場合。

警告: このモードを有効にすると、Steamへのログインに使用しているログインやパスワードなど、 潜在的に機密性の高い 情報のロギングが含まれます (ネットワークログインのため)。そのデータは debug ディレクトリと、標準の log.txt の両方に書き込まれます(この情報をログに記録するため、現在は意図的にかなり詳細な出力になっています)。 ASFによって生成されたデバッグコンテンツをパブリックな場所に投稿しないでください。 ASFの開発者は、常にメールやその他の安全な場所に送信することをあなたに思い出させる必要があります。我々は保管しているのではなく、機密情報を利用しているのでもありません。 彼らはデバッグルーチンの一環として書かれています 彼らの存在はあなたに影響を与えている問題に関連する可能性があります ASFロギングを変更しない場合は、ご心配の場合は、機密情報の適切な編集を自由に行ってください。

たとえば星のように微妙な詳細を置き換えます。純粋な存在が関連する可能性があり、保存されるべきであるので、あなたは、敏感なラインを完全に削除することを控える必要があります。


DefaultBot

文字列 型のデフォルト値は null です。いくつかのシナリオでは、ターゲットボットを指定しない場合のIPCコマンドやインタラクティブコンソールなど、何かを処理するためのデフォルトボットの概念を備えたASF関数があります。このプロパティでは、 BotName をここに置くことで、このようなシナリオの処理を担当するデフォルトのボットを選択できます。指定されたボットが存在しない場合、またはデフォルト値の nullを使用する場合、ASFは最初に登録されたボットをアルファベット順に並べ替えます。通常、IPCと対話型コンソールコマンドで [Bots] 引数を省略したい場合は、このconfigプロパティを使用します。 そして、そのような呼び出しのデフォルトと同じボットを常に選択します。


FarmingDelay

バイト 型のデフォルト値は 15 です。 ASFが動作するようにするには、おそらくすでにすべてのカードをドロップした場合、 FarmingDelay 分ごとに現在の農業ゲームをチェックします。このプロパティを低すぎると、蒸気リクエストの送信量が多すぎる可能性があります。 高い値に設定すると、ASFが完全に農業を行った後、 FarmingDelay までのタイトルを「農業」として与えることになります。デフォルト値は、ほとんどのユーザーに優れている必要がありますが、多くのボットが実行されている場合。 蒸気リクエストを送信するのを制限するために、 30 のようなものに増やすことを検討してください。 ASF はイベントベースの仕組みを使用しており、Steam アイテムがドロップするたびにゲームのバッジページを確認します。そのため、一般的には固定の時間間隔で確認する必要すらありません。しかし、Steam ネットワークを完全には信頼していないため、直近 FarmingDelay 分以内にカードのドロップイベントを通じて確認していなかった場合は、念のためゲームのバッジページを確認します(Steam ネットワークがアイテムのドロップを通知しなかった場合などに備えて)。 Steam ネットワークが正常に動作していると仮定すると、この値を下げてもファーミング効率は一切向上しません。一方で、ネットワークのオーバーヘッドは大幅に増加します。そのため、デフォルトの 15 分から増やす場合にのみ(必要であれば)、変更することをおすすめします。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


FilterBadBots

bool type, デフォルト値 true. このプロパティは、ASFが既知のアクターから受け取った取引オファーを自動的に拒否するかどうかを定義します。これを行うために、ASFはブラックリストに登録されたSteam識別子のリストを取得するために必要に応じてサーバーと通信します。一覧に掲載されているボットは、ASF の取り組みに対して有害であると私たちが分類した人々によって運用されています。たとえば、私たちの**行動規範に違反する人、PublicListing** など、私たちが提供する機能やリソースを使って他人を悪用・搾取する人、またはサーバーに対する DDoS 攻撃の実行など、明らかな犯罪行為を行っている人です。 ASFは、コミュニティ全体を繁栄させるために、ユーザー間の全体的な公平性、誠実さ、協力に対して強いスタンスを持っています。 このプロパティはデフォルトで有効になっているため、提供されているサービスから有害として分類された ASF フィルタボットがあります。このプロパティを編集する 強力な 理由がない限り。 私たちの声明に同意せず、意図的にそれらのボットを操作することを許可する(あなたのアカウントを悪用することを含む)など、あなたはデフォルトでそれを維持する必要があります。


GiftsLimiterDelay

バイト 型のデフォルト値は 1 です。 ASFは、少なくとも GiftsLimiterDelay レート制限を回避するために、2つの連続したgift/key/licenseの処理(償還)リクエストの間に、少なくともAformat@@2 GiftsLimiterDelay Aformat@@3 秒があることを保証します。それに加えて、owns **コマンド**によって発行されるものなど、ゲームリストリクエストのグローバルリミッターとしても使用されます。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


Headless

bool type, デフォルト値 false. このプロパティは、プロセスがヘッドレスモードで実行されるかどうかを定義します。ヘッドレスモードの場合、ASFはサーバまたは他の非対話環境で動作していると仮定します。 コンソール入力で情報を読むことはできません。これには、オンデマンドの詳細(2FAコード、SteamGuardコードなどのアカウント資格情報)が含まれます。 パスワードまたはASFの操作に必要なその他の変数、およびその他のコンソール入力 (インタラクティブなコマンドコンソールなど) 。言い換えれば、 ヘッドレス モードは、ASF コンソールを読み取り専用にするのと同じです。この設定は、主にサーバ上でASFを実行している場合に便利です。 をクリックします。2FAコードの場合、アカウントを停止することで、ASFは黙って操作を中止します。サーバーでASFを実行していて、以前にASFがヘッドレスモードで動作できることを確認した場合を除きます。 この物件は無効にしておくべきだ Headless モードではすべてのユーザー操作が拒否され、起動中に何らかのコンソール入力を必要とするアカウントは実行されません。これは、ASFがアカウントにログインしようとする際に中止することができるため、サーバにとって便利です。 ユーザーがそれらを提供するのを待つ代わりに(無限に)。

このモードを有効にすると、他の方法で必要なコンソール入力を提供することができます。 ASF-ui(ASF API)、または**input** コマンドを通じて行います。このプロパティの設定方法がわからない場合は、デフォルト値の false を指定してください。


IdleFarming Period

バイト 型のデフォルト値は 8 です。 ASFにファームするものが何もない場合は、アカウントに新しいゲームがある場合は、定期的に IdleFarmingPeriod 時間をチェックします。 ASFはこの場合バッジページを自動的に確認するのに十分スマートであるため、この機能は新しいゲームについて話しているときに必要ありません。 IdleFarmingPeriod は主に、トレーディングカードが既に追加されている古いゲームなどの状況を対象としています。この場合、イベントは発生しないため、ASFは定期的にバッジページを確認する必要があります。値を 0 にすると、この機能は無効になります。関連項目:FarmingPreferences の ShutdownOnFarmingFinished 設定。


InventoryLimiterDelay

バイト 型のデフォルト値は 4 です。 ASFは、起動レート制限を避けるために、少なくとも InventoryLimiterDelay 連続した2つのウェブインベントリ要求の間で、少なくともAformat@@2秒があることを確認します。 他のユーザーのインベントリを取得するサードパーティ製のプラグインでも使用されるかもしれません。このプロパティは、ASFがはるかに効率的な内部ネットワーク呼び出しを使用しているため、私たち自身のインベントリを取得するために使用されません。 略奪 や 転送 のようなコマンドには影響しません。 4 のデフォルト値は、100 以上の連続ボットインスタンスのインベントリのマーキングに基づいて設定されています。 そしてユーザーの大部分(すべてではない場合)を満足させるべきです。しかし、ボット数が非常に少ない場合は、それを減らしたり、 0 0 に変更することもできます。 ASFは遅延を無視し、スチームの在庫をはるかに速くマークします。ただし、これを低く設定しすぎると、Steam によって一時的に IP がブロックされることになります。その場合、あらゆる呼び出しを一切実行できなくなるため、注意してください。在庫リクエストが多いボットを多数実行している場合は、この値を増やす必要がある場合もあります。 でもこの場合はそのリクエストの数を制限するべきですこのプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


IPC

bool type, デフォルト値 true. このプロパティは、ASF の**IPCサーバーをプロセスと一緒に起動するかどうかを定義します。 IPC は、ローカル HTTP サーバーを起動することで、ASF-ui** の使用を含むプロセス間通信を可能にします。 ASF-uiを含むASFとのサードパーティIPC統合を使用しない場合は、このオプションを安全に無効にすることができます。そうでなければ、それを有効にしておくことをお勧めします(デフォルトのオプション)。


IPCPassword

文字列 型のデフォルト値は null です。このプロパティは、IPC経由で行われるすべてのAPI呼び出しに必須のパスワードを定義し、追加のセキュリティ対策として機能します。空でない値に設定されている場合、IPCリクエストはここで指定されたパスワードに追加の パスワード プロパティが必要になります。デフォルト値の null はパスワードの必要性をスキップし、ASFはすべてのクエリを尊重します。それに加えて このオプションを有効にすると、非常に短時間であまりにも多くの許可されていないリクエストを送信した後に、 IPAddress を一時的に禁止する組み込みのIPCアンチブルフォースメカニズムも有効になります。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


IPCPasswordFormat

バイト 型のデフォルト値は 0 です。このプロパティは、 IPCPassword プロパティの形式を定義し、元の型として EHashingMethod を使用します。詳しく知りたい場合は、**セキュリティ**セクションを参照してください。IPCPassword プロパティに、IPCPasswordFormat と一致する形式のパスワードが実際に含まれていることを確認する必要があります。つまり、 IPCPasswordFormat を変更した場合、 IPCPassword は既に **** 形式でなければなりません。 目指すだけではなく自分が何をしているか理解している場合を除き、デフォルト値の 0 のままにしておくべきです。


LicenseID

Guid? 型のデフォルト値は null です。このプロパティは、 が スポンサーを務めるために有料のリソースを必要とするオプションの機能でASFを強化することができます。現時点では、これにより**MatchActively**機能を ItemsMatcher プラグインで利用できるようになります。

私たちはGitHubを利用することをお勧めしますが、それは毎月および1回限りの階層を提供するだけでなく、完全な自動化を可能にし、即座にアクセスできます。 また、 は他のすべての 寄付オプション をサポートしています。一定期間有効なマニュアルライセンスを取得するために、他の方法を使用して寄付する方法については、この記事 を参照してください。

使用されている方法に関係なく、ASFスポンサーであれば、ここ ライセンスを取得できます。あなたの身元を確認するには、GitHubでサインインする必要があります。私たちは、あなたのユーザー名である読み取り専用の公開情報のみを求めます。 LicenseID は f6a0529813f74d119982eb4fe43a9a24.

LicenseID を他の人と共有しないようにしてください。個人的に発行されているので、漏洩すると取り消される可能性があります。偶然にも同じ場所から新しいものを生成することができます。

ASFの追加機能を有効にしない限り、ライセンスを取得/提供する必要はありません。


LoginLimiterDelay

バイト 型のデフォルト値は 10 です。 ASFは、少なくとも LoginLimiterDelay 2つの連続した接続試行の間に、レート制限のトリガを回避するための秒があることを保証します。デフォルト値の 10 は、100以上のボットインスタンスを接続することに基づいて設定されており、ユーザーのほとんど(すべてではない場合)を満たす必要があります。しかし、ボット数が非常に少ない場合は、 0 0 に変更することもできます。 ASFは遅延を無視してSteamに接続するのがずっと速くなります。ただし、ボットが多すぎる状態でこれを低く設定しすぎると、Steam によって一時的に IP がブロックされることになります。その場合、一切ログインできなくなり、InvalidPassword/RateLimitExceeded エラーが発生します。これには ASF だけでなく、通常の Steam クライアントも含まれるため注意してください。同様に、ボット数が多すぎる場合、特に同じIPアドレスを使用して他のSteamクライアント/ツールと一緒に実行している場合 より長い期間にわたってログインを広げるためにはこの値を増やす必要があります

サイドノートとして、この値は、 SendTradePeriod の取引など、ASFスケジュールされたすべてのアクションにおけるロードバランシングバッファとしても使用されます。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


MaxFarmingTime

バイト 型のデフォルト値は 10 です。知っておくべきですが、スチームが常に正しく動作しているとは限りません。 時々奇妙な状況が起こることがあります我々のプレイタイムが記録されていないような ゲームをしているにもかかわらず。 ASFは、 MaxFarmingTime 時間のソロモードで1つのゲームを農業できるようにし、その後完全に養殖されたと考えます。これは、奇妙な状況が発生した場合に農業プロセスを凍結しないようにする必要があります。 しかし、何らかの理由でSteamが新しいバッジをリリースした場合、ASFがさらに進行するのを止めることになります( ブラックリストを参照)。 10 時間のデフォルト値は、一回のゲームからすべてのスチームカードをドロップするのに十分である必要があります。このプロパティを低すぎると、有効なゲームがスキップされる可能性があります (そして、はい)。 農場には最大9時間もかかる有効なゲームがありますが、高すぎると農業プロセスが凍結される可能性があります。このプロパティは、1つの農業セッションで1つのゲームにのみ影響することに注意してください(したがって、キュー全体を通過すると、ASFはそのタイトルに戻ります) また、総プレイ時間に基づくものではなく、内部ASF農業時間に基づくものであるため、ASFも再スタート後にそのタイトルに戻ります。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


MaxTradeHoldDuration

バイト 型のデフォルト値は 15 です。このプロパティは、受け入れるトレードホールドの最大期間を日数で定義します。ASF は、MaxTradeHoldDuration 日を超えて保留されるトレードを拒否します。これは**トレードセクションで定義されています。このオプションは、TradingPreferences が SteamTradeMatcher のボットに対してのみ意味があります。Master/SteamOwnerID とのトレードや寄付には影響しないためです。トレードホールドは誰にとっても迷惑で、誰も本当にそれらに対処したいと思っていません。 ASFは、リベラルなルールに取り組んで、誰もが助けることになっています。 トレードホールドの有無に関わらず、このオプションはデフォルトで 15 に設定されています。ただし、代わりにトレードホールディングの影響を受けるすべての取引を拒否する場合は、ここで 0 0 を指定できます。有効期間の短いカードはこのオプションの影響を受けず、トレードホールドがある相手に対しては自動的に拒否されることを考慮してください。これはトレード**セクションで説明されています。そのため、その理由だけで全員を一律に拒否する必要はありません。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


MinFarmingDelayAfterBlock

バイト 型のデフォルト値は 60 です。このプロパティは、最小時間を秒単位で定義します。 以前に LoggedInElsewhereで切断された場合、カードの農業を再開する前にASFが待機します これは、ゲームを開始することによって、現在の農業ASFを強制的に切断することにした場合に発生します。この遅延は主に利便性とオーバーヘッドの理由から存在します。 たとえば、ASFがアカウントを占拠している場合、1秒間の再生ロックが可能であったために、再度アカウントと戦うことなくゲームを再開することができます。セッションを再開すると、 LoggedInElsewhere が切断されるため、ASFは再接続手順全体を通過する必要があります。 マシンとSteamネットワークに追加の圧力をかけるため、可能であれば追加の切断を避けることが望ましい。デフォルトでは、これは 60 秒で設定されており、ゲームを簡単に再起動できるようにするのに十分です。しかし、あなたがそれを増やすことに興味がある可能性があるシナリオがあります。 たとえば、ネットワークが切断され、ASFがあまりにも早く乗っ取られている場合は、再接続プロセスを行うことを余儀なくされます。このプロパティには、 255 の最大値を許可します。これは、すべての一般的なシナリオに十分な値でなければなりません。上記に加えて、遅延を減らすことも可能です。 または、 0 0の値で完全に削除することもできます。 上記の理由では通常は推奨されませんが。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


OptimizationMode

バイト 型のデフォルト値は 0 です。このプロパティは、実行時にASFが好む最適化モードを定義します。現在、ASF は 2 つのモードをサポートしています。0 は MaxPerformance、1 は MinMemoryUsage と呼ばれます。デフォルトでは、ASFは可能な限り多くのものを並列(同時に)で実行することを好みます。 これは、すべてのCPUコア、複数のCPUスレッド、複数のソケット、複数のスレッドプールタスクにまたがる負荷分散によってパフォーマンスを向上させます。たとえば、ASFはゲームのファームへのチェック時に最初のバッジページを要求し、その後リクエストが到着するとします。 ASFはあなたが実際に持っているバッジページの数をそこから読み取り、お互いに同時にリクエストします。これは ほぼ常にが欲しいものです。 ほとんどの場合、オーバーヘッドは最小限であり、非同期ASFコードの利点は、単一CPUコアと大きく制限された電力を備えた最古のハードウェアでも見ることができます。ただし、多くのタスクが並列処理されると、ASFランタイムはそのメンテナンスを担当します。 ソケットを開いたままスレッドを生きたままにし、タスクを処理します。 時々メモリ使用量が増加し利用可能なメモリに非常に制約されている場合 ASFをできるだけ少ないタスクに強制的に使用するために、このプロパティを 1 (MinMemoryUsage) に切り替えることができます。 並列非同期コードを同期的に実行しますこのプロパティの切り替えは、事前に**低メモリ設定を読み、ごくわずかなメモリ使用量の削減のために、非常に大きなパフォーマンス向上を意図的に犠牲にしたい場合にのみ検討してください。通常、このオプションは、ASF の使用を制限したり、ランタイムのガベージコレクターを調整したりするなど、他の方法で実現できるものよりはるかに悪い結果になります。これについては、低メモリ設定**で説明しています。したがって、 MinMemoryUsage を 最後の手段として使用する必要があります。 ランタイム再コンパイルの直前に、他のオプションで満足のいく結果が得られなかった場合(はるかに良い)。このプロパティを編集する 強力な 理由がない限り、デフォルトのままにしておく必要があります。


PluginsUpdateList

ImmutableHashSet<string> 型はデフォルト値が空です。このプロパティは、自動更新を考慮するためにブラックリストまたはホワイトリストに登録されているプラグインアセンブリ名のリストを定義します。 as per PluginsUpdateMode defined below.

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


PluginsUpdateMode

バイト 型のデフォルト値は 0 です。このプロパティは、上記で定義した PluginsUpdateList に意味を与えるプラグインの更新モードを定義します。このプロパティを指定することで、宣言されたプラグイン以外のすべてのプラグインの自動更新を簡単に有効/無効にすることができます。

  • 値 0 は Whitelist と呼ばれ、すべてのプラグインの自動更新を無効化します。ただし、PluginsUpdateList で定義されているものは除きます。
  • 値 1 は Blacklist と呼ばれ、すべてのプラグインの自動更新を有効化します。ただし、PluginsUpdateList で定義されているものは除きます。

ASF チームは、皆さん自身の安全のため、自動更新は信頼できる相手からのみ有効にするべきであることをお知らせします。悪意のあるプラグインは、この設定に関係なく、自分自身を更新したりリモートコマンドを実行したりする可能性があることに注意してください。そのため、この設定は ASF が提供するプラグイン更新機能にのみ適用されます。使用することにした各プラグインについては、引き続き適切に検証済みであることを確認してください。

プラグインの更新は、デフォルトで ASF の更新ルーチンとともに実行されます。対象となるのは UpdateChannel および UpdatePeriod です。 update コマンドのような標準の ASF 更新メカニズムも、オプションのプラグインの更新をトリガーします。代わりに、同時にASFバージョンを更新せずに手動でプラグインを更新したい場合は、 updateplugins コマンドがそのような可能性を提供します。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


ShutdownIfPossible

bool type, デフォルト値 false. 有効にすると、ASFはプロセスをシャットダウンしようとします。つまり、登録済みのボットがすべて停止した場合です。これは、すべてのボットインスタンスで シャットダウンOnFarmingFinished と組み合わせると特に便利です。 この方法により、最後の1つのボットが農業を終了すると、ASFは自動的にシャットダウンされます。

ユーザーの大多数の期待は、常にプロセスを実行することですので、 e. を選択します。 IPC の場合、このオプションはデフォルトで無効になります。


SteamMessagePrefix

文字列 type, デフォルト値は "/me ". このプロパティは、ASFによって送信されるすべてのSteamメッセージの前に付加されるプレフィックスを定義します。デフォルトでASFは、ボットメッセージをSteamチャットに別の色で表示することでより簡単に区別するために、 "/me " プレフィックスを使用します。もう一つの価値のある言及は、 "/pre " プレフィックスであり、同様の結果を達成しますが、異なる書式設定を使用します。また、このプロパティを空の文字列または null に設定することで、プレフィックスを完全に無効にし、従来の方法ですべての ASF メッセージを出力することもできます。このプロパティはSteamメッセージにのみ影響します。他のチャネル(IPCなど)を通じて返される応答は影響を受けません。標準のASFの動作をカスタマイズする場合を除き、デフォルトのままにすることをお勧めします。


SteamOwnerID

ulong type with default value of 0 0. このプロパティは、ASF プロセス所有者の Steam ID を 64 ビット形式で定義します。これは、指定したボットインスタンスの Master 権限と非常によく似ています(ただし、こちらはグローバルです)。ほとんどの場合、自分のSteamアカウントのIDにこのプロパティを設定します。 Master 権限には、そのボットインスタンスに対する完全な制御権が含まれます。ただし、exit、restart、update などのグローバルコマンドは、SteamOwnerID のみに予約されています。あなたの友人のためにボットを実行したいと思うかもしれないので、これは便利です。 exit コマンドで終了するなど、ASFプロセスを制御することはできません。デフォルト値 0 は、ASF プロセスの所有者がないことを指定します。 つまり、誰もグローバルASFコマンドを発行できないということです。このプロパティはSteamチャットにのみ適用されることに留意してください。 IPC と対話型コンソールでは、このプロパティが設定されていない場合でも、Owner コマンドを実行できます。


SteamProtocols

バイトフラグ type with default value of 7. このプロパティは、Steamサーバーへの接続時にASFが使用するSteamプロトコルを定義します。これは以下のように定義されています。

値 名前 説明
0 None No protocol
1 TCP 伝送制御プロトコル
2 UDP ユーザーデータグラムプロトコル
4 WebSocket WebSocket

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションを有効にしないと、そのオプション自体が無効になります。

デフォルトでは、ASFは利用可能なすべてのSteamプロトコルをダウンタイムや他の同様のSteam問題との戦いの手段として使用します。通常、ASFを特定のプロトコル1つまたは2つだけに制限したい場合は、このプロパティを変更する必要があります。このような設定は、さまざまな状況で必要になる場合があります。たとえば、ファイアウォールで UDP トラフィックをブロックしており、TCP トラフィックのみが通過するようにしたい場合や、WebProxy を使用していて、それを Steam クライアント接続にも使用したい場合です。これは WebSocket プロトコルだけが対応しているためです。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


UpdateChannel

バイト 型のデフォルト値は 1 です。このプロパティは使用されている更新チャンネルを定義します。 自動更新( 更新期間 が 0より大きい場合)、または通知の更新 (そうでなければ) のいずれかです。現在、ASF は 3 つの更新チャンネルをサポートしています。0 は None、1 は Stable、2 は PreRelease と呼ばれます。安定版 チャンネルはデフォルトのリリースチャンネルで、大多数のユーザーが使用する必要があります。 PreRelease チャンネルには、Stable リリースに加えて、新機能のテスト、バグ修正の確認、予定されている改善へのフィードバックを目的とした、上級ユーザーや他の開発者向けの プレリリース も含まれます。 PreRelease バージョンには、未修正のバグ、作業中の機能、または書き換えられた実装が含まれていることがよくあります。自分自身を上級者とみなさない場合は、デフォルトの 1 (Stable) チャンネルを更新してください。プレリリース チャンネルは、バグを報告する方法を知っているユーザーに専用されています。 問題に対処し、フィードバックを与える - 技術サポートは与えられません。詳しく知りたい場合は、ASF の**リリースサイクル**を確認してください。すべてのバージョンチェックを完全に削除する場合は、 UpdateChannel を 0 (None) に設定することもできます。 UpdateChannel を 0 に設定する は、 update コマンドを含む、アップデートに関連する全機能を完全に無効にします。なし チャンネルを使用すると、あらゆる種類の問題に自分自身をさらすことができなくなります(以下の UpdatePeriod 記述で述べられています)。 `` チャンネルは強く推奨されません。

自分が何をしているのか分かっている場合を除き、デフォルトのままにしておくことを強くおすすめします。


UpdatePeriod

バイト 型のデフォルト値は 24 です。このプロパティは、ASFが自動更新をチェックする頻度を定義します。新機能や重要なセキュリティパッチを受け取るだけでなく、バグ修正、パフォーマンスの向上、安定性の向上などを受け取るためにもアップデートは重要です。 0 より大きい値が設定されている場合、新しい更新が利用可能になると、ASF は自動的にダウンロード、置き換え、再起動を行います(AutoRestart が許可している場合)。これを達成するために、GitHubリポジトリで新しいアップデートが利用可能である場合、ASFはすべての UpdatePeriod 時間をチェックします。 0 0 の値は自動更新を無効にしますが、 update コマンドは手動で実行できます。 UpdateChannel の適切な UpdatePeriod の設定にも関心があるかもしれません。

ASFの更新プロセスには、ASFが使用しているフォルダ構造全体の更新が含まれます。 しかし、 config ディレクトリにある独自の設定やデータベースに触れることなく、そのディレクトリ内の ASF に関係のない追加ファイルは更新中に失われる可能性があります。 24 のデフォルト値は、不要な小切手と、十分に新鮮なASFのバランスが良いです。

この機能を無効にする強い理由がない限り、妥当な UpdatePeriod の範囲で、自分自身のためにも自動更新を有効にしておくべきです。これは、最新の安定版ASFリリースをサポートしていないためだけではありません。 しかし、 は最新バージョンのみのセキュリティ保証を提供しています。古い ASF バージョンを使用している場合、小さなバグから機能の破損、最終的には**Steam アカウントの永久停止に至るまで、あらゆる問題に自ら意図的にさらされることになります。そのため、あなた自身のためにも、ASF のバージョンを常に最新に保つことを強くおすすめします**。自動アップデートを使用すると、問題のあるコードをエスカレートする前に無効化またはパッチ適用することで、あらゆる種類の問題に迅速に対応できます。オプトアウトした場合。 危険にさらされる可能性のあるコードを実行することで我々のセキュリティ保証とリスクの結果をすべて失うのです Steamネットワークだけでなく、(定義によって)Steamアカウントにも。


WebLimiterDelay

ushort タイプで、デフォルト値は 300 です。このプロパティは、同じ Steam Web-service に 2 つの連続したリクエストを送信する間の最小の遅延時間をミリ秒単位で定義します。このような遅延は、Steamが内部で使用する Akamai JP サービスとして要求されます。特定の期間を通じて送信されるリクエストのグローバルな数に基づいてレート制限が含まれます。通常の状況では、akamaiブロックはかなり達成するのは難しいですが、非常に重いワークロードの下で、リクエストの巨大な進行中のキューを持っています。 あまりに短期間に大量のリクエストを送信し続けるとトリガーすることができます

デフォルト値は、ASF が Steam Web サービス、特に steamcommunity.com、api.steampowered.com、store.steampowered.com にアクセスする唯一のツールであるという前提に基づいて設定されています。同じ Web サービスにリクエストを送信する他のツールを使用している場合は、そのツールにも WebLimiterDelay と同様の機能が含まれていることを確認し、両方をデフォルト値の 2 倍、つまり 600 に設定してください。これにより、 300 ミリ秒あたり1回以上リクエストを送信することを超えることがないことが保証されます。

一般的に、WebLimiterDelay をデフォルト値より低くすることは強く非推奨です。IP 関連のさまざまなブロックにつながる可能性があり、その一部は永久的なものになる可能性もあります。デフォルト値は、サーバー上で単一の ASF インスタンスを実行する場合や、通常のシナリオで公式 Steam クライアントと併用する場合には十分です。ほとんどの用途ではこの値で問題ないはずです。変更する場合は増やすだけにしてください(下げてはいけません)。要するに、 単一のIPから単一のSteamドメインに送信されるすべてのリクエストのグローバル数は、 300 msあたり1回以上のリクエストを超えてはなりません。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


WebProxy

文字列 型のデフォルト値は null です。このプロパティは、内部の http 関連通信に使用される Web プロキシアドレスを定義します。特に github.com、api.steampowered.com、steamcommunity.com、store.steampowered.com などのサービスへの通信に使用されます。同等の WebProxy 設定プロパティが設定されていない場合は、一般的な(ボットに固有の)通信と、ボット固有の通信に適用されます。 ASFリクエストをプロキシすることは、さまざまな種類のファイアウォール、特に中国のグレートファイアウォールをバイパスするのに非常に有用です。

このプロパティは uri 文字列として定義されています:

URI の文字列は、(サポートされている: http/https/socks4/socks4a/socks5)、ホスト、およびオプションのポートで構成されています。完全な uri 文字列の例は "http://contoso.com:8080" です。

プロキシがユーザー認証を必要とする場合は、 WebProxyUsername または WebProxyPassword も設定する必要があります。そのような必要がない場合は、このプロパティだけを設定するだけで十分です。

内部の Steam ネットワーク通信(CM)もプロキシ経由にする必要がある場合は、SteamProtocols ボットプロパティを、websocket トランスポートのみを許可する値、つまり 4 に設定してください。プロキシに対応しているのは websocket のみです。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


WebProxyPassword

文字列 型のデフォルト値は null です。このプロパティは、基本、ダイジェスト、NTLMで使用されるパスワードフィールドを定義します。 そして、プロキシ機能を提供するターゲット WebProxy マシンによってサポートされているKerberos 認証。プロキシがユーザーの資格情報を必要としない場合は、ここに何も入力する必要はありません。このオプションを使用すると、 WebProxy も同様に使用されている場合にのみ意味があります。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


WebProxyUsername

文字列 型のデフォルト値は null です。このプロパティは、基本、ダイジェスト、NTLMで使用されるユーザー名フィールドを定義します。 そして、プロキシ機能を提供するターゲット WebProxy マシンによってサポートされているKerberos 認証。プロキシがユーザーの資格情報を必要としない場合は、ここに何も入力する必要はありません。このオプションを使用すると、 WebProxy も同様に使用されている場合にのみ意味があります。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


ボット設定

既に知っているはずですが、下記の例に基づいて、すべてのボットが独自の設定を持っているはずです。まず、ボットにどのような名前を付けるかを決めます(例:1.json、main.json、primary.json、AnythingElse.json)。その後、設定に進んでください。

お知らせ: Botは ASF (そのキーワードはグローバル設定用に予約されています) ASFは、ドットで始まるすべての設定ファイルも無視します。

Botの設定は以下の構造を持っています:

{
    "AcceptGifts": false,
    "BotBehaviour": 0,
    "CompleteTypesToSend": [],
    "CustomGamePlayedWhileFarming": null,
    "CustomGamePlayedWhileIdle": null,
    "Enabled": false,
    "FarmingOrders": [],
    "FarmingPreferences": 0,
    "GamesPlayedWhileIdle": [],
    "GamingDeviceType": 1,
    "HoursUntilCardDrops": 3,
    "LootableTypes": [1, 3, 5],
    "MachineName": null,
    "MatchableTypes": [5],
    "OnlineFlags": 0,
    "OnlineStatus": 1,
    "PasswordFormat": 0,
    "RedeemingPreferences": 0,
    "RemoteCommunication": 3,
    "SendTradePeriod": 0,
    "SteamLogin": null,
    "SteamMasterClanID": 0,
    "SteamParentalCode": null,
    "SteamPassword": null,
    "SteamTradeToken": null,
    "SteamUserPermissions": {},
    "TradeCheckPeriod": 60,
    "TradingPreferences": 0,
    "TransferableTypes": [1, 3, 5],
    "UseLoginKeys": true,
    "UserInterfaceMode": 0,
    "WebProxy": null,
    "WebProxyPassword": null,
    "WebProxyUsername": null
}

すべてのオプションについて以下に説明します。

AcceptGifts

bool type, デフォルト値 false. 有効にすると、ASFは自動的にボットに送られたすべてのスチームギフト(ウォレットギフトカードを含む)を受け入れ、引き換えます。これには、 SteamUserPermissions で定義されている以外のユーザーから送られたギフトも含まれます。電子メールアドレスに送信された贈り物はクライアントに直接転送されることはありませんので、ASFはあなたの助けなしにそれらを受け入れません。

このオプションは代替アカウントにのみ推奨されます プライマリアカウントに送られたギフトを自動的に引き換えたくない可能性があります。この機能を有効にするかどうかが不明な場合は、デフォルト値の false を維持します。


BotBehaviour

バイトフラグ type, デフォルト値 0. このプロパティは、さまざまなイベントでのASFボットのような振る舞いを定義し、以下のように定義されています。

値 名前 説明
0 無し 特別なBotの動作はありません。デフォルト設定は正常です。
1 RejectInvalidFriendInvites ASFが無効な友達招待を拒否する(無視する代わりに)原因となります
2 RejectInvalidTrades ASFが無効な取引オファーを拒否する原因となります(無視する代わりに)
4 RejectInvalidGroupInvites ASFが無効なグループ招待を拒否する(無視する代わりに)原因となります
8 DismissInventoryNotifications ASFはインベントリ通知を自動的に削除します
16 MarkReceivedMessagesAsread ASFは受信したすべてのメッセージを既読として自動的にマークします
32 MarkBotMessagesAsread ASFが他のASFボットからのメッセージを読み取りとして自動的にマークします
64 DisableIncomingTradesParsing ASFが入ってくるトレードオファーを処理しない原因となります

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

一般的に、ボットのアクティビティに関連するさまざまなオートメーション設定を変更する場合は、このプロパティを変更します。デフォルトの設定では、非侵襲モードでASFが実行されるため、ユーザーの意志に反しない有益な自動化のみが可能です。

無効な友達招待は、 FamilySharing パーミッション( SteamUserPermissionsで定義)以上のユーザーからの招待ではありません。通常モードのASFは、あなたが期待するように招待を無視し、受け入れるかどうかを自由に選択できます。 RejectInvalidFriendInvites を有効にすると、それらの招待は自動的に拒否されます。実質的には、他の人があなたをフレンドリストに追加する機能を無効化することになります(SteamUserPermissions で定義されている人を除き、ASF がそのようなリクエストをすべて拒否するためです)。すべての友人招待を拒否したい場合を除き、このオプションを有効にするべきではありません。

無効なトレードオファーは、組み込みASFモジュールを通じて受け入れられないオファーです。この件について詳しくは、ASF がどの種類のトレードを自動的に受け入れるかを明確に定義している**トレード**セクションで確認できます。有効なトレードは、他の設定、特に TradingPreferences によっても定義されます。 RejectInvalidTrades はすべての無効なトレードオファーを無視する代わりに拒否されます。 ASFによって自動的に受け入れられていないすべてのトレードオファーを完全に拒否したい場合を除き、このオプションを有効にするべきではありません。

無効なグループ招待は、 SteamMasterClanID グループからの招待ではありません。通常モードのASFは、予想通りグループ招待を無視します。 あなたが特定のスチームグループに参加するかどうかを自分で決めることを許可します。 RejectInvalidGroupInvites を有効にすると、それらのグループ招待はすべて自動的に拒否され、実質的に SteamMasterClanID 以外のグループには招待できなくなります。すべてのグループ招待を完全に拒否したい場合を除き、このオプションを有効にするべきではありません。

DismissInventoryNotifications は、新しいアイテムの受信に関する常にSteamの通知に悩まされ始めたときに非常に便利です。 ASFはSteamクライアントに組み込まれているため、通知自体を取り除くことはできません。 通知を受け取った後に自動的に消去することができます。通知はもはや「在庫の新しいアイテム」の通知を残すことはありません。あなたが自分自身を評価することを期待した場合 すべての受信されたアイテム (特にASFで養殖カード)、その後、当然、このオプションを有効にするべきではありません。あなたが狂ったことを始めるとき、これはオプションとして提供される覚えておいてください。

MarkReceivedMessagesAsRead は、ASFが実行中のアカウントで受信したすべての すべての メッセージを自動的にマークします プライベートでもグループでも読まれていますこれは通常、ASFコマンドの実行中にあなたからの「新しいメッセージ」通知をクリアするためにのみaltアカウントで使用する必要があります。このオプションは、メインアカウントにはおすすめしません。あらゆる新着メッセージ通知を受け取らないようにしたい場合は別です。これには、ASF を開いたままにして通知を消去させていた場合、オフライン中に発生した通知も含まれます。

MarkBotMessagesAsRead は、ボットメッセージのみを既読にすることで同様の方法で動作します。ただし、ボットや他の人がいるグループチャットでこのオプションを使用する場合は注意してください。Steam のチャットメッセージ確認の実装では、マークすることにしたメッセージだけでなく、そのメッセージより前に発生したすべてのメッセージも確認済みになります。そのため、途中で発生した無関係なメッセージを万が一にも見逃したくない場合は、通常この機能の使用は避けた方がよいでしょう。明らかに、複数のプライマリアカウントを持っている場合にもリスクがあります(例: 同じASFインスタンスで実行されている場合、通常のASFメッセージを見逃すこともできます。

DisableIncomingTradesParsing は、ASFが入ってくる取引オファーを解析するのを止めます。つまり、それに関連する取引機能全体が非オペレーショナルであることを意味します。 ASFはデフォルトで最小侵襲モードで動作するため、 Master 以上のユーザーからのトレードオファーのみ受け付けます。 他の取引オファーに触れることはありません - 受信取引の解析はデフォルトで有効になります。この設定は、取引のパースに関連する追加のリクエスト/オーバーヘッドを確実にしないようにしたい人にとって最も理にかなっており、処理中のロジック全体を無効にします。 例えば彼らはロボットがマスタートレード要求を受け取れないことを知っているからです したがって、ASFが取引活動に参加する必要はありません。このオプションを指定すると、受信取引に依存する他のすべてのオプションも無効になることに注意してください。 例えば、 AcceptDonations または SteamTradeMatcher - カスタムプラグインも通常の方法で受信取引オファーを処理することができません。

このオプションを設定する方法がわからない場合は、デフォルトのままにすることをお勧めします。


CompleteTypesToSend

ImmutableHashSet<byte> 型はデフォルト値が空です。 ASFがここで指定されたアイテムタイプのセットを完了させることで完了すると、 マスター 権限を持つユーザーに、完成したすべてのセットとの蒸気取引を自動的に送信できます。 特定のボットアカウントをeに利用したい場合はとても便利です をクリックします。このオプションは loot コマンドと同じように動作します。そのため、Master 権限が設定されたユーザーが必要であることに注意してください。また、有効な SteamTradeToken が必要になる場合や、そもそもトレード可能なアカウントを使用している必要がある場合もあります。

この設定では、現在以下のアイテムタイプがサポートされています。

値 名前 説明
3 FoilTradingCard TradingCard
5 TradingCard スチームトレーディングカード。バッジをクラフトするために使用されます(フォイル以外)

上記の設定にかかわらず、ASF が要求するのは Steam コミュニティアイテム(appID が 753、contextID が 6)のみである点に注意してください。そのため、すべてのゲームアイテム、ギフトなどは、定義上トレードオファーから除外されます。

このオプションを使用すると追加のオーバーヘッドが発生するため、自力でセットを完成させる現実的な見込みがあるボットアカウントでのみ使用することをおすすめします。たとえば、SendOnFarmingFinished 設定を FarmingPreferences で使用している場合や、SendTradePeriod、または loot コマンドを普段から使用している場合は、有効にしても意味がありません。

このオプションを設定する方法がわからない場合は、デフォルトのままにすることをお勧めします。


CustomGamePlayedWhileFarming

文字列 型のデフォルト値は null です。 ASFが農業をしている場合、現在農業を営んでいるゲームではなく、「非スチームゲームをプレイする: CustomGamePlayedWhileFarming」と表示することができます。これは、あなたが農業をしていることを友達に知らせたい場合に便利です。 しかし、 オフライン の OnlineStatusを使用したくありません。 ASFはSteamネットワークの実際の表示順序を保証できませんのでご注意ください。 したがって、これは適切に表示されるかもしれない、またはそうでないかもしれない提案に過ぎません。特に、 ASFがすべての `` 32 スロットをバンプされるまでに時間がかかるゲームで埋めた場合、カスタム名はAformat@@4複雑なAformat@@5ファーミングアルゴリズムには表示されません。デフォルト値の `null` はこの機能を無効にします。

ASFには、テキストでオプションで使用できる特殊変数がいくつか用意されています。 {0} は、現在ファーミング中のゲーム(複数可)の AppID に ASF によって置き換えられます。一方、{1} は、現在ファーミング中のゲーム(複数可)の GameName に ASF によって置き換えられます。


CustomGamePlayedWhileIdle

文字列 型のデフォルト値は null です。 CustomGamePlayedWhileFarmingと同様ですが、ASFには何もしていない状況(アカウントは完全に遠いです)。 ASFはSteamネットワークの実際の表示順序を保証できませんのでご注意ください。 したがって、これは適切に表示されるかもしれない、またはそうでないかもしれない提案に過ぎません。このオプションと一緒に GamesPlayedWhileIdle を使用している場合は、GamesPlayedWhileIdle が優先される点に注意してください。そのため、31 個を超えて宣言することはできません。超えた場合、CustomGamePlayedWhileIdle がカスタム名用のスロットを占有できなくなります。デフォルト値の null はこの機能を無効にします。


Enabled

bool type, デフォルト値 false. このプロパティは、ボットが有効になっているかどうかを定義します。有効なボットインスタンス(true)は ASF の実行時に自動的に開始されます。一方、無効なボットインスタンス(false)は手動で開始する必要があります。デフォルトでは、すべてのボットは無効化されています したがって、自動的に開始されるすべてのボットに対して、このプロパティを true に切り替えることをお勧めします。


FarmingOrders

ImmutableList<byte> 型はデフォルト値が空です。このプロパティは、指定したボットアカウントに対して ASF が使用する優先ファーミング順序を定義します。現在、以下の農業受注があります。

値 名前 説明
0 Unordered ソートなし、CPUパフォーマンスが少し向上します
1 AppIDsAscending appIDs の値が低いゲームから優先してファーミングします
2 AppIDsDescending 最も高い アプリID でゲームをファームしてみてください
3 CardDropsAscending カードドロップ数が最も少ないゲームを最初にファームしてみてください
4 CardDropsDescending カードドロップ数が最も高いゲームを最初にファームしてみてください
5 HoursAscending 最初に再生時間の最小数のゲームをファームしてみてください
6 HoursDescending 最も多くの時間が最初に再生されたゲームをファームしてみてください
7 NamesAscending Aから始まるアルファベット順にゲームをファームしてみてください
8 NamesDescending 逆アルファベット順のゲームをZから始めてファームします。
9 Random 完全にランダムな順序でゲームをファームしてみてください(プログラムの実行ごとに異なります)
10 BadgeLevelsAscending バッジレベルが最も低いゲームを最初にファームしてみてください
11 BadgeLevelsDescending 最高のバッジレベルで最初にゲームをファームしてみてください
12 RedeemDateTimesAscending 最初にアカウントで最も古いゲームをファームしてみてください
13 RedeemDateTimesDescending 最初にアカウントで最新のゲームをファームしてみてください
14 MarketableAscending 市場性のないカードが最初にドロップされているゲームをファームしてみてください(警告:計算には高価です)
15 MarketableDescending マーケットで販売可能なカードドロップを持つゲームから先にファーミングを試みます(警告:計算コストが高くなります)

このプロパティは配列であるため、固定された順序で複数の異なる設定を使用できます。たとえば、15、11、7 の値を含めることで、まずマーケットで販売可能なゲーム、次にバッジレベルが最も高いゲーム、最後にアルファベット順で並べ替えることができます。お分かりのとおり、順序は実際に重要です。逆の順序(7、11、15)にすると、まったく異なる結果になります(まずゲーム名のアルファベット順で並べ替えられ、ゲーム名は一意であるため、他の 2 つは実質的に役に立たなくなります)。大多数の人々は、おそらくそれらのすべてのうち1つの注文を使用するでしょう。 しかし、必要に応じて、追加のパラメータでさらに並べ替えることもできます。

また、上記すべての説明にある「試みる」という言葉にも注意してください。実際の ASF の順序は、選択された**カードファーミングアルゴリズムに大きく影響され、ソートは ASF がパフォーマンス面で同等と見なした結果にのみ影響します。たとえば、Simple アルゴリズムでは、現在のファーミングセッションにおいて、選択した FarmingOrders が完全に尊重されます(すべてのゲームが同じパフォーマンス値を持つためです)。一方、Complex アルゴリズムでは、実際の順序はまず時間の影響を受け、その後、選択した FarmingOrders に従って並べ替えられます。これにより異なる結果になります。既存のプレイ時間があるゲームは他より優先されるため、実質的に ASF は、必要な HoursUntilCardDrops をすでに満たしたゲームをまず優先し、その後でそれらのゲームを、選択した FarmingOrders に従ってさらに並べ替えます。同様に、ASFはすでにバンプされたゲームがなくなったら。 残りのキューを最初に並べ替えます(残りのタイトルを HoursUntilCardDrops にバンプするのに必要な時間が短縮されます)。したがって、この設定プロパティは、ASF ができる限り尊重しようとする提案**にすぎません。ただし、それがパフォーマンスに悪影響を与えない場合に限ります(この場合、ASF は常に FarmingOrders よりもファーミング性能を優先します)。

fq **コマンド**からアクセスできる優先ファーミングキューもあります。これが使用されている場合、実際のファーミング順序は、まずパフォーマンス、次にファーミングキュー、最後に FarmingOrders によってソートされます。


FarmingPreferences

バイトフラグ type, デフォルト値 0. このプロパティは、ファーミングに関連する ASF の動作を定義し、以下のように定義されています:

値 名前
0 None
1 FarmingPausedByDefault
2 ShutdownOnFaringFinished
4 SendOnFarmingFinished
8 FarmPriorityQueueOnly
16 SkipRefundableGames
32 SkipUnplayedGames
64 EnableRiskyCardsDiscovery
256 AutoUnpackBoosterPacks

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

すべてのオプションについて以下に説明します。

FarmingPausedByDefault は、 CardsFarmer モジュールの初期状態を定義します。通常、ボットは起動時に自動的にファーミングを開始します。これは、Enabled または start コマンドによるものです。 FarmingPausedByDefault は、自動ファーミング処理を手動で resume したい場合に使用できます。たとえば、常に play を使用し、自動の CardsFarmer モジュールを一切使用したくない場合です。これは pause **コマンド**とまったく同じように動作します。

ShutdownOnFarmingFinished を使用すると、ファーミング完了後にボットをシャットダウンできます。通常、ASFはプロセスがアクティブである全体の間、アカウントを「占有」しています。指定したアカウントのファーミングが完了すると、ASF はそのアカウントを定期的に確認します(IdleFarmingPeriod 時間ごと)。その間に Steam カード付きの新しいゲームが追加されていれば、プロセスを再起動しなくても、そのアカウントのファーミングを再開できます。これは多くのユーザーにとって便利です。ASF が必要に応じて自動的にファーミングを再開できるためです。ただし、指定したアカウントのファーミングが完全に完了した時点で、プロセスを停止したい場合もあります。その場合は、このフラグを使用することで実現できます。有効にすると、アカウントのファーミングが完全に完了した時点で、ASF はログオフを実行します。これにより、そのアカウントは定期的に確認されることも、占有されることもなくなります。 ASF に指定したボットインスタンスで常に動作していてほしいのか、それともファーミング処理が完了した時点で停止してほしいのかは、自分で判断してください。

このオプションは、 ShutdownIfPossibleと組み合わせることが最も理にかなっています。 すべてのアカウントが停止されると、ASFもシャットダウンします マシンを安静にして他の動作をスケジュールすることができます スリープやシャットダウンなど 最後のカードが落ちた瞬間と同じです

SendOnFarmingFinished を使用すると、ここまでにファーミングしたすべてのものを含む Steam トレードを、Master 権限を持つユーザーへ自動的に送信できます。自分でトレードを処理する手間をかけたくない場合に非常に便利です。このオプションは loot コマンドと同じように動作します。そのため、Master 権限が設定されたユーザーが必要であることに注意してください。また、有効な SteamTradeToken が必要になる場合や、そもそもトレード可能なアカウントを使用している必要がある場合もあります。ファーミング完了後に loot を開始するだけでなく、このオプションが有効な場合、ASF は新しいアイテム通知を受け取るたびに(ファーミング中でない場合)loot を開始し、新しいアイテムが発生するトレードが完了するたびにも(常に)開始します。これは、他の人から受け取ったアイテムを私たちのアカウントに「転送」する場合に特に便利です。通常、この機能とあわせて**ASF 2FA**を使用することをおすすめします。ただし、2FA 確認を手動で適切なタイミングで処理するつもりであれば、必須ではありません。

FarmPriorityQueueOnly は、fq **コマンド**で利用できる優先ファーミングキューに自分で追加したアプリのみを、ASF が自動ファーミングの対象として考慮するかどうかを定義します。このオプションを有効にすると、ASFはリストに欠けているすべての appID をスキップします。 効果的に自動ASF農業のためのチェリーピックゲームを可能にします。キューにゲームを追加しなかった場合、ASFはアカウントにファームするものがないように動作することに注意してください。

SkipRefundableGames は、まだ返金可能なゲームを ASF が自動ファーミングから除外するかどうかを定義します。返金可能なゲームは、Steamストアで過去2週間購入し、まだ2時間以上プレイしていないゲームです。 Steam refunds page. デフォルトでは、ASF は Steam の返金ポリシーを完全に無視し、ほとんどのユーザーが期待するように、すべてをファーミングします。ただし、ASFが払い戻し可能なゲームをすぐにファームしすぎないようにしたい場合は、このフラグを使用できます。 ASFがプレイタイムに悪影響を及ぼすことを心配することなく、必要に応じて自分でゲームを評価し、返金することができます。このオプションを有効にすると、Steam ストアで購入したゲームは、有効化日から最大 14 日間 ASF によってファーミングされません。アカウントが他に何も所有していない場合は、ファーミング対象がないように表示されることに注意してください。

SkipUnplayedGames は、ASFがまだ起動していないゲームをスキップすべきかどうかを定義しています。この文脈で再生されていないゲームは、Steamで再生時間を記録していないことを意味します。このフラグを使用する場合、Steamがプレイタイムを登録するまで、そのようなゲームはスキップされます。これにより、まだ試す機会のなかったゲームをスキップし、ASF がファーミング対象にできるゲームをより適切に制御できます。その結果、未プレイのゲームをプレイ候補として提案するなど、選択した Steam 機能をより有用に保てます。

EnableRiskyCardsDiscovery は、ASF が 1 つ以上のバッジページを読み込めず、そのためファーミング可能なゲームを見つけられない場合に発動する、追加のフォールバックを有効にします。特に、膨大な数のカードドロップがあるアカウントでは、バッジページの読み込みが不可能になった場合があります(オーバーヘッドが原因)。 その口座は農業では不可能ですプロセスを始められる情報を読み込むことができないからですこれらの一握りの場合、このオプションは代替アルゴリズムを使用することを可能にします。 ブースターを組み合わせて作成しブースターパックを使ってアカウントの対象となります アイドルできるかもしれないゲームを見つけるために 必要な情報を検証・取得するために多額のリソースを費やし 限られた量のデータと情報で農業のプロセスを開始しようとするとバッジページが読み込まれる状況に到達し 通常のアプローチを利用できるようになりますこのフォールバックを使用すると、ASFは限られたデータでのみ動作することに注意してください。 したがって、ASFが実際よりもはるかに少ない落下を見つけるのは完全に普通です - 他の落下は、農業プロセスの後の段階で発見されます。

このオプションが「危険」と呼ばれているのには十分な理由があります。非常に低速で、動作には大量のリソース(ネットワークリクエストを含む)を必要とするため、有効化は推奨されません。特に長期間の使用では避けるべきです。このオプションは、アカウントがバッジページを読み込むことができず、ASFが操作できないと以前に判断した場合にのみ使用してください。 プロセスを開始するために必要な情報を常に読み込むことができませんたとえできるだけプロセスを最適化するために最善を尽くしたとしても、 この選択肢はまだ不必要な結果を引き起こす可能性があります 一時的なものや、リクエストが多すぎたり、Steamサーバーのオーバーヘッドを引き起こしたりするためにSteam側からの永久的なBANなどです。したがって、我々は事前に警告し、我々は絶対に保証なしでこのオプションを提供しています, あなたはあなた自身のリスクでそれを使用しています.

AutoUnpackBoosterPack は、新しいアイテムの通知を受信すると、自動的にすべてのブースターパックをアンパックします。これにより、すぐに追加のカードドロップを取得することができます。 これは、特に他のオプションと組み合わせて望まれるシナリオかもしれません (e. SteamTradeMatcher または CompleteTypesToSend).


GamesPlayedWhileIdle

ImmutableHashSet<uint> 型はデフォルト値が空です。 ASFにファームするものが何もない場合は、指定したスチームゲーム(appID)を代わりにプレイできます。このような方法でゲームをプレイすると、それらのゲームのあなたの「時間」を増加させますが、それ以外の何ものでもありません。この機能が正しく動作するには、お使いの Steam アカウントが有効なライセンスを所有している必要があります。対象は、ここで指定するすべての appIDs です。これには F2P ゲームも含まれます。この機能は CustomGamePlayedWhileIdle と同時に有効にできます。これにより、Steam ネットワーク上でカスタムステータスを表示しながら、選択したゲームをプレイできます。ただし、この場合も CustomGamePlayedWhileFarming の場合と同様に、実際の表示順序は保証されません。 Steamでは、 32 appID 合計でのみASFを再生できます。 したがって、このプロパティでは、多くのゲームを置くことができます。


GamingDeviceType

ushort タイプで、デフォルト値は 1 です。このプロパティは、Steamプラットフォームでいくつかの追加のオンライン機能を有効にすることができ、以下のように定義されています。

値 名前 説明
1 StandardPC 特殊モードなし、デフォルト
544 SteamDeck Steamデッキとしてプレゼントする

このプロパティに基づいている EGamingDeviceType 型には、使用可能な値が多く含まれています。 しかし我々の知る限り彼らは今日まで全く効果がありません

このプロパティの設定方法がわからない場合は、デフォルト値は 1のままにしておいてください。


HoursUntililCarddrops

バイト 型のデフォルト値は 3 です。このプロパティは、アカウントにカードのドロップが制限されているかどうかを定義します。制限付きカードドロップとは、対象のゲームを少なくとも HoursUntilCardDrops 時間プレイするまで、そのアカウントがそのゲームからカードドロップを一切受け取れないことを意味します。残念ながらそれを検出する魔法の方法はありませんので、ASFはあなたを頼りにしています。このプロパティは、使用される**カードファーミングアルゴリズム**に影響します。このプロパティを適切に設定すると、利益を最大化し、カードの生産に必要な時間を最小限に抑えることができます。あなたのアカウントに完全に依存するので、あなたが1つまたは別の値を使用するべきかどうかは明らかに答えがないことを覚えておいてください。返金を一度も申請したことがない古いアカウントでは、カードドロップに制限がないようなので、0 の値を使用するべきです。一方、新しいアカウントや返金を申請したことがあるアカウントでは、カードドロップに制限があり、3 の値を使用します。ただし、これはあくまで理論上の話であり、規則として受け取るべきではありません。このプロパティのデフォルト値は、「小さい悪」に基づいて設定されており、大部分のユースケースが使用されています。


LootableTypes

ImmutableHashSet<byte> 型で、デフォルト値は Steam アイテムタイプの 1, 3, 5 です。このプロパティは、ルート時の ASF の動作を定義します。**コマンド**を使用する手動ルートと、1 つ以上の設定プロパティによる自動ルートの両方に適用されます。 ASFは、 LootableTypes のアイテムのみがトレードオファーに含まれるようにします。 したがって、このプロパティは、あなたがあなたに送信されている取引オファーで受けたいものを選択することができます。

値 名前 説明
0 Unknown 以下のいずれかに適合しないすべてのタイプ
1 BoosterPack ゲーム中のランダムなカードが3枚入ったブースターパック
2 Emoticon Steamチャットで使用する絵文字
3 FoilTradingCard TradingCard
4 ProfileBackground あなたのSteamプロフィールで使用するプロフィールの背景
5 TradingCard スチームトレーディングカード。バッジをクラフトするために使用されます(フォイル以外)
6 SteamGems ブースターのクラフトに使用されているスチームジェム、袋が含まれています
7 SaleItem Steam販売中に獲得した特別アイテム
8 Consumable 使用後に消える消耗品。
9 ProfileModifier Steamプロフィールの外観を変更できる特別なアイテム
10 Sticker Steamチャットで使用できる特別なアイテム
11 ChatEffect Steamチャットで使用できる特別なアイテム
12 MiniProfileBackground Steamプロフィールの特別な背景
13 AvatarProfileFrame Steamプロフィール用の特別なアバターフレーム
14 AnimatedAvatar Steamプロフィール用の特別なアニメーションアバター
15 KeyboardSkin Steamデッキ用の特別なキーボードスキン
16 StartupVideo Steamデッキ用の特別なスタートアップビデオ

上記の設定にかかわらず、ASF が要求するのは Steam コミュニティアイテム(appID が 753、contextID が 6)のみである点に注意してください。そのため、すべてのゲームアイテム、ギフトなどは、定義上トレードオファーから除外されます。

デフォルトのASF設定は、ボットの最も一般的な使用法に基づいており、ブースターパックのみを略奪し、トレーディングカード(フォイルを含む)を使用しています。ここで定義されたプロパティでは、満足する方法でその振る舞いを変更できます。上記で定義されていないすべての種類は Unknown タイプとして表示されることに注意してください。これは、Valve が新しい Steam アイテムをリリースした場合に特に重要です。そのアイテムも、ここに追加されるまで(将来のリリースで)、ASF では Unknown として扱われます。そのため、一般的には Unknown タイプを LootableTypes に含めることはおすすめしません。ただし、自分が何をしているのか理解していて、Steam ネットワークが再び壊れ、すべてのアイテムが Unknown と報告された場合に、ASF があなたのインベントリ全体をトレードオファーで送信することも理解している場合は例外です。 Unknown 型を LootableTypesに含めないことが私の強い提案です。たとえすべてを略奪することを期待している場合でも (そうでなければ) 。


MachineName

文字列 型のデフォルト値は null です。 ASF は Steam ネットワークへログインするときにこのプロパティを使用します。これは、ASF のマシンとセッションが Steam 上でどのように表示されるかをカスタマイズするために使用できます。たとえば、現在ログイン中のデバイスを**こちら**で表示する場合などです。

ASFには、テキストでオプションで使用できる特殊変数がいくつか用意されています。 {0} は OS から提供されるマシン名に置き換えられ、{1} は ASF の公開識別子に置き換えられます。一方、{2} は ASF のバージョンに置き換えられます。

何をしているのかわからない限り、デフォルト値の null に保持する必要があります。この場合、ASFは内部的に適切な値を決定します。これは、今日の {0} ({1}/{2}) です。これはSteamネットワークが完全に尊重する可能性がある、またはそうでない可能性がある提案のみであることに留意してください。


MatchableTypes

ImmutableHashSet<byte> 型のデフォルト値は 5 Steamアイテム型です。このプロパティは、 TradingPreferences の SteamTradeMatcher オプションが有効な場合に、どのSteamアイテムタイプをマッチさせることが許可されるかを定義します。型は以下のように定義されている。

値 名前 説明
0 Unknown 以下のいずれかに適合しないすべてのタイプ
1 BoosterPack ゲーム中のランダムなカードが3枚入ったブースターパック
2 Emoticon Steamチャットで使用する絵文字
3 FoilTradingCard TradingCard
4 ProfileBackground あなたのSteamプロフィールで使用するプロフィールの背景
5 TradingCard スチームトレーディングカード。バッジをクラフトするために使用されます(フォイル以外)
6 SteamGems ブースターのクラフトに使用されているスチームジェム、袋が含まれています
7 SaleItem Steam販売中に獲得した特別アイテム
8 Consumable 使用後に消える消耗品。
9 ProfileModifier Steamプロフィールの外観を変更できる特別なアイテム
10 Sticker Steamチャットで使用できる特別なアイテム
11 ChatEffect Steamチャットで使用できる特別なアイテム
12 MiniProfileBackground Steamプロフィールの特別な背景
13 AvatarProfileFrame Steamプロフィール用の特別なアバターフレーム
14 AnimatedAvatar Steamプロフィール用の特別なアニメーションアバター
15 KeyboardSkin Steamデッキ用の特別なキーボードスキン
16 StartupVideo Steamデッキ用の特別なスタートアップビデオ

もちろん、このプロパティに使用するべき種類は通常、2、3、4、5 のみです。STM がサポートしているのはこれらの種類だけだからです。 ASFにはアイテムの希少性を発見するための適切なロジックが含まれているため、顔文字や背景を合わせることも安全です。 ASFは、同じ希少性を持つ同じゲームとタイプのアイテムのみがフェアと見なされます。

ASF はトレードボットではないため、マーケット価格は一切考慮しないことに注意してください。同じセットに属する同じレアリティのアイテムが、価格面で同じだとは考えられない場合、このオプションは適していません。この設定を変更する前に、この説明を理解し、同意できるかどうかを慎重に確認してください。

何をしているのかわからない限り、デフォルト値は 5です。


OnlineFlags

`` タイプのデフォルト値は 0 です。このプロパティは、 `OnlineStatus` のサプリメントとして機能し、Steamネットワークに発表された追加のオンラインプレゼンス機能を指定します。 `OnlineStatus` `Offline`以外のformat@@6 が必要で、以下のように定義されています:

値 名前 説明
0 None 特別なオンラインプレゼンスフラグなし、デフォルト
2 InJoinableGame クライアントは参加可能なゲーム中です
8 RemotePlayTotal クライアントは一緒にリモートプレイセッションを使用しています
256 ClientTypeWeb クライアントはWebインターフェイスを使用しています
512 ClientTypeMobile クライアントはモバイルアプリを使用しています
1024 ClientTypeTenfoot クライアントは大きな画像を使用しています
2048 ClientTypeVR クライアントは VR ヘッドセットを使用しています

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

このプロパティがベースになっている EPersonaStateFlag 型には、利用可能なフラグがより多く含まれています。 しかし我々の知る限り彼らは今日まで全く効果がありません

このプロパティの設定方法がわからない場合は、デフォルト値は 0 0のままにしておいてください。


OnlineStatus

バイト 型のデフォルト値は 1 です。このプロパティは、Steamネットワークにログインした後にBotが発表されるSteamコミュニティのステータスを指定します。現在、以下のステータスのいずれかを選択できます:

値 名前
0 Offline(オフライン)
1 オンライン
2 Online(オンライン)
3 Away(離席中)
4 Snooze(スヌーズ)
5 LookingToTrade(トレード希望)
6 LookingToPlay(プレイ希望)
7 Invisible(非表示)

オフライン ステータスはプライマリアカウントにとって非常に便利です。知っておくべきであるように、ゲームを農業することは実際にあなたの蒸気の状態を示しています "ゲームをする:XXX" それは友人に誤解をもたらす可能性がありますゲームをしている間、実際に農業をしている間、それらを混乱させる可能性がありますオフライン の状態で問題を解決します。ASFを使って蒸気カードを養殖している場合、アカウントは「ゲーム内」として表示されることはありません。 ASFがSteam コミュニティにサインインする必要がないので、これは可能です。 実際にはSteamネットワークに接続されていますが 私たちのオンラインプレゼンスを 発表することはありませんオフライン状態を使用してプレイしたゲームはプレイ時間にカウントされ、プロフィールに「最近プレイした」と表示されることに注意してください。

それに加えて、ASFの実行中に通知や未読のメッセージを受信したい場合にもこの機能が重要です。 Steamクライアントを同時に開かせないようにしていますこれは、ASFがSteamクライアントとして機能し、ASFがそれを望むかどうかを判断するためです。 Steam はこれらのメッセージやその他のイベントをすべて配信します。両方のクライアントがまったく同じイベントを受信しているため、ASFと独自のSteamクライアントの両方が実行されている場合は、これは問題ではありません。ただし、ASFが実行されている場合、Steamネットワークは特定のイベントやメッセージを「配信済み」とマークする可能性があります。 あなたの従来のSteamクライアントにもかかわらず、存在しないためにそれを受け取っていません。この場合、ASFはコミュニティイベントとみなされないため、オフラインステータスもこの問題を解決します。 未読のメッセージやその他のイベントはすべて、あなたが戻ってきたときに正しく未読とマークされます。

Offline モードで実行されている ASF は、通常の Steam チャット経由でコマンドを受信できないことに注意してください。チャットだけでなく、コミュニティ上のプレゼンス全体も実際には完全にオフラインになるためです。この問題を解決するには、 Invisible モードを代わりに使用します。このモードでは同様の方法で動作します (ステータスを公開しません)。 しかし、メッセージを受信し、応答する機能を保持します (つまり、前述の通知や未読のメッセージを破棄する可能性もあります)。 Invisible モードは、公開したくない alt アカウントで (status-wise) が最も理にかなっています。 命令を送れるようになっています

しかし、 Invisible モードで 1 つのキャッチがあります。 **** 現在オンラインの Steamセッションでは、ASF自体ではない場合でも、 ステータスが公開されるためです。これは、ASF側で修正できないSteamネットワークの現在の制限/バグによって引き起こされます。 Invisible モードを使用する場合は、 すべての 他のセッションを Invisible モードも同様に使用することを確認する必要があります。これは、ASF が唯一のアクティブセッションであることが期待されるサブアカウントでは当てはまります。しかし、メインアカウントではほとんどの場合、ASF のアクティビティだけを隠しつつ、フレンドには Online として表示されることを望むはずです。この場合、Invisible モードはまったく役に立ちません(代わりに Offline モードを使用することをおすすめします)。うまくいけば、この制限/バグは最終的にValveによって解決されるでしょうが、すぐにそれが起こるとは思いません...

このプロパティをどのように設定すればよいか分からない場合は、メインアカウントには 0(Offline)を、それ以外にはデフォルトの 1(Online)を使用することをおすすめします。


パスワードフォーマット

バイト 型のデフォルト値は 0 (プレーンテキスト ) です。このプロパティは SteamPassword プロパティの形式を定義し、現在は セキュリティ セクションで指定された値をサポートしています。指定された指示に従ってください SteamPassword プロパティに、 PasswordFormat に一致するパスワードが含まれていることを確認する必要があります。つまり、 PasswordFormat を変更した場合、 SteamPassword は既に **** になるはずです。 目指すだけではなく何をしているのかわからない限り、デフォルト値は 0 0です。

少なくとも一度 Steam ネットワークにログインしたことがあるボットの PasswordFormat を変更する場合、次回そのボットを起動したときに、一度だけ復号エラーが発生する可能性があります。これは、PasswordFormat が Bot.db データベースファイル内の機密プロパティの自動暗号化・復号にも使用されるためです。 ASFがこの状況から復旧できるため、このエラーは安全に無視できます。ただし、それが一定の基準で起こっている場合、例えば各再起動は、それを調査する必要があります。


Redeeming環境設定

バイトフラグ type, デフォルト値 0. このプロパティは、cd-keyを使用するときのASFの挙動を定義し、以下のように定義されています。

値 名前 説明
0 None 特別な引き換え設定なし、デフォルト
1 Forwarding 他のボットと引き換えることができない転送キー
2 Distributing それ自身と他のボットの間ですべてのキーを配布する
4 KeepMissingGames 転送時に不足しているゲームのキーを保持し、未使用のままにする
8 AssumeWalletKeyOnBadActivationCode BadActivationCode キーが CannotRedeemCodeFromClientと等しいと仮定して、ウォレットキーとして使用してみてください。

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

転送 は、引き換えることができないキーを転送します。 接続されている別のボットにログインして、その特定のゲームが見つからない場合(可能であれば)です。最も一般的な状況は、特定のゲームを所有していない別のボットに AlreadyPurchased のゲームを転送する場合ですが、このオプションは DoesNotOwnRequiredApp、RateLimited、RestrictedCountry など、他のシナリオにも対応しています。

を配布すると、受信したすべての鍵がそれ自体と他のボット間で配布されます。これは、すべてのボットがバッチから単一のキーを取得することを意味します。通常、これは同じゲームで多くのキーを引き換える場合にのみ使用されます。 あなたはそれらをボット間で均等に配布したいと思っています。 それとは対照的に、様々なゲームのための鍵を交換する。この機能は、 と引き換える1つのアクションで1つのキーのみを使うと意味がありません(配布する追加のキーはありません)。

KeepMissingGames は、キーが実際に私たちのボットによって所有されているかどうかを確認できない場合、 転送 を飛ばします。 そうでなくてもこれは基本的に、Forwarding は対象を限定して、AlreadyPurchased キーに適用されることを意味します。DoesNotOwnRequiredApp、RateLimited、RestrictedCountry などの他のケースは対象になりません。通常、プライマリアカウントでこのオプションを使用します。 例えば、ボットが一時的に RateLimitedになった場合、引き換えられるキーがさらに転送されないようにします。説明からわかるように、 転送 が有効になっていない場合、このフィールドは全く効果がありません。

AssumeWalletKeyOnBadActivationCode は BadActivationCode キーを CannotRedeemCodeFromClientとして扱われます。 したがって、ASFはウォレットキーとしてそれらを引き換えようとします。これはSteamが BadActivationCode (使用済みの CannotRedeemCodeFromClient ではない)としてウォレットキーを発表するために必要です。 その結果、ASFはそれらを償還しようとしませんでした。ただし、この設定を使用することはおすすめしません。ASF がすべての無効なキーをウォレットコードとして引き換えようとし、その結果、大量の(無効である可能性のある)リクエストが Steam サービスへ送信され、考えられるあらゆる影響を招く可能性があるためです。代わりに、ウォレットキーを意図的に有効化する場合は、ForceAssumeWalletKey redeem^ モードを使用することをおすすめします。これにより、必要な回避策が必要な場合にのみ、必要に応じて有効になります。

Forwarding と Distributing の両方を有効にすると、転送機能の上に分配機能が追加されます。これにより ASF は、次のキーへ進む前に(分配)、まず 1 つのキーをすべてのボットで引き換えようとします(転送)。通常、このオプションは Forwarding を使用したいものの、常にすべてのキーを順番に処理するのではなく、キーが使用された時点でボットを切り替える動作にしたい場合にのみ使用します(順番に処理する動作は Forwarding 単独の場合です)。この動作は、キーの大半、またはすべてが同じゲームに紐付いていることが分かっている場合に有用です。この状況では、Forwarding 単独だと、まず 1 つのボットですべてを引き換えようとします(キーがそれぞれ別のゲーム用である場合は理にかなっています)。一方、Forwarding + Distributing では、次のキーでボットを切り替え、新しいキーを引き換える作業を最初のボットとは別のボットへ「分配」します(キーが同じゲーム用である場合は、キーごとに無意味な試行を 1 回省けるため理にかなっています)。

利用可能なすべてのシナリオの実際のボット順序はアルファベット順で、利用できないボット(接続されていない、停止されているなど)は除外されています。 IPアドレス毎とアカウントごとの一時間あたりの償還の制限があることに注意してください。 そして、 OK で終わらなかったすべての救援試行は、失敗した試行に寄与します。 ASFは、 AlreadyPurchased 失敗を最小限に抑えるために最善を尽くします。例えば、 すでにそのゲームを所有している別のボットへの鍵の転送を避けることで しかし、Steamがライセンスを扱っているため、必ずしも機能するとは限りません。転送 や 配布 のような引き換えフラグを使用すると、常に RateLimited に達する可能性が高くなります。

また、アクセスできないボットに鍵を転送したり配布したりすることはできません。当然のことですが、引き換え処理に含めたいすべてのボットで、少なくとも Operator 権限を持っていることを確認してください。たとえば、status ASF **コマンド**で確認できます。


リモートコミュニケーション

byte flags 型、デフォルト値は 3。このプロパティは、リモート、サードパーティのサービスとの通信に関して、ボットごとのASFの動作を定義し、以下のように定義されています。

値 名前 説明
0 None サードパーティの通信が許可されていません。選択したASF機能は使用できません。
1 SteamGroup ASFのSteamグループ との通信を許可
2 PublicListing ユーザーが**TradingPreferencesで SteamTradeMatcher も有効にしている場合、掲載されるためにASF の STM リスト**との通信を許可します

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

このオプションには、ASFが提供するすべてのサードパーティの通信が含まれるわけではなく、他の設定によって暗示されていないもののみが含まれます。たとえば、ASFの自動更新を有効にしている場合、ASFは構成に従ってGitHub(ダウンロード用)と当社のサーバー(チェックサム検証用)の両方と通信します。同様に `` TradingPreferences は、リストされたボットをフェッチするためのサーバーとの通信を意味します。 必要とされています

この件に関する詳しい説明は、**リモート通信**セクションで確認できます。このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


送付期間

バイト 型のデフォルト値は 0 です。このプロパティは、FarmingPreferences の SendOnFarmingFinished 設定とよく似た動作をしますが、違いがあります。ファーミング完了時にトレードを送信する代わりに、残りのファーミング量に関係なく、SendTradePeriod 時間ごとに送信することもできます。ファーミングの完了を待つ代わりに、サブアカウントを普段から loot したい場合に便利です。デフォルト値の 0 はこの機能を無効にします。たとえば、ボットから毎日トレードを送信してほしい場合は、ここに 24 を入力してください。

通常、この機能とあわせて**ASF 2FA**を使用することをおすすめします。ただし、2FA 確認を手動で適切なタイミングで処理するつもりであれば、必須ではありません。このプロパティの設定方法がわからない場合は、デフォルト値は 0 0のままにしておいてください。


SteamLogin

文字列 型のデフォルト値は null です。 steamログインに使用するsteamログインプロパティを定義します。 steamログインの定義に加えて、 また、ASFの各スタートアップにSteamログインを入力したい場合は、設定に入れずに、 null のデフォルト値を維持することもできます。機密データを設定ファイルに保存したくない場合に便利です。


SteamMasterClanID

ulong type with default value of 0 0. このプロパティは、ボットがグループチャットを含めて自動的に結合するスチームグループの steamID を定義します。グループの steamID は、その ページ に移動し、リンクの末尾に /memberslistxml?xml=1 を追加することで確認できます。すると、リンクは このような形 になります。結果からグループのSteamIDを取得できます。 <groupID64> タグにあります。上記の例では、 103582791440160998 になります。起動時に指定されたグループに参加しようとするだけでなく、ボットはこのグループへのグループ招待も自動的に受け入れます。 グループにプライベートメンバーがある場合は、手動でBotを招待できます。ボット専用のグループがない場合は、このプロパティはデフォルト値 0にしておく必要があります。


SteamParentalCode

文字列 型のデフォルト値は null です。このプロパティは、スチームペアレンタルPINを定義します。 ASFは蒸気の親によって保護されたリソースへのアクセスを必要とします。したがって、その機能を使用する場合。 ASFには、正常に動作するように、ペアレンタルロック解除PINを提供する必要があります。 null のデフォルト値は、このアカウントのロック解除に必要なスチームペアレンタルPINがないことを意味します。 スチームペアレンタルの機能を使わない方がいいでしょう

限られた状況では、ASFは有効なSteamペアレンタルコード自体を生成することもできます。 それはOSリソースの過剰な量と追加の時間が必要ですが、 言うまでもなく成功は保証されていません したがって、その機能に依存しないことをお勧めし、代わりに有効な SteamParentalCode をASFが使用する設定に入れることをお勧めします。 ASFがPINが必要と判断し、それ自体でPINを生成することができない場合は、入力を求められます。


SteamPassword

文字列 型のデフォルト値は null です。 steamのパスワードを定義します。steamのログインに使用するパスワードです。ここでスチームパスワードを定義することに加えて、 ASFの各スタートアップにスチームパスワードを設定する代わりに入力したい場合は、 null のデフォルト値を維持することもできます。機密データを設定ファイルに保存したくない場合に便利です。


SteamTradeToken

文字列 型のデフォルト値は null です。フレンドリストにボットがある場合、Botはトレードトークンを心配することなくすぐに取引を送信できます。 したがって、このプロパティはデフォルト値の null で残すことができます。しかし、あなたのボットをフレンドリストに登録していない場合。 その後、このボットが取引を送信するユーザーとして取引トークンを生成して埋める必要があります。つまり、 このプロパティは、 この ボットインスタンスの SteamUserPermissions パーミッションで定義されているアカウントのトレードトークンで記入する必要があります。

トークンを確認するには、Master 権限を持つユーザーとしてログインした状態で こちら に移動し、自分のトレード URL を確認してください。私たちが探しているトークンは、トレードURLの &token= パートの後に8文字から作られています。 SteamTradeToken として、これらの8文字をコピーし、ここに置く必要があります。 &token= 部分、トークン自体のみを含めないでください (8 文字)。


Steamユーザー権限

ImmutableDictionary<ulong, byte> 型はデフォルト値が空です。このプロパティは、与えられたSteamユーザーが64ビットのSteamIDによって識別された地図を表示する辞書プロパティです。 ASFインスタンスでの権限を指定する バイトの 番号に。 ASFで現在利用可能なボット権限は次のように定義されています:

値 名前 説明
0 None 特別な権限がありません これは主に、この辞書にないSteam IDに割り当てられた参照値です。この権限を持つユーザーを定義する必要はありません。
1 FamilySharing 家族共有ユーザーに最小限のアクセスを提供します。 ASFはライブラリを使用するために許可されているSteam IDを自動的に検出できるため、これは主に参照値です。
2 Operator 与えられたボットインスタンスへの基本的なアクセスを提供します。主にライセンスを追加し、キーを引き換えます。
3 Master 与えられたBotインスタンスへのフルアクセスを提供します

要するに、このプロパティを使用すると、特定のユーザーの権限を扱うことができます。権限は主に ASF の**コマンドへのアクセスにとって重要ですが、トレードの承認など、多くの ASF 機能を有効にするためにも重要です。たとえば、自分のアカウントを Master に設定し、友人のうち 2~3 人に Operator アクセスを付与することで、その友人たちが ASF を使ってあなたのボット用のキーを簡単に引き換えられるようにできます。一方で、たとえばボットの停止などはできません**。そのおかげで、与えられたユーザーに簡単に権限を割り当てることができ、学位によって指定されたボットを使用させることができます。

マスター、および 演算子 以下に任意の金額を設定することをお勧めします。複数の Masters を設定することは技術的には可能であり、ASF はそれらを正しく扱います。たとえば、その全員からボットに送られたトレードを承認できます。ただし、ASF は単一の対象を必要とするすべての操作では、そのうち 1 人だけ(steam ID が最も低いユーザー)を使用します。たとえば loot リクエストや、FarmingPreferences の SendOnFarmingFinished 設定、SendTradePeriod などが該当します。これらの制限を完全に理解している場合、特に loot リクエストは、実際にコマンドを実行した Master に関係なく、常に steam ID が最も低い Master にアイテムを送信するという点を理解している場合は、ここで Master 権限を持つ複数のユーザーを定義できます。ただし、それでも単一 master 構成をおすすめします。

所有者 権限が SteamOwnerID グローバル設定プロパティとして宣言されているので、もう1つ追加のAformat@@4 権限があります。ここでは、誰にも Owner 権限を割り当てることはできません。SteamUserPermissions プロパティが定義するのは、ASF のプロセス全体ではなく、ボットインスタンスに関連する権限のみだからです。ボット関連のタスクでは、 SteamOwnerID は マスターと同じ扱いを受けるため、ここで SteamOwnerID を定義する必要はありません。


トレードチェック期間

バイト 型のデフォルト値は 60 です。通常、ASFは約1件の通知を受け取った直後に受信取引を処理しますが、スチームが故にその時点でそれを行うことができない場合があります。 そして、このようなトレードオファーは、次のトレード通知またはボットの再起動が行われるまで無視されたままです。 取引がキャンセルされたり、後で利用できなくなる可能性があります。このパラメータがゼロ以外の値に設定されている場合、ASFは TradeCheckPeriod 分ごとにそのような未払い取引を追加で確認します。デフォルト値はsteamサーバーへの追加リクエストのバランスと、念頭に置いて受信取引を失って選択されます。ただし、ASFを使用してカードをファームし、受信取引を自動的に処理する予定がない場合。 この機能を完全に無効にするには、 0 0 に設定してください。一方で、ボットが公開の ASF の STM リストに参加している場合や、トレードボットとして他の自動サービスを提供している場合は、すべてのトレードを適時処理できるように、このパラメーターを 15 分程度まで下げてもよいでしょう。


TradingPreferences

バイトフラグ type, デフォルト値 0. このプロパティは取引時のASF行動を定義し、以下のように定義されます。

値 名前 説明
0 None 特別な取引設定なし、既定値
1 AcceptDonations 私たちが何も失っていない取引を受け入れます
2 SteamTradeMatcher **STMのような取引に受動的に参加します。詳しくはトレード**をご覧ください
4 MatchEverything SteamTradeMatcher を設定し、それと組み合わせて設定する必要があります。良好で中立なものに加えて、悪い取引も受け入れます
8 DontAcceptBotTrades 他のボットインスタンスからの loot トレードを自動承認しません
16 MatchActively **STMのような取引に積極的に参加します。詳しくはItemsMatcherPlugin**をご覧ください

このプロパティは フラグ フィールドであることに注意してください。したがって、使用可能な値の任意の組み合わせを選択することができます。詳細については、 json mapping をご覧ください。 None オプションでフラグを有効にしません。

ASF のトレードロジックの詳しい説明や、利用可能な各フラグの説明については、**トレード**セクションを参照してください。


TransferableTypes

ImmutableHashSet<byte> type, default value of 1, 3, 5 steam item types. このプロパティは、transfer **コマンド**の実行時に、ボット間の転送対象として考慮される Steam アイテムタイプを定義します。 ASFは、 TransferableTypes のアイテムのみがトレードオファーに含まれるようにします。 したがって、このプロパティは、あなたのボットのいずれかに送信されている取引オファーで受信したいものを選択することができます。

値 名前 説明
0 Unknown(不明) 以下のいずれかに適合しないすべてのタイプ
1 BoosterPack(ブースターパック) ゲーム中のランダムなカードが3枚入ったブースターパック
2 Emoticon(絵文字) Steamチャットで使用する絵文字
3 FoilTradingCard(フォイルトレーディングカード) TradingCard
4 ProfileBackground(プロフィール背景) あなたのSteamプロフィールで使用するプロフィールの背景
5 TradingCard(トレーディングカード) スチームトレーディングカード。バッジをクラフトするために使用されます(フォイル以外)
6 SteamGems(Steam ジェム) ブースターのクラフトに使用されているスチームジェム、袋が含まれています
7 SaleItem(セールアイテム) Steam販売中に獲得した特別アイテム
8 Consumable(消耗品) 使用後に消える消耗品。
9 ProfileModifier(プロフィール変更アイテム) Steamプロフィールの外観を変更できる特別なアイテム
10 Sticker(ステッカー) Steamチャットで使用できる特別なアイテム
11 ChatEffect(チャット効果) Steamチャットで使用できる特別なアイテム
12 MiniProfileBackground(ミニプロフィール背景) Steamプロフィールの特別な背景
13 AvatarProfileFrame(アバタープロフィールフレーム) Steamプロフィール用の特別なアバターフレーム
14 AnimatedAvatar(アニメーションアバター) Steamプロフィール用の特別なアニメーションアバター
15 KeyboardSkin(キーボードスキン) Steamデッキ用の特別なキーボードスキン
16 StartupVideo(起動動画) Steamデッキ用の特別なスタートアップビデオ

上記の設定にかかわらず、ASF が要求するのは Steam コミュニティアイテム(appID が 753、contextID が 6)のみである点に注意してください。そのため、すべてのゲームアイテム、ギフトなどは、定義上トレードオファーから除外されます。

デフォルトのASF設定は、最も一般的なボットの使用方法に基づいており、ブースターパックのみ転送し、トレーディングカード(フォイルを含む)を使用しています。ここで定義されたプロパティでは、満足する方法でその振る舞いを変更できます。上記で定義されていないすべての種類は Unknown タイプとして表示されることに注意してください。これは、Valve が新しい Steam アイテムをリリースした場合に特に重要です。そのアイテムも、ここに追加されるまで(将来のリリースで)、ASF では Unknown として扱われます。そのため、一般的には Unknown タイプを TransferableTypes に含めることはおすすめしません。ただし、自分が何をしているのか理解していて、Steam ネットワークが再び壊れ、すべてのアイテムが Unknown と報告された場合に、ASF があなたのインベントリ全体をトレードオファーで送信することも理解している場合は例外です。私の強い提案は、 Unknown 型を TransferableTypesに含めないことです, あなたがすべてを転送することを期待しても.


ログインキー

bool type, デフォルト値 true. このプロパティは、ASFがこの Steamアカウントのログインキーメカニズムを使用するかどうかを定義します。ログインキーメカニズムは公式のSteamクライアントの「Remember me」オプションと非常によく似ています。 これにより、ASFは次のログイン試行に一時的なワンタイム使用ログインキーを保存して使用することができます。 ログインキーが有効である限り、効果的にパスワード、Steamガード、または2FAコードを提供する必要をスキップします。ログインキーは BotName.db ファイルに保存され、自動的に更新されます。このため、ASFで正常にログインした後にパスワード/SteamGuard/2FAコードを入力する必要はありません。

ログインキーは利便性のためにデフォルトで使用されます。これにより、ログインのたびに SteamPassword、SteamGuard、または 2FA コード(ASF 2FA を使用していない場合)を入力する必要がなくなります。ログインキーは1回しか使用できず、元のパスワードを明らかにしないので、優れた代替手段でもあります。全く同じ方法が元のSteamクライアントで使用されているため、次回ログオンを試行するためのアカウント名とログインキーが保存されます。 SteamLogin と UseLoginKeys を使用し、ASFで SteamPassword を空にするのと同じです。

しかし、この細部まで気になる人もいるかもしれません。 したがって、このオプションは、閉じた後に以前のセッションを再開できるようにするためにASFがいかなる種類のトークンも保存しないようにしたい場合に使用できます。 ログイン試行ごとに完全な認証が必須になりますこのオプションを無効にすると、公式のSteamクライアントで「Remember me」をチェックしないのとまったく同じように動作します。何をしているのかわからない限り、デフォルト値の true を維持する必要があります。


UserInterfaceMode

バイト 型のデフォルト値は 0 です。このプロパティは、Steamネットワークにログインした後にBotが発表されるユーザーインターフェースモードを指定します。例えば、 OnlineStatus を介してあなたの存在が許可されている場合、Steamチャットでアカウントがどのように表示されるかに影響を与える可能性があります。現在、以下のいずれかのモードを選択できます:

値 名前 説明
0 VGUI デフォルトのSteamクライアントモード
1 Tenfoot 大きな画像モード
2 Mobile Steamモバイルアプリ
3 Web Web ブラウザー セッション
5 MobileChat Steamモバイルチャットアプリ

このプロパティがベースになっている EUIMode 型には、利用可能な値が多く含まれています。 我々の知る限り彼らは今日まで全く影響を及ぼさない だから彼らは視認性のために切断されたまた、いくつかの追加機能が有効になっているため、 GamingDeviceTypeにも興味があるかもしれません。

このプロパティの設定方法がわからない場合は、デフォルト値は 0 0のままにしておいてください。


WebProxy

文字列 型のデフォルト値は null です。このプロパティは、特に apiなどのサービスに対して、ボット固有の内部http関連の通信に使用されるWebプロキシアドレスを定義します。 teampowered.com <code> ,store.steampowered.com steamcommunity.com と store.steampowered.com. 設定されていない場合、ASFは代わりに上記のグローバル WebProxy 設定を使用します。 ASFリクエストをプロキシすることは、さまざまな種類のファイアウォール、特に中国のグレートファイアウォールをバイパスするのに非常に有用です。

このプロパティは uri 文字列として定義されています:

URI の文字列は、(サポートされている: http/https/socks4/socks4a/socks5)、ホスト、およびオプションのポートで構成されています。完全な uri 文字列の例は "http://contoso.com:8080" です。

プロキシがユーザー認証を必要とする場合は、 WebProxyUsername または WebProxyPassword も設定する必要があります。そのような必要がない場合は、このプロパティだけを設定するだけで十分です。

内部の Steam ネットワーク通信(CM)もプロキシ経由にする必要がある場合は、SteamProtocols ボットプロパティを、websocket トランスポートのみを許可する値、つまり 4 に設定してください。プロキシに対応しているのは websocket のみです。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


WebProxyPassword

文字列 型のデフォルト値は null です。このプロパティは、基本、ダイジェスト、NTLMで使用されるパスワードフィールドを定義します。 そして、プロキシ機能を提供するターゲット WebProxy マシンによってサポートされているKerberos 認証。プロキシがユーザーの資格情報を必要としない場合は、ここに何も入力する必要はありません。このオプションを使用すると、 WebProxy も同様に使用されている場合にのみ意味があります。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


WebProxyUsername

文字列 型のデフォルト値は null です。このプロパティは、基本、ダイジェスト、NTLMで使用されるユーザー名フィールドを定義します。 そして、プロキシ機能を提供するターゲット WebProxy マシンによってサポートされているKerberos 認証。プロキシがユーザーの資格情報を必要としない場合は、ここに何も入力する必要はありません。このオプションを使用すると、 WebProxy も同様に使用されている場合にのみ意味があります。

このプロパティを編集する理由がない限り、デフォルトのままにしておく必要があります。


ファイル構造

ASFは非常に単純なファイル構造を使用しています。

├── 📁 config
│     ├── ASF.json
│     ├── ASF.db
│     ├── Bot1.json
│     ├── Bot1.db
│     ├── Bot2.json
│     ├── Bot2.db
│     └── …
├── ArchiSteamFarm.dll
├── log.txt
├── ...

ASFを別のPCなどに移動させるには、 config ディレクトリを単独で移動/コピーするだけで十分です。 これが、「ASFバックアップ」の任意の形式を行う推奨方法です。 内部ASFファイルを破損する危険性がない一方で、GitHubから残りの部分(プログラム)をいつでもダウンロードできるので、e. 欠陥のあるバックアップをとおして

log.txt ファイルは最後のASF実行によって生成されたログを保持します。このファイルには機密情報が含まれておらず、問題に関しては非常に便利です。 クラッシュしたり、前回のASFで何が起こったかの情報として。あなたが問題やバグに遭遇した場合、私たちはこのファイルについて非常に頻繁に尋ねます。 ASF はこのファイルを自動的に管理しますが、上級ユーザーであれば ASF の**ログ記録**モジュールをさらに調整できます。

config ディレクトリは、すべてのボットを含むASFの設定を保持する場所です。

ASF.json はグローバルASF設定ファイルです。この設定は、ASFがプロセスとしてどのように動作し、すべてのボットとプログラム自体に影響を与えるかを指定するために使用されます。 ASFプロセスオーナー、自動更新、デバッグなどのグローバルプロパティがあります。

BotName.json は与えられたボットインスタンスの設定です。この設定は、指定されたボットインスタンスの動作を指定するために使用されます。 そのため、これらの設定はそのボットに固有のものであり、他のボット間で共有されることはありません。これにより、さまざまな設定でボットを構成することができ、必ずしもすべてが同じ方法で動作するわけではありません。すべてのボットは、 BotNameの代わりにあなたが選んだ一意の識別子を使用して名前を付けられます。

設定ファイルとは別に、ASFはデータベースを格納するために、 config ディレクトリも使用します。

ASF.db はグローバルASFデータベースファイルです。グローバル永続ストレージとして機能し、ローカルSteamサーバーのIPなど、ASFプロセスに関連するさまざまな情報を保存するために使用されます。このファイル を編集しないでください。

BotName.db は与えられたボットインスタンスのデータベースです。このファイルは、ログインキーやASF2FAなどの永続的なストレージに与えられたボットインスタンスに関する重要なデータを保存するために使用されます。このファイル を編集しないでください。

BotName.keys は、**バックグラウンドゲーム有効化**にキーをインポートするために使用できる特殊なファイルです。それは必須ではなく、生成されませんが、ASFによって認識されています。キーが正常にインポートされると、このファイルは自動的に削除されます。

BotName.maFile は、ASF 2FA のインポートに使用できる特殊なファイルです。必須ではなく、生成されませんが、 BotName がまだASF2FAを使用していない場合、ASFによって認識されます。このファイルはASF2FAのインポートが成功すると自動的に削除されます。


JSONマッピング

すべての構成プロパティにはその型があります。プロパティのタイプは、その値に対して有効な値を定義します。指定された型に対してのみ有効な値を使用できます - 無効な値を使用する場合。 ASFはあなたの設定を解析できなくなります。

configs の生成には、ConfigGenerator を使用することを強くお勧めします。ほとんどの低レベルなもの (型の検証など) を処理します。 つまり、適切な値を入力するだけで、以下で指定された変数の型を理解する必要はありません。このセクションは、主に手動でコンフィグを生成/編集する人のためのもので、どのような値を使用できるかを知っています。

ASFで使用されるタイプはネイティブのC#タイプで、以下のように指定されています。


bool - ブール型は true と false 値のみ受け付けます。

例: "有効化": true


バイト - 符号なしバイト型、 0 から 255 (含む) の整数のみ受け付けます。

例: "ConnectionTimeout": 90


ushort - 符号なし短整数型です。0 から 65535 までの整数のみを受け付けます(両端を含む)。

例: "WebLimiterDelay": 300


uint - 符号なし整数型です。0 から 4294967295 までの整数のみを受け付けます(両端を含む)。


ulong - 符号なし長整数型です。0 から 18446744073709551615 までの整数のみを受け付けます(両端を含む)。

例: "SteamMasterClanID": 103582791440160998


string - 文字列型。空のシーケンス "" や null を含む、任意の文字列を受け付けます。空のシーケンスと null 値は ASF では同じように扱われるため、どちらを使用するかは好みに応じて選べます(私たちは null を使用しています)。

例:"SteamLogin": null、"SteamLogin": ""、"SteamLogin": "MyAccountName"


Guid? - null 許容の UUID 型です。JSON では文字列としてエンコードされます。 UUID は 32 16 進数文字で作られています。 0 0 から 9 および a から f までの範囲です。 ASFは、小文字、大文字、ダッシュの有無など、さまざまな有効なフォーマットに対応しています。有効な UUID に加えて、このプロパティは nullable であるため。 null の特殊な値は、提供する UUID がないことを示すために受け付けられます。

例: "LicenseID": null, "LicenseID": "f6a0529813f74d119982eb4fe43a9a24"


ImmutableList<valueType> - 指定された valueType の値を格納する不変コレクション(リスト)です。 JSON では、指定された valueType の要素の配列として定義されています。 ASFは、特定のプロパティが複数の値をサポートしており、その注文が関連性がある可能性があることを示すために、 List を使用しています。

ImmutableList<byte>: "FarmingOrders": [15, 11, 7]


ImmutableHashSet<valueType> - 指定された valueType の一意な値を格納する不変コレクション(セット)です。 JSON では、指定された valueType の要素の配列として定義されています。 ASFは HashSet を使用して、与えられたプロパティが一意の値に対してのみ意味があり、その順序が問題ではないことを示しています。 したがって、パース中に潜在的な重複を意図的に無視します(いずれにせよ、それらを供給する場合)。

ImmutableHashSet<uint>: "Blacklist": [267420, 303700, 335590]


ImmutableDictionary<keyType, valueType> - 不変ディクショナリ(マップ)。keyType で指定された一意のキーを、valueType で指定された値に対応付けます。 JSON では、キーと値のペアを持つオブジェクトとして定義されています。 keyType は ulong のような値の型であっても、この場合は常に引用されます。マップ全体でキーがユニークであるという厳密な要件もありますが、今回は JSON によっても強制されます。

ImmutableDictionary<ulong, byte>: "SteamUserPermissions": { "76561198174813138": 3, "76561198174813137": 1 }


flags - Flags 属性はビット演算を適用することにより、複数の異なるプロパティを 1 つの最終値に結合します。これにより、さまざまな異なる許可された値の任意の組み合わせを同時に選択することができます。最終的な値は、有効化されたすべてのオプションの値の合計として構成されます。

例えば、次の定義を指定します。

値 名前
0 無し
1 A
2 B
4 C

オン/オフを切り替えられる意味のある利用可能なフラグは正確に 3 つ(A、B、C)あり、そのため有効な組み合わせは全体で 8 通りあります:

最終値 有効なフラグ
0 無し
1 A
2 B
3 `` + B
4 C
5 `` + C
6 B + C
7 `` + B + `C`

定義によれば、上記のことを可能にするためには、各スタンドアロンフラグが2の力でなければなりません。このため、上記の例では、 Dの追加フラグは、 8 以上の値を格納する必要があります。

通常、グラフィカルツールが計算を行います。手動で設定を編集している場合 上記の例のように、いつでもcalculatorを使用して、有効にしたいすべてのフラグの基礎となる値を単純に加えることができます。

例:"SteamProtocols": 7(上記で説明したように、値が 1、2、4 のフラグを有効にします)


互換性マッピング

Web Config Generator を使用する際、JavaScript の制限により、単純な ulong フィールドを JSON で適切にシリアライズできないため、生成される設定では ulong フィールドが s_ プレフィックス付きの文字列として出力されます。これには、例えば、 "SteamOwnerID": 76561198006963719 が含まれており、ConfigGenerator で "s_SteamOwnerID": "76561198006963719". ASFにはこの文字列マッピングを自動的に処理するための適切なロジックが含まれているため、設定内の s_ エントリは実際に有効で正しく生成されます。自分で設定を生成している場合は、可能であれば元の ulong フィールドのままにすることをおすすめします。ただし、それができない場合は、この方式に従い、名前に s_ プレフィックスを追加した文字列としてエンコードすることもできます。最終的にはこのJavaScriptの制限を解決したいと考えています。


設定互換性

ASFが古い設定と互換性を保つことは、最優先事項です。既に知っておくべきですが、不足している設定プロパティは、それらが デフォルト値 で定義されるのと同じ扱いを受けます。そのため、ASF の新しいバージョンで新しい設定プロパティが導入された場合でも、すべての設定は新しいバージョンと互換性を保ち、ASF はその新しい設定プロパティがデフォルト値で定義されているものとして扱います。必要に応じて設定プロパティを追加、削除、編集することができます。

定義する設定プロパティは、変更したいものだけに限定することをおすすめします。そうすることで、その他すべてのプロパティは自動的にデフォルト値を継承できます。設定をすっきり保てるだけでなく、自分で明示的に設定したくないプロパティ(例:WebLimiterDelay)のデフォルト値を私たちが変更した場合にも、互換性が高まります。

このため、ASFは設定を再フォーマットし、デフォルト値を保持するフィールドを削除することで、自動的に設定を移行/最適化します。特定の理由がある場合は、--no-config-migrate **コマンドライン引数**を使用して、この挙動を無効にできます。たとえば、読み取り専用の設定ファイルを提供しており、ASF に変更させたくない場合などです。


自動再読み込み

ASFは「オンザフライ」で変更されていることを認識しています - そのおかげで、ASFは自動的に次のようになります:

  • 設定を作成するときに、新しいボットインスタンスを作成(必要に応じて開始)します。
  • 設定を削除すると、古いボットインスタンスを停止して削除します
  • ボットの設定を編集するときは、ボットインスタンスを停止(必要に応じて開始)してください
  • 設定の名前を変更すると、新しい名前でBotを再起動します(必要な場合)。

上記のすべてが透過的で、プログラムを再起動したり、他の(影響を受けない)ボットインスタンスを消去したりすることなく、自動的に行われます。

それに加えて、ASFはコア ASF ASF.json 設定を変更した場合( AutoRestart 許可されている場合)も再起動します。同様に、プログラムを削除または名前を変更すると終了します。

特定の理由がある場合は、--no-config-watch **コマンドライン引数**を使用して、この動作を無効にできます。たとえば、ASF に config フォルダー内のファイル変更へ反応してほしくない場合などです。

Clone this wiki locally