Su_cstrakmのヒント置き場

答えはないけどヒントならあります

Stardew Valley - アニメーションキャンセルをやってみるには(2025年版)

アニメーションキャンセルとは

アニメーションキャンセル(Animation Canceling, AC)とはStardew Valleyで使える高等なテクニックで、特定のキーを同時押しすることでプレイヤーの動作アニメーションを強制的にキャンセルさせることができます。

RTAではこれを利用してプレイヤーが斧やツルハシを振るなどといった動作を途中でキャンセルし、爆速で木や岩を破壊していきます。

操作説明には当然のごとく記載されていないため、おそらくデバッグコマンドとして用意されたものだろうと思われます。

アニメーションキャンセルの操作方法

R + 右Shift + Deleteキーを同時押しすることでアニメーションキャンセルが発動しますが、この操作方法から分かる通りPC版限定のテクニックです。
しかし普通はこれら3つのキーを片手で同時押しすることは不可能なため、キーボードのキーの割り当てを変更してアニメーションキャンセルを実現しています。

AutoHotKey(https://www.autohotkey.com/)を用いることでキーボードのキーの割り当てを簡単に変更することが出来ます。
AutoHotkeyをインストール後、メモ帳に以下のようなテキストを書き、拡張子を「.ahk」にして保存します 。

SetTitleMatchMode, RegEx
#IfWinActive ahk_exe Stardew Valley
    Space::
    SendInput {Del down}{RShift down}{r down}
    KeyWait, space
    SendInput {Del up}{RShift up}{r up}
    return

AutoHotKey v2をお使いの場合はこちらを使います。

#Requires AutoHotkey v2.0
SetTitleMatchMode "RegEx"
#HotIf WinActive("ahk_exe Stardew Valley")
Space::{
    Send "{Del down}{RShift down}{r down}"
    KeyWait "space"
    Send "{Del up}{RShift up}{r up}"
    return
}

このスクリプトを起動しておくと、Stardew Valleyのプレイ中のみキー割当が変更されます。

また、上の例のように1つのキーに3つのキーを割り当てるのではなく、それぞれのキーを独立した3つの別のキーに割り当てるスクリプトなどもありますが、「Stardew Valley Speedruns」Discordサーバーで詳しく紹介されていますのでそちらも参照してみてください。

アニメーションキャンセルを上手に扱うには

キー割り当ての変更ができたからと言って、すぐにアニメーションキャンセルができるようになるというわけではありません。ある程度練習してコツを掴まないうちは、全くといっていいほどできないはずです。

例えばアニメーションキャンセルで木を高速に切り倒す場合、左クリックで振った斧が木に当たった直後にアニメーションキャンセルを発動させる必要があります。
左クリックをし、少し間を置いてからSpaceキーを押してアニメーションキャンセルを発動させます。 このときアニメーションキャンセルのタイミングが遅いとタイム短縮効果が十分に得られず、逆に早すぎると斧が木にヒットする判定の前にキャンセルされてしまい無意味な行動と化します。

最適なタイミングでアニメーションキャンセルをするためにはひたすら練習あるのみですが、AnimationCancel Practice Modというアニメーションキャンセルの練習専用modというものもあります。
このmodを導入するとアニメーションキャンセルを実行するタイミングが視覚的に表現されるようになります(※RTAでは全てのmodは禁止のためあくまで練習用)。

ちなみに斧などの道具は、縦方向から使う場合と横方向から使う場合とではアニメーションの速さが異なり、最適なアニメーションキャンセルのタイミングも僅かにずれます(横からのほうが速い)。

アニメションキャンセル応用編

アニメーションキャンセルを利用した他のテクニックを紹介します。

高速拾い上げ

採取アイテムを拾うときに、カマまたは武器にスロットを合わせた状態でSpaceキーを押したまま右クリック→左クリックとずらし押しをすることで、拾って頭上に掲げるモーションをキャンセルすることが出来ます。

カットシーン離脱

バンドルを完成させたときなどのカットシーン中にアニメーションキャンセルを実行することで、カットシーン中でも自由に移動することが出来るようになります。
ただしカットシーン中にエリア移動などをするとタイミングによっては音声がバグったりソフトロックする可能性もあるので気をつけましょう。

0歩移動

Stardew Valleyでは移動した際に足音が鳴ったタイミングで歩数がカウントされます。
道具にスロット合わせSpaceキーを押したまま左クリックを連打して歩くことで、次の足音が鳴るまでの移動距離をリセットし、歩数のカウントを増やさずに移動することが出来ます。
このテクニックはシード値固定カテゴリのRTAで天候の調整をするために用いられます(シード値と累積歩数で天気が決まる)。

SAMMIを使ってTwitchのチャンネルポイントで動くガチャを実装してみよう!

※情報が古くなっていたので記事を修正&強化しました。(2026/01/16)

~SAMMI導入編~
SAMMIを使い倒してTwitch配信をおもろくしてみる ~導入編~ - Su_cstrakmのヒント置き場

今回はSAMMIで、Twitchのチャンネルポイントで引き換えられるガチャを実装する方法を紹介します。
簡単なものから手の込んだものまで紹介しますので参考にしてみてください。

 

チャットに表示される等確率のおみくじを作る

チャンネルポイントを引き換えると、「大吉」、「吉」、「中吉」、「小吉」、「凶」のいずれかがチャットに表示されるおみくじを作っていきましょう。

下準備としてはじめに、SAMMIにDeckを作成しましょう。
Deckというのは色々なアクションを起こすためのボタンを作るためのページです。仮想的なStream Deckみたいなものだと思ってください。
「+」と書かれたボタンを押し、「AddNew Deck」を選択すると新規Deckが作成できます。

作成したDeckをダブルクリックし、左上の「Name」に名前を設定します。
今回は「Sample」という名前にしました。

グリッド上の適当な場所をクリックしてから「Create Button」を選択すると、新しくボタンが作成されます。

ボタンの名前や色はボタンの上で右クリック→「Edit Appearance」から設定できます。
今回は「Omikuji1」という名前にしました。

 

それではおみくじの設定をやってみましょう。
今回は結果が5種類しかないおみくじですので、乱数発生結果をSwitch文で分岐させる方法をとりたいと思います。

作成したボタンをダブルクリックすると、ボタンを実行した際の挙動を編集する画面が表示されます。

まず画面中央の大きな四角形の領域の上側にある(+)を押し、「Numbers, Text & Variables」→ 「Random」のコマンドを選択しましょう。
Randomコマンドは乱数を発生させるためのコマンドです。ガチャを作るうえでの一番の基礎要素となりますね。

「Variable Name(変数名)」に適当な変数名(今回は「r」とします)をつけ、「Minimum Value Allowed(最小値)」に0、「Maximum Value Allowed(最大値)」に4を設定します。(「Allow Float」にはチェックを入れません)
これで0, 1, 2, 3, 4の5つの整数のいずれかが乱数として発生するようになります。
そして発生した乱数がVariable Nameで設定した名前の変数に格納されます。

次に、(+)を押して「Numbers, Text & Variables」→ 「Switch Statement」のコマンドを選択しましょう。

「Value」に条件分岐の元となる値を設定します。今はRandomコマンドで発生させた乱数によって条件を分岐させたいので、Randomコマンドの結果を格納している変数名「r」と入力しましょう。

ここから先は各条件を設定していきます。
「Switch Statement」コマンドのSwitch Statementと書かれた下の辺り(細い横方向の黒線の下側)にマウスカーソルを合わせると、コマンド追加のメニューが表示されるので、その中にある(+)を押しましょう。

そこから「Numbers, Text & Variables」→ 「Case Statement」のコマンドを選択します。

このCase Statementを5個分用意しましょう。
もし間違った箇所にコマンドを配置してしまったら、コマンド左上隅にある十字の矢印マークをドラッグすることでコマンドを移動できます。

rが0の場合、1の場合、2の場合……というようにしたいので、各Case Statementの「Text (Inserts not allowed)」に、0, 1, 2, 3, 4をそれぞれ入力しましょう。

それでは実際の挙動を設定していきます。
まず、0だった場合はチャット欄に「大吉」を出力するようにしてみたいと思います。
Case Statementと書かれた下側にマウスカーソルを合わせて、そこに出てきた(+)を押して、「Twitch Commands」→「Twitch: Send Chat Message」を追加します。
「Chat Message」に「大吉」と書いておいて、Channelにはチャットメッセージを送信するチャンネルを選択します。

同様に残り4つのCase Statementに対してもTwitch: Send Chat Messageを追加して、吉・中吉・小吉・凶を設定しましょう。

これでコマンドの編集は完了です。
実際に動くかどうかテストするには、編集画面下側の「Run」をクリックします。

実行してみると、チャット欄におみくじの結果が書き込まれました。

 

一旦コマンドの設定ができたので、このボタンが動作するためのトリガーを設定しましょう。
編集画面で「Save」を押して保存してから、「Ok」を押してボタン配置画面に戻ります。
ボタンを右クリックし、「Edit Triggers」を選択します。

トリガー編集画面の(+)を押し、「Twitch Channel Point Redemption」を選択します。

「Redemption Name」の右側の▼を押して、トリガーにしたいチャンネルポイントを選択します(ここでは「おみくじテスト」としました)。
もし見つからない場合は、「Load From Twitch API」ボタンを押して、設定されているチャンネルポイントを読み込みなおしてみてください。

最後に「Save」を押したら完了です。

これで、設定したチャンネルポイントを引き換えてみるとおみくじがチャットに表示されるようになります。

 

おみくじの結果を配信画面に表示する

ここまではチャットに結果を出力する方法を紹介しましたが、SAMMIなら配信画面上にもテキストや画像といった形で表示させることもできます。
それでは、上で説明してきたOmijkuji1ボタンを改造して、配信画面上にもおみくじの結果が出るようにしてみたいと思います。

まずはOBSの設定です。
おみくじ結果用テキストを表示させるための新しいシーンを用意します。
ここでは、シーン名を「おみくじテスト」、テキストソース名を「おみくじ」としました。

次にSAMMIの方に戻って、Omijkuji1ボタンのコマンド編集画面に移ります。
各Case StatementにOBS操作用のコマンドを追加してみましょう。
「Twitch: Send Chat Message」コマンドの下に、「OBS Commands」→「Source Change Text (GDI+)」と選択して追加します。
「Source Name」には「おみくじテスト」→「おみくじ」と選択し、「Text」には「大吉」と書いておきます。

他4つ、吉・中吉・小吉・凶についても同様に設定しましょう。

一旦これで「Run」ボタンを押してテストしてみます。 すると…… OBSのテキストソースが変更されておみくじの結果が表示されましたが、表示されたまま消えてくれません。

時間が経ったらテキストが消えてくれるような設定を追加してみましょう。
コマンドの一番下に「OBS Commands」→「Source Change Text (GDI+)」と選択して追加します。
「Source Name」には「おみくじテスト」→「おみくじ」と選択し、「Text」は空欄にします。そして、「Delay (ms)」の値を「5000」にしてみましょう。

この「Delay (ms)」はボタンが実行されてからそのコマンドが実行されるまでの待ち時間で、「5000」と設定すればボタン実行から5秒後にそのコマンドが実行されます。
いま追加したコマンドでは、ボタンを押してから5秒後に「おみくじテスト」シーンの「おみくじ」ソースのテキスト内容を空欄にする動作になっているため、全体として見ると5秒間だけおみくじの結果が配信画面上に表示されることになります。
実際に「Run」を押してテストしてみると、5秒間だけテキストソースのテキスト内容が切り替わることが分かると思います。

この状態でも完成といえば完成なのですが、まだ一つ問題があります。
チャンネルポイントを短い間隔で連続して引き換えた場合、最初のおみくじ表示が終わる前までに引き換えられたものは空振りとなってしまう点です。 (勿論、この挙動のままでいいのであればこのままでもOKです。)
引き換えられた分をちゃんと結果表示したい場合には、ボタン配置画面でボタンを右クリックし「Edit Settings」を選択します。
これの「Allow Queue」を「ON」にし、ボタン配置画面を保存すると最初のおみくじを待ってから次のおみくじ結果が表示されるようになります。

 

おみくじの結果を画像として配信画面に表示する

テキストで配信画面上に結果表示できるようになりましたが、今度はこれをテキストではなく画像で表示するようにしてみましょう。

OBSの「おみくじテスト」シーン内の「おみくじ」テキストソースは一旦削除するか非表示にし、新たに「おみくじ画像」という名前の空の画像ソースを追加してみます。
別途おみくじ用の画像5種は適当に用意しておきます。

SAMMIの方に移り、Omikuji1ボタンのコマンド編集を開きます。
Case Statementの中にある「Source Change Text (GDI+)」を、「OBS Commands」の「Source Change Settings」に変更します。
「Source Name」には「おみくじテスト」→「おみくじ画像」と選択し、
「Settings (JSON)」には{"file":"(表示させたい画像のパス)"}と記述します。
※パスの区切りはバックスラッシュ\ではなくスラッシュ/にしてください。

コマンドの一番下にある「Source Change Text (GDI+)」も削除して、「OBS Commands」の「Source Change Visibility」を2つ配置します。
それぞれ「Scene Name」は「おみくじテスト」を選択し、「Source Name」は「おみくじ画像」を選択します。
上側のSource Change Visibilityにだけ「Visible」にチェックを入れます。
下側のSource Change Visibilityは「Delay」を「5000」に設定します。
これで、ボタンが実行されたときに画像ソースを表示状態にし、5秒後に非表示状態にするという挙動になります。

 

確率に偏りがあるおみくじを作る

ここまでで作ってきたおみくじは「大吉」、「吉」、「中吉」、「小吉」、「凶」がそれぞれ等しい確率でした。
しかし、ここで低確率で「大凶」が出るようにしたい気持ちになってきました。なりなさい。
というわけでOmikuji1とは別の、確率に偏りがあるおみくじを作っていきます。

まず、確率分布は以下のようにしてみたいと思います。

  • 大吉:19 %
  • 吉 :20 %
  • 中吉:20 %
  • 小吉:20 %
  • 凶 :20 %
  • 大凶:1 %

そして今回はOmikuji1とは大きくコマンドの構造が異なるため、新規に「Omikuji2」ボタンを作成しましょう。

Omikuji1と同様に、コマンドの最初にはRandomコマンドを配置します。
ただしOmikuji2では「Max Value Allowed」を「99」にします。

その下には「Numbers, Text & Variables」→ 「If Statement」のコマンドを選択しましょう。
If Statementの「Value(左側)」には「r」を、「Compare」は「>=」を選択し、「Value(右側)」には81と入力します。
(勿論、「Compare」は「>」を選択し、「Value(右側)」には80と入力してもOKです。)
If Statementの内部には、Omikuji1と同様の「Twitch: Send Chat Message」コマンドと「Source Change Settings」コマンドを配置しておきましょう。

いま配置したコマンドの下側に「Else」と書かれていますが、その中に大吉でなかった場合の条件分岐を入れ子のように配置していきます。

※SAMMIではElseIfにあたるものが無く、Elseの中にIf Statementを入れ、さらにそのElseの中にIf Statementを入れ……という多重にネストさせる方法しか取れません。

最初のIf StatementのElse内に新しいIf Statementを配置し、条件が r >= 61 となるように設定します。
その内部に吉用の「Twitch: Send Chat Message」コマンドと「Source Change Settings」コマンドを配置します。
これを繰り返して中吉、小吉、凶のコマンドを入れ子のように追加していきます。
中吉の条件式は r >= 41、小吉の条件式は r >= 21、凶の条件式はr >= 1ですね。
最後に凶のElseの中に「Twitch: Send Chat Message」コマンドと「Source Change Settings」コマンドを配置して、大凶用の設定をすればOKです。
rが0のとき、大吉、吉、中吉、小吉、凶の条件のどれにも該当しないので、凶のElseの中に設定すればいいわけですね。
以下の図のようになっていたら正解です。

最後にOmikuji1と同様に「OBS Commands」の「Source Change Visibility」を2つ配置します。 それぞれ「Scene Name」は「おみくじテスト」を選択し、「Source Name」は「おみくじ画像」を選択します。
上側のSource Change Visibilityにだけ「Visible」にチェックを入れます。
下側のSource Change Visibilityは「Delay」を「5000」に設定します。

「Run」を押してテストしてみて、思った通りに動いているか確認してみてください。

 

おまけ:特殊な10連ガチャを作る

……と言いたいところですが、その前に少し「Stardew Valley」というゲームについて紹介させてください。
Stardew Valleyとは、牧場物語ライクのいわゆるスローライフ系のゲームです。
このゲーム中では特定の曜日になると行商人のカートがやって来て、ランダムな10種類のアイテムを販売するというものがあります。
今回はこの行商人のカートを再現した10連ガチャを作成していきましょう。
※ここで紹介するコマンドは、実際のゲームのプログラムをほぼそのまま再現したものとなっています。10連ガチャの実装としては少々特殊ですので、あくまで作り方の一例として捉えてください。
 
行商人のカートの特徴を簡単に説明すると、

  • 10連ガチャである
  • 各アイテムの出現率に偏りがある
  • アイテムに被りがない

となりまして、このような性質をもつガチャを作ることが今回の目標です。
 
まずは行商人のカートで売られる可能性のあるアイテムのデータを用意しますが、アイテムは何百種類とあるのでSwitch文を書くのは現実的ではありません。
SAMMIではiniファイルの操作ができますので、アイテムのデータを記述しておいたiniファイルを作成し、そこからデータを取得するようにしましょう。

 
画像では一部しか表示していませんが、実際にはこれが何百行と続いています。
セクション名([ ]で囲った部分)は「items」とし、キー(=の左側)をアイテムID、値(=の右側)を" "で囲ったアイテム名とします。
ファイル名は「cartitems.ini」としておき、SAMMIのexeと同じ場所に保存しておきましょう。
(IDが飛び飛びの値なのは、実際にゲーム中でもそうなっています。また各々実装する際には好きなようにIDとアイテムを設定してください。)
 
続いていつものようにSAMMIのDeckに新規ボタンを作成し、ボタンの上で右クリック→「Edit Init Variables」を選択します。

Edit Init Variablesでは、JSON形式で変数の初期化を行えます。
最初に「seenitems」という名前の配列を空の状態で作っておきたいので、

{
"seenitems":[]
}

と記述して保存しておきます。
チャンネルポイントをトリガーにしたいので、いつものように「Edit Triggers」から「Twitch Channel Points」トリガーを選択して、トリガーにしたいチャンネルポイントを設定しましょう。
 
それではコマンドの作成に入っていきましょう。
今回は長いので、先にガチャの本体部分から完成品を紹介します。
(実際は画像で表示した部分より下にもコマンドが続いています。)

 
最初の「Array Clear」コマンドで、seenitemsの中身を消去しています。
コマンド実行後でもSAMMI自体が初期化されるまでは配列の中身が保持されるため、このような処理を最初に持ってきています。
seenitems自体は抽選されたアイテム名を順次保持していくのに使用します。
 
次の「Repeat」コマンドはループ処理(有限回)を行うためのもので、「Repeat Amount」に繰り返し回数を設定します。
10回アイテムの抽選を行うので、回数を10としています。
 
Repeatコマンドの中にRandomコマンドを設定し、変数名を「id」、最小値を2、最大値を790としておきます。
整数値がほしいのでAllow Floatにはチェックを入れません。
(数値はあくまでゲーム内で使用されているものなので、各々実装する際にはアイテムIDに応じて適切な値にしてください。)
 
続いてもう一つRepeatコマンドを設定します。
どうもSAMMIでは無限ループが設定できないみたいなので、Repeat Amountを200(十分大きな値)に設定しています。
このRepeatコマンドの中に、さらにコマンドを設定していきます。
 
「Set Local Variable」コマンドを2つ設定します。
1つ目は「Variable Name」を「id」、「Operation」を「+=」、「Variable/Number/’String’」を1にします。(idに1を加算する)
2つ目は「Variable Name」を「id」、「Operation」を「mod」、「Variable/Number/’String’」を790にします。(idを790で割った余りにする、要は値が790以上にならないようにするための処理)
 
続いて「INI: Key Exists」コマンドで、iniファイルの中に該当するキーが存在するかのチェックを行います。
「File Name」をcartitems.iniのパス、「Section」を「items」、「Key」を「/$id$/」、「Save Variable As」を「check」としておきましょう。
もし該当するキーが存在していたらcheckの中身は1になっているので、その次に「If Statement」コマンドを、 「If check == 1」となるように設定しておきます。
 
If文の中身は、条件が真である場合だけを作成しておきます。(Elseの方は空欄で)
If Statementコマンドの中に「File: Load Text」コマンドを作成し、「File Name」を「cartitems」、「Section」を「items」、「Key」を「/$id$/」、「Save Variable As」を「itemname」としておきます。
これで該当するIDのアイテム名をiniファイルから取得できました。
 
ところで、行商人のカートはアイテムのダブりがありませんので、既にアイテムが抽選されているかをチェックしないといけません。
「Array Find Value」コマンドを続いて設定し、「Array Name」を「seenitems」、「Save Array Position As」を「pos」、「Find Value」を「itemname」とします。
seenitems配列の何番目にitemnameがあるかを調べ、その位置をposに格納しています。
もし配列内に同名のアイテムが無ければ、posの値は-1となります。
 
さらにIf Statementコマンドを、「If pos == -1」となるように設定します。 (つまり、既に配列内に同名のアイテムがあるなら偽となる) そのIf Statementコマンドの中に「Array Insert」コマンドを、「Array Name」が「seenitems」、「Insert Position」が「top」、「Value To insert」が「itemname」となるように設定します。
このコマンドでseenitems配列の一番上にitemnameが追加されます。
 
アイテムを追加したらRepeat(200回ループの方)を抜けたいので、「Break」コマンドを設定します。
Breakするための条件設定ができるのですが、必ず抜け出したいので「If 1 == 1」とでもしておきましょう。
IDが無かったりアイテムが既に抽選されてたりする場合は、またSet Local Variableコマンドまで処理が戻るのでidが1ずつ加算されていく処理となります。

 

ガチャ本体の処理から先は、結果をOBS上に表示する処理となっています。
「Source Change Text (GDI+)」コマンドで、テキストソースにガチャの結果を書き出しています。
「/$seenitems[(番号)]$/」と書けば、配列の特定の番号のところの値を書き出すことができます。
そこから下はOBSソース切り替えの話なので割愛します。
 

実際にチャンネルポイントを引き換えてガチャを回してみたらこんな風になります。
うちのTwitchチャンネルで行商人のカートを体験してみようね!

https://www.twitch.tv/su_cstrakm www.twitch.tv

LioranBoard 2を使い倒してTwitch配信をおもろくしてみる ~レイド通知を作ろう編~

~導入編~
LioranBoard 2を使い倒してTwitch配信をおもろくしてみる ~導入編~ - Su_cstrakmのヒント置き場

~OBSのソース切り替え編~
LioranBoard 2を使い倒してTwitch配信をおもろくしてみる ~OBSのソースの切り替え編~ - Su_cstrakmのヒント置き場

今回はLioranBoard 2で、Twitchのレイドが来たときに配信画面上に通知をのせる方法を紹介します。
この記事を参考にして君だけのオリジナルレイド通知を作ろう!

レイドしてきた相手の情報を取得する

Twitchのレイド通知を作るためには、まずレイド元の情報を取得することが必要です。
今回の記事では以下の3つを紹介します。

  • レイドしてきた相手の名前を取得する方法
  • レイドしてきた相手のユーザーIDを取得する方法
  • レイドしてきた相手のチャンネル情報を取得する方法

LioranBoard 2のDeckに新規ボタンを作成して、ボタンの上で右クリック→「Edit Triggers」を選択しましょう。
トリガーとして「Twitch Raid」を選択すると、Twitchレイドのトリガーが追加されます。
レイド人数の最小値と最大値を設定する欄がありますが、特にこだわりが無ければ最小値は1、最大値は十分大きな数にしておきましょう。

続いてボタンの上で右クリック→「Edit Commands」を選択し、コマンド編集画面を出します。
「Trigger Pull Data」コマンドを追加し、右側の「Pull Value」のテキストボックス横の[≡]を押すと、トリガー別の取得可能データ一覧が表示されます。
 
「user_name」と「display_name」はどちらも相手の名前ですが、user_nameは半角英数での名前でdisplay_nameは日本語などを含めた方の名前です。
今回はdisplay_nameの方を使いましょう。
「user_id」は相手のユーザーIDです。これ自体は通知として表示しませんが、レイドしてきた相手のゲーム情報を取得するのに使います。
左側の「Save Variable As」テキストボックスには、取得したデータを格納する変数名を設定します。
 
レイドしてきた相手のチャンネル情報は、レイドトリガーから直接取得できないので別のコマンドを使います。
「Twitch: Get Cannel Info」コマンドを追加し、「User ID」のテキストボックスに/$(ユーザーIDを格納した変数名)$/と入力しましょう。
白背景のテキストボックスに変数の値を入力する場合は、/$ と $/で変数名を囲みます。
囲まない場合は単なる文字列として扱われてしまいますので注意しましょう。
右側の「Save Variable As」テキストボックスにはチャンネル情報を格納する変数名を設定しましょう。

レイド通知を作ろう!

ここからは取得した情報を元にレイド通知を実際に作っていきます。
今回紹介する例では下準備としてOBSにレイド通知用のメディアソースとテキストを用意しています。
それでは完成したものを先に紹介しておきましょう。

上からコマンドを説明していきますと、以下のようになります。

  1. レイドトリガーからユーザー名を取得
  2. レイドトリガーからユーザーIDを取得
  3. ユーザーIDをもとにチャンネル情報を取得
  4. OBSのレイド通知用動画ソースを表示(レイドから来てくれた人も通知を見られるようにDelayをかけてます)
  5. 清香ちゃん(通常アニメーション)を非表示
  6. 動画の途中のタイミングでお礼メッセージをテキストソースに設定
  7. お礼メッセージ用のテキストソースを表示
  8. 動画が終わったタイミングで清香ちゃん(通常アニメーション)を表示
  9. レイド通知用動画ソースを非表示
  10. お礼メッセージ用のテキストソースを非表示
  11. チャットにお礼とレイドしてきた人がやっていたゲーム名を表示

基本としてはOBSのソース切り替えがメインですので、要点だけかいつまんで解説します。
 
レイドしてくれた人の名前をOBS上に表示するために、「Source Change Text (GDI+)」コマンドを使っています。
このコマンドでテキストソースのテキストを設定できますが、ユーザー名を表示するために変数名を/$と$/で囲んでいます。
 
さらにチャット上に相手がやっていたゲーム名メッセージを表示させるために、「Twitch: Send Chat Message」コマンドも使っています。
このコマンドの「Chat Message」にはメッセージの中身を、「Channel Name」にはチャットを書き込むチャンネル名を入力します。
(チャットを書き込むアカウントはLioran Board 2の最初の画面下側の「Twitch Connections」を開き、書き込みたいアカウントの「Join chat under this name」をオンにします)
相手がやっていたゲーム名は、(チャンネル情報の変数名).game_nameで取得できます。
これを、/$(チャンネル情報の変数名).game_name$/と囲むことでゲーム名を表示させています。
 
こうすることでレイドが来たときに清香ちゃんが陽気に踊りだすわけですね。
実際にどんな挙動をするのかは是非とも私のTwitchチャンネルに遊びに来て確認してみてください! よろしくね!

https://www.twitch.tv/su_cstrakm www.twitch.tv

LioranBoard 2を使い倒してTwitch配信をおもろくしてみる ~OBSのソースの切り替え編~

※導入編はこちらを見てくれい!
sucstrakm.hatenablog.com LioranBoard 2の使い方の初歩として、OBSのソースを切り替える方法を紹介していきます。

清香ちゃん

突然ですが、うちの子を紹介したいと思います。

清香ちゃんです。私のTwitch配信のマスコットキャラクター兼アシスタントです。
残念ながらVTuber的なものではないですが、よろしくお願いします。

ふだんは配信画面の隅の方で単純なアニメーションを繰り返しているだけの彼女ですが、チャンネルポイントを引き換えるとこちらに向かって手を振ってくれたり、レイドが来ると陽気に踊りだしたりします。
これがどのようなカラクリになっているのか説明していきましょう。

チャンネルポイントでOBSのソースを切り替える

チャンネルポイントを引き換えると清香ちゃんがこちらに向かって手を振ってくれる仕組みを作りましょう。
下準備として、OBSには平常時の清香ちゃんのgifアニメーションと挨拶のときのgifアニメーションの2つをソースとして用意し、同じ位置に配置しておきます。
デフォルトでは平常時のgifをオンにし、挨拶時のgifをオフにしておきます。

はじめに、LioranBoard 2にDeckを作成しましょう。
Deckというのは色々なアクションを起こすためのボタンを作るためのページです。仮想的なStream Deckみたいなものだと思ってください。
「+」と書かれたボタンを押し、「Create New Deck」を選択すると新規Deckが作成できます。

作成したDeckをダブルクリックし、グリッド上の適当な場所をクリックしてから「Create Button」を選択すると、新しくボタンが作成されます。 ボタンの名前や色はボタンの上で右クリック→「Edit Appearance」から設定できます。

ボタンの上で右クリック→「Edit Triggers」を選択すると、トリガーの編集画面が出ます。
(+)を押し、トリガーとして「Twitch Channel Points」を選択すると新しいトリガーが追加されます。
「Load From Twitch API」を押してからRedemption Name欄横の[≡]を押すと、現在設定されているチャンネルポイントの一覧が表示されるので、トリガーにしたいものを選択します。

今度はボタンの上で右クリック→「Edit Commands」を選択すると、実行時の挙動の編集画面が出ます。
まず(+)を押し、「OBS Commands」→ 「Source Change Visibility」のコマンドを選択しましよう。

Scene NameにOBSのシーン名を、Source Nameにソース名を[≡]から選んで設定し、Visibleにチェックを入れましょう。
ソースの切り替えはたったこれだけで出来てしまうんです!

しかしこの設定では単に挨拶用のソースを表示しただけですね。
平常時のアニメーションと重なってしまうし、挨拶が終わった後もソースが表示されたままにもなってしまいます。
綺麗にアニメーションが切り替わるようにもう少し手を加えてみましょう。
︙
︙
 
 


最終的に出来上がったコマンドが上の通りです。
上から順に見ていくと、コマンド番号0で挨拶用アニメーションのソースを表示し、番号1で平常時アニメーションを非表示にしています。
番号1ではVisibleにチェックが入っていないのでソースが非表示となります。
またDelay(ms)がどちらも0なので、上2つのコマンドはトリガーが発動した際に同時かつ即時に実行されます。
こうすることで自然とアニメーションが変化したかのように見えるわけですね。

ちなみに真ん中の「Play Sound Effect」コマンドでは、その名の通り効果音を鳴らしています。
チャンネルポイントが引き換えられたのを分かりやすくするためのものなので、これは任意です。
なお使用可能な音声ファイルはOGGのみなので気をつけてください。

そして番号3では挨拶用アニメーションのソースを非表示にし、番号4で平常時アニメーションを表示にすることで元の状態に戻します。
それぞれDelayを3000msにしているので、最初のソース切り替えから3秒経って実行されることになります。
 

ところで実際にどんな挙動をするのか見てみたくありませんか?
それは是非とも私のTwitchチャンネルに遊びに来て確認してみてください! よろしくね!

https://www.twitch.tv/su_cstrakm www.twitch.tv

SAMMIを使い倒してTwitch配信をおもろくしてみる ~導入編~

※情報が古くなっていたので記事を修正&強化しました。(2026/01/16)

意外とSAMMIの取り扱い方の記事が需要ありそうなので書いてみます。

SAMMIって何ぞや?

Twitchでのコメントやチャンネルポイント、フォローやレイドといったものをトリガーにして、OBSを制御することができるツールです。
扱いに慣れるのは少し難しく基礎的なプログラミングの知識も必要ですが、使いこなせると色々と遊べます。

まずはダウンロードから

https://github.com/SAMMISolutions/SAMMI-Official
こちらから最新版が手に入ります。


こっから行って…


これや!

SAMMIはインストーラーでインストールするものではないので、このまま適当な場所でzipファイルを展開すればOKです。

最初の設定

OBSとの接続

OBSの「ツール」→「WebSocket サーバー設定」で、以下のように設定します。

  • 「WebSocketサーバーを有効にする」にチェックを入れる
  • サーバーポート:4455
  • 「認証を有効にする」のチェックを外す

続いてSAMMIを起動し、下側にある「OBS Connections」を開きます。

Protocolが「OBSws5」、Portが「4455」になっていることを確認し、「Connect」ボタンを押します。
メイン画面左下の、「Main OBS」のランプが緑色になっていればOKです。
また、「Auto Connect」にチェックを入れておくと、起動時にOBSと自動接続するようになります。
最後に右下の「Save and Close」を押せば完了です。

Twitchとの接続

SAMMIメイン画面の下側にある「Twitch Connections」を開き、大きく「+」と書かれた部分をクリックします。

Twitchにログイン済みの状態であれば、Twicthの権限確認画面が出るのでそれを許可します。(ログインしていない場合はログイン画面がまず表示されます。)

すると、Twitch Connectionsの画面に追加されたTwitchアカウントが表示されます。

ちなみに、追加したTwitchアカウントのところの「Expire on: ~」の表示はトークンの有効期限ですので、 期限が切れた場合はTwitchアカウントのところの右上の×を押して一旦削除してから、もう一度アカウントを追加しなおしましょう。

~ここはちょっと応用編~
チャットボット用のTwitchアカウントを持っていて、Twitch側のアクションはメインのアカウントで取得したいけどチャットへの書き込みはBot用のアカウントでやりたいという場合もあるかと思います。
SAMMIでは複数アカウントを接続できるので、Bot用などのアカウントがあれば一旦そのアカウントでTwitchにログインしてから、同様の手順でアカウントを追加できます。

私の場合はメインのアカウントとBot用アカウントの2つを入れ、メインアカウントを設定画面上側の「Receive Event As」に設定、Bot側(名前が□□□□□となってるやつ、日本語が表示されないので…)を設定画面上側の「Send Message As」に設定することで、各トリガーに応じて自動でBotがチャット応答するなどの仕組みを作っています。

最後に右下の「Done」を押したら完了です。
また左下の「Auto Connect to Twitch」にチェックを入れると自動接続してくれます。

Bridgeの設定

Twitchのトリガーを受け取れるようにするために、Bridgeの設定をします。
OBSの「ドック」→「カスタムブラウザドック」をクリックします。

ドック名は適当につけ、URLにはSAMMIに同梱されている「bridge」フォルダ内の「bridge.html」のパスを入力します。

適用を押すと新しいドックが追加され、このドックから各種トリガーのテストが行なえます。

これで最低限の設定は完了です。実践編はまた次回ということで。

Stadew Valley - Seeded CC Restoration glitchless - シード:73282158チャート

ゲーム開始時の設定

  • プレイヤーの性別:女性(入手金額が500G増えるだけなので正直どちらでもよい)
  • 牧場タイプ:フォレスト
  • ペット:猫(犬だと鳴き声の長さでわずかに遅いらしい)
  • 開始時の小屋の数:2、
  • 小屋のレイアウト:遠距離
  • シード:73282158

※鉱山の宝箱は通常設定にする

春(1年目)

1年目 春 1

パースニップのタネを受け取り、その間に画面のズームを調整する。
テレビとベッドを玄関の近くに寄せる。
家の前に散らばっている木片や石などを片付け、木を2本切り倒す。(家の西側のマツの木と、南東の池の近くのマツの木)

クワで農地を耕して、粘土を47個程度入手する。耕す順番は下の図を参照。
最初に1と書かれたマスを耕し、その次に2マス右・1マス上の場所を耕す。
さらにそこから2マス右・1マス上の場所を耕すと、3と書かれたマスを耕している状態になっている。
次に4と書かれたマスを耕し、そこから2マス右・1マス上の場所を耕すことを10のマスに達するまで繰り返す。
11のマスを耕して、同様の操作を47のマスを耕すまで続ける。(赤い番号から耕し始め、青の番号に達したらその次の赤い番号から耕し始める。) 耕した場所(どこでもOK)にパースニップのタネを植え、水やりをする。

1年目 春 2

パースニップに水やりをし、水くみをする。
農地の少し南側の木を何本か切り倒す。カエデの木とオークの木は最低1本ずつ残しておくこと。

1年目 春 3

何もせず寝る。

1年目 春 4

この日も何もせず寝る。

1年目 春 5

※5~12日目のチャートは一見すると分岐が多いように見えるが、目的としては雨が降るのを待ってパースニップの水やりを省略できることを期待しているだけである。

テレビで運勢を確認し、普通未満であれば何もせずに寝る。
運勢が普通以上のとき、箱を2つクラフトし家の前に設置する。一つは雑用、もう一つはバンドルアイテム用として使い分ける。
つるはし、石、石炭、ジオード以外のものを箱に収納し、鉱山へ出かけ、道中でポロネギを4つ拾っていく。

1年目 春 6(一度も鉱山に出かけていない場合)

テレビで運勢を確認し、普通未満である場合、5日目または6日目に雨が降っていたなら何もせずに寝る。そうでない場合はパースニップに水やりをして寝る。
運勢が普通以上のとき、箱を2つクラフトし家の前に設置する。
つるはし、石、石炭、ジオード以外のものを箱に収納し、鉱山へ出かけ、道中でポロネギを6つ拾っていく。

1年目 春 7~10(一度も鉱山に出かけていない場合)

テレビで運勢を確認し、普通以上であれば外に出る。
箱を2つクラフトし家の前に設置し、つるはし、石、石炭、ジオード以外のものを収納する。
パースニップを収穫して、10個だけ箱に収納し、鉱山に出かける。

1年目 春 11(一度も鉱山に出かけていない場合)

運勢にかかわらず外に出る。
箱を2つクラフトし家の前に設置し、つるはし、石、石炭、ジオード以外のものを収納する。
パースニップを収穫して、10個だけ箱に収納し、鉱山に出かける。

1年目 春 11(鉱山1回以上出かけている場合)

パースニップが収穫済みでなく、収穫できる状態にもなっていなかったら、パースニップに水やりをする。

1年目 春 12

パースニップが収穫済みでないなら、パースニップを収穫する。 鉱山にまだ1回しか出かけていない場合は、運勢にかかわらず鉱山へ行く。このとき、鉱山探索が済んだら必ず徒歩で帰宅し、金策用アイテムを全て出荷箱へ入れること。

鉱山(1回目)

40階到達を目指す。40階に到着したらエナジーを0にして帰宅する。
1回目は手持ちのアイテムが以下のようになっていればよい。 * つるはし
* 武器
* 石
* 銅鉱石
* 石炭
* 水晶
* アースクリスタル(なくてもOK)
* ジオード(5個以上)
* トパーズ(あれば)
* アメジスト(あれば)
* 洞窟ニンジン(あれば)
* カニ(無かったらチェリーボムや宝石類などの他のもの)

鉱山(2回目)

鉱山1回目が済み、運勢が普通以上のときに2回目へ出かける。
つるはし、武器、石、銅鉱石、石炭、回復アイテム(あれば)を持っていく。
41階から下に行く必要はない。
最終的に手持ちのアイテムが以下のようになっていればよい。 * つるはし
* 武器(他に持ち帰るものがあれば捨ててもよい)
* 石
* 銅鉱石(最低100個、最大でも140個)
* 鉄鉱石(65個)
* 石炭(34個以上、できれば42個)
* フローズンジオード
* イエティのなみだ
* アクアマリン
* オムニジオード(35階の特定の座標で入手できる) * 何か * 何か

6~11日目の場合はエナジーを0にして帰宅し、翌日に金策アイテム、残しておいたパースニップ、粘土を出荷する。
12日目の場合は必ず徒歩で帰宅し、金策アイテム、残しておいたパースニップ、粘土を出荷してから寝る。
ジオードを5個残しておくことを忘れないようすること。
バンドル用の箱に水晶、アースクリスタル(あれば)、イエティのなみだ、フローズンジオード、アクアマリン、洞窟ニンジン(あれば)、カニ(あれば)が入っていればOK。

1年目 春 13

所持金が3300G以上であればOK。そうでなければ最初からやり直し。
溶鉱炉を2つクラフトし、家の中に設置して、鉄を精錬する。
図に示す通りに耕し、水やりをして、水くみをする。
家の西側の木を何本か切り倒し、カカシをクラフトする。(木材50、せんい20、石炭1)
所定の座標にカカシを設置する。
ここで所持金が3500G未満の場合はクエスト報酬から不足分を入手して3500G以上になるようにする。 手持ちに空きを4つ作り、バス停へ行ってラッパスイセンを拾う(タンポポがあればそれも拾う)。 午前9時になったら町に入り、売店でイチゴのタネを30個買ってすぐ帰る。 イチゴのタネを植え、アイテムを整理し、鉄を精錬してから寝る。

1年目 春 14~15

鉄または銅の精錬をして寝る。この間に雨が降ったら、その日数分追加で水やりをサボる。

1年目 春 16~20(晴れのとき)

銅の精錬をし、イチゴの水やりをする。寝る前に銅ののべ棒を回収し、銅または鉄の精錬をしてから寝る。

1年目 春 21

精錬と水やり(晴れていたら)を行う。
行商人のカートから、ブルーギルを購入する。お金に余裕があるならメガボムを買い、適当な場所で整地のために使う。(カカシやスプリンクラーを巻き添えにしないように!)

1年目 春 22

銅の精錬をし、イチゴの水やりをする。寝る前に銅ののべ棒を回収し、銅または鉄の精錬をしてから寝る。

1年目 春 23

精錬とイチゴの収穫、イチゴの水やりを行う。

1年目 春 24

スプリンクラーを12個クラフトし、図に示す通りに設置する。

1年目 春 28

イチゴを収穫する。
手持ちをいったんカマ、つるはし、オノ(三点セット)だけにし、農地の西側でタンポポ、ポロネギ、ノワサビ、アミガサタケを回収しながら森へ行く。
行商人からブリームを買って帰宅する。

夏(1年目)

1年目 夏 1

きほんの肥料をクラフトしておく。
枯れたイチゴを刈り取り、スプリンクラーの上下左右のマスを耕し、水をまく。
コムギ用の農地を35マス耕す。場所は適当でOK。水もまかなくてOK。
メロンを植える場所(下の図のピンクの四角のところ)にきほんの肥料をまいておく。
時間が余ったら邪魔な木を切り倒しておく。

午前8時になったら町に入り、イベントを発生させる。
公民館に入り巻物をチェックしたらすぐに出る。
ピエールの商店で、以下のものを購入する。 * メロンのタネ 8個
* トマトのタネ
* ブルーベリーのタネ 42個
* トウガラシのタネ
* コムギのタネ 35個
* ポピーシード
* ヒマワリのタネ

肥料をまいた場所にメロンのタネをまき、スプリンクラーの有効なマス(水がまかれているマス)にブルーベリーのタネをまき、残りの35マスにコムギのタネをまく。

1年目 夏 12

カニを取得していたら、何もせずに寝る。
そうでない場合、行商人からカニとロブスターを購入する。

1年目 夏 14

ブルーベリーを先に収穫し、その後にメロンを収穫する。(間違えるとメロンを収穫した段階で農業レベルが足りなくて詰む)
ブルーベリー1個と金メロン6個を収納する。
メロンを収穫した場所に、メロンのタネ2個、トマトのタネ、トウガラシのタネ、ポピーシード、ヒマワリのタネを植える。
通常品質のブルーベリーのみを出荷する。

1年目 夏 18

ブルーベリーを収穫する。

1年目 夏 19

手紙を全て読む(Eキーと右クリックを高速で連打する)。
ジオード5つとオムニジオード、カマ、つるはし、オノ、ブルーベリーを持って魔術師の塔へ出かけ、道中で採取アイテムがあれば拾っていく。
行商人からタイガートラウトとウサギの足を購入する。
魔術師の塔へ入ってすぐ出る。
海でアサリ、カキ、ザルガイを拾い、ウニもあれば拾う。(海に来たとき、釣竿も手に入る)

鍛冶屋でジオードを5つ割ってもらった後にオムニジオードを割ってもらい、ファイアクォーツを入手する。アースクリスタルも手に入るので、入手していないなら売らずにとっておく。
銅鉱石を、(140 - 鉱山で手に入れた個数)個購入し、いらない鉱物を売却する。

ピエールの商店でブルーベリーと道中で採取したアイテムを売却する。マッシュルームがあれば1つ手元に残しておく。(間違えて売却してしまったものは買戻しができるので、慌てずに買い戻すように)
トウモロコシのタネとリンゴの苗を購入する。

バス停でスパイスベリー、ブドウ、スイトピーを拾う。
農地に戻ってきたタイミングでディメトリウスがやってくるので、選択肢はコウモリを選択する。 リンゴの苗を農地に植え、銅を精錬して寝る。

1年目 夏 20~

精錬していない銅を精錬する。

1年目 夏 22

ブルーベリーを収穫する。他の作物は収穫しなくてもよいが、安定を取るならここで収穫しておく(雷の被害を防ぐため)。

1年目 夏 28

作物を全て収穫し、バンドル用アイテムをいったん収納する。
残りの作物や採取アイテムなどは全て出荷する。
スプリンクラーの有効なマスにトウモロコシのタネを植える。
行商人からザクロ、目玉焼き、スナゴチ、ハリセンボンを購入する。

秋(1年目)

1年目 秋 1

枯れた作物を刈り取り、スプリンクラーの上下左右のマスが全て耕された状態にしておく。
追加で高品質スプリンクラー用の農地を8マス耕し、水がまかれていない部分にすべて水をまく。
きほんの肥料が7個以上あるなら、6個だけ残してまいておく。
邪魔な木を何本か切り倒しておく。
ノワサビ、タンポポ、ラッパスイセン、ポロネギ、スパイスベリー、ブドウ、スイートピー、金メロン6個、ブルーベリー、トマト、トウガラシを持ち、手持ちの空きが残り1個になるまで適当にバンドルアイテムを持って出かける(移動距離が短くなるよう、ボイラールームのバンドルアイテムは持って行かない方が良い)。
バス停でヘーゼルナッツを拾う。

バンドルアイテムを納品し、春のタネつめあわせ、夏のタネつめあわせ、高品質スプリンクラーを回収する。
ピエールの商店で、カボチャのタネ109個、ナスのタネ、サツマイモのタネを購入する。
ナス、サツマイモ、カボチャのタネを植え、高品質スプリンクラーを設置する。(カボチャのタネが残り56個になればOK)

魚釣り

雨が降ったら、釣竿、銅ののべ棒5個、オノを持って出かける。
海でイワシ、フエダイ、ティラピアを釣る(ティラピアは午後2時まで)。 釣具店が開いたら練習用の釣竿を買う。練習用の釣竿を使うとティラピア、ビンナガ、ブラックバスの出現を抑制できる。
海釣りが終わったら鍛冶屋でオノをアップグレードしてもらう。
買える時間帯であるなら、スタードロップ・サルーンでコーヒーを4つ買う。店が開いてないなら釣りが終わった後に買う。
山の湖でコイ、チャブ、ブルヘッド、ウォールアイを釣る(ウォールアイは午後から出現)。ブラックバスは釣れても釣れなくてもよい。
木材が不足しているなら、大工作業場で木材をいくらか購入しておいてもよい。

1年目 秋 7

行商人からアヒルのはねを購入する。

1年目 秋 14

作物を収穫する。ナスとトウモロコシをつぶしてカボチャのタネ56個を植える。
カマ、つるはし、(アップグレードがまだならオノと銅ののべ棒5個も)、秋の作物、コーヒー2つ、バンドルアイテムを持ち(手持ちを2つ以上空けておく)、コーヒーを飲んでから行商人のところへ行く。
行商人からアロサとナマズを購入し、公民館へ行ってアイテムを納品して、ハチの巣箱を忘れずに回収する。
コーヒーが切れたら再度コーヒーを飲み、オノを預けていれば鍛冶屋でオノを回収し、そうでないならオノをアップグレードしてもらう。

牧場に帰ったら家の近くにハチの巣箱を設置する。 牧場の洞窟でフルーツを回収、農地の西側でキノコ類を採取し(少なくとも赤キノコ2個とむらさきキノコ2個はほしい)、オノがあれば切り株を切って堅い木を10個以上集める(採取の経験値稼ぎのため、余分に切っておくほうが良い)。
バンドルアイテム(サクランボ、モモ、オレンジ、アプリコット、ザクロ、野生のプラム、ブラックベリー、赤キノコx2、むらさきキノコx2、未収穫ならマッシュルームも)とサーモンベリー1個(フルーツなら何でもよいが、他のアイテムと被らないようにするため)を箱に収納し、余ったカボチャ、フルーツ、キノコを出荷する。

1年目 秋 19

リンゴを1個収穫する。
(作れるなら)樹液採取機をクラフトして、オークまたはカエデの木に取り付ける。
行商人から、フィドルヘッド、ウナギ、アヒルのタマゴ、ウニ(入手していないなら)を購入する。
牧場南側(中央の池の下側)の小屋で寝る。

1年目 秋 21

行商人から巻きずしを購入する。
牧場南側の小屋で寝る。

1年目 秋 28

(樹液採取機を取り付けているなら)オークの樹脂orメープルシロップを回収する。 カボチャを収穫する。
ハチミツとリンゴ3個も回収し、箱に収納しておく。
赤キノコやむらさきキノコが不足しているなら探しに行く(ついでに洞窟のフルーツもチェックしておくとよい)。
カボチャや余ったキノコ類を出荷する。

冬(1年目)

1年目 冬 12

牧場の洞窟でフルーツを回収する。 この時点でサクランボ、モモ、オレンジ、アプリコット、ザクロのうち4種類以上を洞窟から入手出来ていない場合は(※行商人から買ったザクロはカウントしない!!!)、保存ジャーをクラフトして適当なフルーツを入れておく。これを後日ジャムとして回収する。

クワ、つるはし、オノ(あるなら)、コーヒー1個、バンドルアイテム(樹液採取機があるなら、オークの樹脂またはメープルシロップを含む)を持ち、手持ちを12個空けた状態にする。
(樹液採取機を取り付けているなら)オークの樹脂orメープルシロップを回収し、別の木(オーク→カエデ または カエデ→オーク)に樹液採取機を付け替える。
森へ行ってクロッカスを拾い、クリスタルフルーツもあればそれを拾う。
マーニーの牧場近くの地面を耕してクワイとスノーヤムを手に入れる。
行商人から、おおきなタマゴ(茶)とおおきなミルクを購入する。
牧場南側(中央の池の下側)の小屋で寝る。

1年目 冬 19

行商人から、光の結晶と闇の結晶を購入する。道中でクリスタルフルーツを拾う(持っていなければ)。
牧場南側の小屋で寝る。

1年目 冬 21

行商人からキノボリウオを購入する。
牧場南側の小屋で寝る。

1年目 冬 26

コーヒーを飲む。
行商人からチョウザメを購入する。 浜辺でオウムガイの貝がらを拾う。 オノの回収がまだなら鍛冶屋からオノを回収する。
公民館へ行き、バンドルアイテムを納品する。お金になるご褒美は忘れずに回収する。 堅い木を入手していないなら、堅い木を10個以上集める。

春(2年目)

2年目 春 1

スプリンクラーの周囲の草刈りをし、散らばった石や木片を綺麗に片づける。

2年目 春 7

図に示すマスを耕し、パースニップを植える場所に肥料をまく(6ヶ所、緑の四角のマス)。 サヤエンドウ、ジャガイモ、カリフラワー用のマスはどこでもOK。

ボイラールーム以外のバンドルアイテムを全て持ち、行商人のところへ出かける。その途中でメープルシロップorオークの樹脂を回収する。
行商人から、おおきなヤギのミルク、トリュフ、ヒヨケウオを購入する。
バンドルアイテムを納品し、必要なご褒美(醸造タル、ピンクケーキ、おさかな定食、秋のめぐみ、秋のタネつめあわせ、冬のタネつめあわせ、金ののべ棒)を回収する。特に醸造タルはワインの製造に必要なため、この時点で必ず加工品バンドルを完成させる。
ピエールの商店で、パースニップのタネ6個、サヤエンドウ栽培キット、ジャガイモのタネ、カリフラワーのタネを購入する。
肥料をまいたマスにパースニップのタネを植え、残りのマスに他の作物を植える。
醸造タルを家の近くに設置し、サーモンベリーを入れる。 ご褒美類などのアイテムを出荷する。(※金ののべ棒は必ず1つ残しておくこと!!!)

2年目 春 14

行商人から赤キャベツを購入する。

2年目 春 26

コーヒーを飲む。 全てのバンドルアイテムを持ち(特に石と木材、のべ棒を忘れずに!)、作物を収穫、ワインを回収して、行商人からおおきなタマゴ(白)とマグロを購入する。
鉱山でカニを入手している=夏の12日に買い物をしていない場合は、浜辺でムールガイを拾う。
公民館へ行き、全てのバンドルを完成させる。

ビッグトーナメントゴルフRTA チャートのメモ

基本的なこと

  • キャラはPower Golfer(ブラジルのおっさん)を使う。パワーだけが取り柄だが、他の能力の低さゆえにパワーゲージが速く動くのでRTAには有利。
  • 元がアーケードゲームのためゲームテンポがかなり速め。余計な演出もほとんどないのでスコアの良さがそのままタイムにつながる。
  • 時たま襲い掛かるドラコン/ニアピンはうっかり取ってしまうと演出で10秒近く持っていかれるので注意。
  • ボールが飛ぶときの左右のブレが一切なく、方向さえ合わせれば必ずその方向にボールは飛んでいくので、狭い領域にボールを落とすことも比較的難しくない。
  • チップインの判定がとにかく渋く、狙ってもまず出ない。グリーンに乗せることを優先すること。
  • 打つ高さを合わせるときに下入力をしておくとバックスピンがかかる。これを知っていないと一部のショートホールではグリーンに乗せることすら困難になる。
  • 打つ方向の初期位置はグリーン中央を向いており、残りヤードが短い(50y未満?)とピンの方向に初期位置が合わさるようになる。

※このゲームではショットの強さが100%を超えて打てる仕様になっており、今後の説明では便宜上、最大の強さをMax、100%とMaxの中間の強さを110%と表記する。

Japan

Hole 1

  1. まっすぐに打つ。
  2. カップの方向に合わせて丁度の強さで打つ。

Hole 2

  1. 少し右を向き、バンカーとラフの間を狙って打つ。
  2. カップの方向に合わせて丁度の強さで打つ。ピンそばに寄せやすいので傾斜はあまり気にならない。

Hole 3(ショート・ニアピン注意)

  1. 向きを変えずに、99%の強さで打つ。グリーン中央で止まればどのニアピンも回避できる。
  2. 必ずNo Grainになるので、グリーン中央空であれば方向はそのままか微調整するだけでカップインできる。

Hole 4

  1. やや右を向き、対岸にある縦に2本並んだ木の少し右側を狙って110%程度で打つ。Maxで打つとOBになりやすいので注意。ラフの手前で止まってくれるのがベスト。
  2. カップが左側にある場合、フック(左曲げ)をかけてピンそばに寄せる。残り70yくらいの事もあり、ショットの強さ決定までに方向合わせが間に合わないときもある。

Hole 5(ロング・ドラコン注意)

  1. ドラコンならフック1回の110%で打ち、そうでないならフック2回のMaxで打つ。
  2. 残りが220~230yの時は3Iから5Wに切り替える。グリーンが高台にあるので残りヤードよりも強めに打つ。ウッドを使うときはグリーン手前のラフに引っ掛けて失速させると良い感じになる。アイアンを使うときはバックスピンをかけて転がりすぎないようにする。

Hole 6

  1. 無風なら初期位置かほんのわずかに左を向いてからMaxで打つ。Maxでない場合はOBの危険性もあるため心配ならグリーン左手前側を狙って打つ。

Hole 7

  1. 少し左に打つ。バンカーが怖いなら110%程度にとどめておく。

Hole 8(ロング)

  1. スライス(右曲げ)2回、Maxで打つ。
  2. 少し右を向き(正面に木が見えるくらい)、フック1回かけて気持ち強めに打つ。2オンするのには難しいが、OBすることはなくなる。

Hole 9(ショート)

  1. 90%程度の強さで届く。方向合わせの時間が短いのでフックやスライスで調整するのもあり。

Hole 10

  1. 中央のバンカーの方まで左を向き100%程度の強さで打つか、初期位置からフック2回のMaxで打つ。とにかくフェアウェイをキープする。
  2. グリーン右手前の木が邪魔な場合は左を向いてからスライスをかけて寄せる。

Hole 11(ロング)

  1. スライス2回のMaxで打ち、クリーク(小川)に落とす。ウォーターハザードになればボールが転がる時間を短縮できる。
  2. 初期位置からほんの少し右を向き、残りヤードと同程度か僅かに弱めに打つ。グリーン手前にかかる橋の上にボールを落とし、その跳ね返りでグリーンに乗せるのを狙う。

Hole 12(ドラコン注意)

  1. バンカーと池の間を狙って打つ。ドラコンの時は110%程度で。
  2. グリーン手前のラフが深いので気持ち強めに打つ。

Hole 13

  1. 2つの池の間を狙って打つ。風次第で1オンできる。

Hole 14(ショート)

  1. 101%くらいの強さで打つ。OBが怖いならしっかり目に打ってバックスピンをかけるのでも良し。

Hole 15

  1. 初期位置からスライス1回の95%の強さで打てばフェアウェイに乗る。
  2. フックorスライスで正面の木をよけて打つか、PWに変えて木を飛び越えるように打つ。

Hole 16(ロング)

  1. 無風なら初期位置からスライス3回のMaxでフェアウェイに届く。
  2. 狙いを少し右にずらし、フック1回かけてMaxで打つ。OBは追い風のときのみ気をつければよい。

Hole 17(ショート)

  1. 無風なら4IのMax付近でバックスピンをかければグリーン中央で止まる。強さ110%程度だとOBになる。強風でグリーンに乗せるのが困難な場合はOB3回で早々とリタイヤするのも手。

Hole 18

  1. スライス1回の100%で木の生えている辺りに止まる。

U.S.A

Hole 1

  1. 少し右に打つか、スライス1回かけて打つ。

Hole 2

  1. 少し左側、ラフと木の間を狙って打つ。

Hole 3(ショート)

  1. まっすぐ100%で打つ

Hole 4(ロング・ドラコン注意)

  1. 少し左側、バンカーと木の間めがけて打つ。ドラコンならバンカーに落としてしまうのも手。
  2. 強い追い風でもない限り2オンはできないので、堅実にフェアウェイを狙っていく。バンカーから打つ場合、バンカーに埋まっていない状態だと案外飛んでしまい、思わずOBになることもあるので注意。

Hole 5

  1. やや左側、狭いフェアウェイを狙って飛ばす。左に狙いすぎるとバンカーに捕まるので注意。

Hole 6

  1. 左を向いて、フェアウェイ右側のバンカーの方角へMaxで打つ。
  2. バンカーにつかまらないように、気持ち強めに打つと安心。

Hole 7

  1. ショットゲージがMaxになるまで右を入れ続け、フック1回のMaxで打つ。

Hole 8(ロング)

  1. まっすぐにMaxで打つ。
  2. Maxで打つ。1打目が無風かつMaxでギリギリ高台に乗る。

Hole 9(ショート・ニアピン注意)

  1. 1Wなら100%、3Wなら110%、5WならMaxで打つ。

Hole 10

  1. ホール中央のバンカーの方を向き、スライスを1回かけて打つ。
  2. グリーンの奥の方が長い傾斜となっており、そこにボールが落ちるといつまでも転がっていくため若干弱めに打っておく。

Hole 11(ロング・ドラコン注意)

  1. わずかに左を向き、1回フックもかけておいて打つ。ドラコン時は飛ばし過ぎ注意。
  2. まっすぐ飛ばす。下手にフック/スライスをかけると木にぶつかる時がある。

Hole 12(ショート)

  1. 3Iにして強さ110%でバックスピンをかけて打つ。グリーンの端を狙うとOBしやすいのでまっすぐ飛ばす。

Hole 13

  1. 少し右側を狙って打つ。

Hole 14

  1. わずかに狙いを左にずらし、バンカーとバンカーの間に落とすように打つ。追い風のときは飛ばし過ぎ注意。
  2. 比較的短距離のアプローチになるが、弱すぎるとクリークに落ち強すぎるとグリーンの傾斜に捕まってしまう。バックスピンをかけて確実にボールが止まるようにする。

Hole 15(ショート)

  1. 3Iなら110%でバックスピン、4IならMaxでバックスピンをかけて打つ。

Hole 16

  1. まっすぐ飛ばすか、右側を狙いつつフックを1回かけて打つ。バンカーを越えてかつ木が邪魔にならない位置に落とすのがベスト。

Hole 17(ロング)

  1. 無風ならまっすぐMaxで打つ。強風の場合は最初からリタイア狙いも手。
  2. ラフに捕まったら目一杯右を狙いかつスライスも3回かけて打ち、確実にフェアウェイに復帰させる。フェアウェイから打つ場合は目一杯右を狙いかつフックを1回かけて打つ。

Hole 18

  1. スライス1回の90%で打つ。

Germany

Hole 1

  1. まっすぐ打つ。横風のときはバンカーを避けるように。

Hole 2

  1. 少し右に打つ。

Hole 3(ショート・ニアピン注意)

  1. PWなら105%、SWならMaxで打つ。まっすぐ打てばだいたいニアピンは回避できる。

Hole 4(ロング)

  1. ほんのわずかに右を狙い、ラフとバンカーの間を狙って打つ。
  2. グリーン手前のバンカーが怖いのでやや強めに打つ。

Hole 5

  1. 木が邪魔でなくなるまで右を向きフックを2回かけてMaxで打ち、クリークに落とす。もしくは90%で打ってクリーク手前で止める。
  2. まっすぐ飛ばしてグリーン中央に落とせば、比較的どの位置のカップも狙いやすくなる。

Hole 6

  1. ほんの少し右側を狙って打つ。右にやり過ぎると木にぶつかり、飛ばしすぎるとラフに入ってしまう。
  2. グリーンの傾斜部にピンが立っている場合は、平坦部に落とすかピンそのものに当てるのを狙う。

Hole 7(ロング・ドラコン注意)

  1. 少し右の縦に木が3本並んだところをMaxで打つ。木に引っかかるのでドラコンを取る心配は無い。
  2. 左を狙ってスライス1~2回かけるか、木に引っかかること前提でまっすぐ強めに打つ。

Hole 8(ショート)

  1. 正面の木を避ける程度に右を向き、フックを1回かけて110%で打つ。

Hole 9

  1. 初期位置よりほんの僅かに右、ラフと木の間を狙って打つ。
  2. 木が邪魔なら左を向いてスライス1~2回かけてから打つ。

Hole 10(ロング・ドラコン注意)

  1. 手前から2つ目のバンカーに狙いを合わせ、スライスを1回かけて打つ。
  2. ほんの少し左の、木と木の間を狙い、スライスを1回かけて打つ。

Hole 11(ショート)

  1. まず正面の木を避ける程度に右を向きフックを2回かける。5Iにして115%で打つ。

Hole 12

  1. スライス1回の70%で打つ。追い風が強いならMaxで打って1オンを狙っても良い。
  2. パワーをケチると木に引っかかるので強めに打つ。

Hole 13

  1. 正面の木を避ける程度に右を向き、フックを1回かけて打つ。

Hole 14(ショート)

  1. SWにしてMaxで打つ。

Hole 15

  1. わずかに右を狙いつつ80%で打ち、確実に高台のフェアウェイに乗るようにする。
  2. 左を向いてスライス、もしくは右を向いてフックで打つ。

Hole 16

  1. 目一杯左を向き、115%で打つ。MaxだとOBになってしまう可能性もある。
  2. ラフから打つときはクラブを3つ上げてから打つと丁度よい飛距離になる。

Hole 17(ロング)

  1. やや左側、フェアウェイが狭くなっている方向へMaxで打つ。
  2. まっすぐ打つか、左を向いてスライスで打つ。

Hole 18

  1. 少し左側(カーソルがバンカーと被らない程度)、スライス1回で打つ。OBが心配ならスライス2回で。
  2. 残りが30y程度ならパターで寄せる。

Australia

Hole 1

  1. まっすぐ打つ。

Hole 2

  1. 少し右に打つ。

Hole 3(ショート)

  1. 9Iなら110%、PWならMaxで打つ。

Hole 4(ロング・ドラコン注意)

  1. 少し右側、木とバンカーの間を狙って打つ。ラフに引っ掛けられるならドラコン時でもMaxで打ってよい。
  2. 弱くてOBになるよりも強すぎてOBになることが多いので、丁度の強さで打てば良い。

Hole 5

  1. 右側のバンカーの方を向き、フック3回かけてMaxで打てばクリークを超えられる。
  2. ラフに捕まった場合は木も邪魔になるので、確実にフェアウェイを狙ったほうが無難。

Hole 6

  1. まっすぐMaxで打つ。風次第で1オンできる。

Hole 7(ロング)

  1. 手前から2つ目と3つ目のバンカーの間を狙って115%で打つ。
  2. 飛ばし過ぎに注意、グリーン手前のバンカー2つの間を狙えば安全。

Hole 8(ショート)

  1. 6Iにして110%でバックスピンをかけて打つ。

Hole 9

  1. 目一杯左を向き、スライス2回かけてMaxで打つ。

Hole 10

  1. 下手に1オンを狙うと事故りやすい。目一杯右を向きフック3回かければ安全(ただしバンカーに入りやすい)。

Hole 11

  1. スライス2回かけて打つ。バンカーより奥に行けばOK。

Hole 12(ショート)

  1. まっすぐ110%でバックスピンをかけて打つ。初期位置より左を向くと木に引っかかりやすいので注意。

Hole 13

  1. フック1回かけて打つ。弱過ぎ注意。

Hole 14

  1. スライス1回の75%で打つ。無風なら1オンを狙えるが、Max以外ではOBになる。

Hole 15(ロング・ドラコン注意)

  1. 眼の前の海に4回ボールを落として強制リタイヤにする。イーグルが取れるのならそちらの方が速いが、そもそも15m級の追い風が無いと2オン自体が無理。

Hole 16(ショート)

  1. 3Iにして、115%のバックスピンで打つ。無風ならMaxで打ってもOBにはならない(バックスピンは必須)。

Hole 17

  1. ホール左側の、木が乱立していない領域めがけて打つ。
  2. 木が邪魔なら左を向いてスライスを1~2回かけてから打つ。

Hole 18(ロング)

  1. まっすぐ、もしくは少し左狙って打つ。バンカーに落ちなければOK。
  2. 丁度の強さで打つ。飛び過ぎが怖いならバックスピンをかける。