Skip to content

azumag/LiveSplitGoldAlert

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LiveSplit Gold Alert

LiveSplitでゴールドスプリットを検出し、OBSに自動的にホットキーを送信するAutoHotkeyスクリプトです。

機能

  • LiveSplitのゴールドスプリット(セグメントベスト)を自動検出
    • Best Segments比較を使用し、真のゴールド(区間ベストを超えた場合)のみを検出
    • グリーン(マイナスデルタ)との誤検出を防止
  • 検出時にOBSへホットキー(Ctrl+Shift+Alt+G)を送信
  • 10秒後、自動的にホットキーを再送信(トグルでソースの表示非表示の切り替えを想定)
  • 10秒以内に次のゴールドが出た場合、自動的にリセット・再表示
  • デバッグログ機能

必要要件

セットアップ

0. AutoHotKey を導入

1. LiveSplit設定

  1. LiveSplitを開く
  2. 右クリック → ControlStart TCP Server
    • デフォルトでポート 16834 が使用されます
    • サーバーが起動すると、メニューに Stop TCP Server と表示されます

2. OBS設定

  1. OBSを開く
  2. 設定ホットキー
  3. 表示したいソース/シーンに Ctrl+Shift+Alt+G を設定
    • 例: 特定のソースの表示/非表示トグル

3. スクリプト実行

  1. LiveSplitGoldAlert.ahk をダブルクリック
  2. 管理者権限での実行を許可
  3. スクリプトがバックグラウンドで動作開始

使い方

スクリプトが起動していれば、LiveSplitでゴールドスプリットが出た時に自動的に:

  1. OBSに Ctrl+Shift+Alt+G を送信(動画表示)
  2. ビープ音が鳴る
  3. 10秒後に自動的に同じホットキーを送信(動画非表示)

10秒以内に次のゴールド

  • 現在の表示を一度非表示
  • 再度表示
  • 新しい10秒タイマー開始

ホットキー

ホットキー 機能
Ctrl+Alt+B ビープ音のON/OFF切り替え
Ctrl+Alt+X スクリプト終了

デバッグモード時のみ有効なホットキー

スクリプト内のDebugModetrueに設定すると、以下のテスト用ホットキーが有効になります:

ホットキー 機能
Ctrl+Alt+T 手動でゴールド検出テスト
Ctrl+Alt+V TCP接続テスト
Ctrl+Alt+H ホットキー送信テスト
Ctrl+Alt+L デバッグログをメモ帳で開く
Ctrl+Alt+C デバッグログをクリア

設定変更

スクリプト上部で以下の設定を変更できます:

LiveSplitHost := "127.0.0.1"      ; LiveSplitのホスト
LiveSplitPort := 16834             ; LiveSplitのポート
CheckInterval := 2000              ; チェック間隔(ミリ秒)
AutoHideDelay := 10000             ; 自動非表示までの時間(ミリ秒)
PlayBeepSound := false             ; ビープ音を鳴らすか(デフォルト: OFF)
DebugMode := false                 ; デバッグモード(デフォルト: OFF)

注: ビープ音は実行中に Ctrl+Alt+B で切り替えることもできます

仕組み

スクリプトはLiveSplitのBest Segments比較を使用してゴールド検出を行います:

  1. スプリット完了を検出(最終スプリット時間の変化)
  2. 現在のセグメントタイムを計算(現在のスプリット時間 - 前回のスプリット時間)
  3. Best Segmentsから該当セグメントのベストタイムを取得
  4. 現在のセグメントタイム < ベストセグメントタイムの場合、ゴールドと判定

これにより:

  • 真のゴールドのみを検出(PBより速いだけのグリーンは検出されない)
  • スクリプト再起動後も正確に動作(LiveSplitに保存されたデータを使用)

トラブルシューティング

ゴールドが検出されない

  1. LiveSplit Serverが起動しているか確認
    • スクリプト内のDebugMode := trueに変更して Ctrl+Alt+V でテスト可能
  2. ポート番号が 16834 になっているか確認
  3. LiveSplitにBest Segmentsデータが存在するか確認
    • 最低1回は完走している必要があります
  4. デバッグログを確認
    • スクリプト内のDebugMode := trueに変更して Ctrl+Alt+L でログを開く

OBSがホットキーを受け取らない

  1. スクリプトが管理者権限で動作しているか確認
  2. OBSが管理者権限で動作していないか確認
  3. OBSのホットキー設定を確認
  4. ホットキー送信テスト
    • スクリプト内のDebugMode := trueに変更して Ctrl+Alt+H でテスト可能

動画が自動的に消えない

  • OBSのホットキーが「トグル」設定になっているか確認
  • 2回同じホットキーを送ることで表示/非表示を切り替えます

ライセンス

MIT License

作者

azumag

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors