ラベル Livesplit拡張機能 の投稿を表示しています。 すべての投稿を表示
ラベル Livesplit拡張機能 の投稿を表示しています。 すべての投稿を表示

Livesplit コンポーネント開発での動作確認時のチェックポイント

コンポーネントの仕様や性質によっては必ずしもここで挙げている全ての項目を確認する必要はないと思います。 必要に応じて必要な項目を確認しましょう。

チェックシートとして使うにはやや抽象度が高いと思います。 また、注目している点が違うだけで意味としては重複している項目があるかもしれません。 確認項目の参考資料とかチェックシートの土台くらいの気持ちでご利用ください。

Livesplit 用コンポーネント一覧(標準以外まとめ)

Livesplit に標準で付属していない、ユーザーが任意で入手して使用するコンポーネントの一覧です。

多くは Github にて livesplit NOT asl NOT "auto split" NOT "autosplitter" NOT "load removal" NOT "load remover" で検索してヒットしたもの、その他、Twitter などで見かけたものをリストアップしています。

Livesplit 本体と一緒に配布されている標準コンポーネントについては、紹介記事や公式サイトをご覧ください。

もくじ

  1. はじめに
  2. 索引

  1. Timer
  2. List
  3. Information
  4. Media
  5. Control
  6. Other
  7. 通信
  8. 開発用

  1. 連携ツール(非コンポーネント)

Livesplit用の自作コンポーネント

私が作った Livesplit 用コンポーネント(拡張機能・プラグイン)の一覧です

一覧(カテゴリ別、公開順。記事本文は公開順。)

  1. はじめに
    1. 共通利用規約
    2. 導入手順
  2. Timer
    1. 改造版タイマー Timer_Plus
    2. 分表示タイマー Timer_minutes
    3. 色指定タイマー Specific Color Timer
    4. 視覚的タイマー Visual Timer
    5. 持続タイマー Continuous Timer
  3. List
    1. 改造版Subsplits Subsplits_Plus
  4. Information
    1. 比較対象タイムの組合せ平均 Combined Comparison Average
    2. 直近の平均 Recent Average
    3. 比較対象タイム表示 Comparison Time
    4. 今回起動中のベストタイム Best Time This Session
    5. 折り返しタイトル Multiline Title
    6. 今回起動中の到達区間 Reached Segment This Session
    7. 平均ラップ Lap Average
  5. Media
    1. タイマー情報読み上げ Speech_Yomiage
    2. 履歴棒グラフ表示 History Bar
    3. 動画再生 Video_API
    4. 2状態のタイムテーブル Binary State
    5. 区間別効果音 Segment Sound Effects
  6. Control
    1. ラップ回数カウント Splitting Counter
    2. タイマーストップのオフセット Offset Stop
    3. 音声操作 Voice Control
  7. Other
    1. 通し番号追加 Split Name Indexer
    2. 自己べペース検知 Might Reach Record
    3. 区間の一括生成 Make Many Segments
    4. 日時表示 Clock
    5. サイズ変更禁止 Resize Blocker
    6. ツイート支援 Share To Twitter
    7. フォーム入力支援 Form Parameters
    8. Discord通知 Run Log To Discord
    9. 角の装飾 Corner Decoration
    10. 模様付スペース Hatch Pattern Space
    11. 改造版SGL Speed Guides Live_Plus
    12. 比較対象タイム並替え Comparison Order

おまけ(他の方が作成されたコンポーネントなどの紹介)

  1. 公式以外のコンポーネント一覧
  2. おすすめのコンポーネント
  3. 開発者向けのコンポーネント
  4. その他、個人的に興味をひかれたコンポーネント

Livesplit用コンポーネントの作り方

コンポーネント開発に興味を持った方が開発に必要な情報を調べようとした時に少しでも助けになればと思い、私が調べた情報などを紹介するためにこの記事を書きました。

この記事はコンポーネント開発に必要な全ての情報を記載している訳ではありませんが、公式のソースコードを読み解くための参考資料として活用していただけると幸いです。

この記事の中で My~ と書いている部分は開発するコンポーネント名と考えてください。

もくじ

  1. 開発資料リンク
  2. あらかじめ知っておきたい C# の知識
    1. C# の仕様関連で知っていると便利なこと
    2. 標準ライブラリ関連で知っていると便利なこと
  3. コンポーネント開発の始めに
    1. 環境構築
    2. コンポーネントのプロジェクトに含まれるファイル
    3. コンポーネント開発の始めの一歩
    4. プロジェクトのプロパティ設定
  4. コンポーネント開発で利用する定番クラス
  5. コンポーネントの処理の流れ
    1. クラスの実体化やメソッド呼び出しのタイミング・順序
    2. コンポーネントで発生した例外
  6. タイマー画面への描画
  7. 設定画面
    1. AutoScaleMode に注意
    2. MyComponentSettings ユーザーコントロール
    3. 配置するコントロール類
    4. 設定画面に関係するイベント
    5. 設定項目の値
  8. 実際にタイムの値が格納されている場所
    1. LiveSplitState からアクセスできるタイム
    2. 計測中のタイム
    3. 自己ベストタイム
    4. 履歴タイム
    5. 比較対象タイム
  9. 比較対象タイム Comparison の生成
    1. タイムを生成する ComparisonGenerator
    2. Comparison の名前の設定
    3. LivesplitState に含まれている各 Comparison
    4. 注意したい Splits コンポーネント、Subsplits コンポーネントの仕様
  10. 各種イベント
    1. LiveSplitState
    2. TimerModel
    3. Run
    4. その他
  11. コンポーネントのデバッグ
  12. 自動更新

フォルダごとの紹介・説明

  1. LiveSplit.Core/UI/Components
  2. LiveSplit.Core/UI
  3. LiveSplit.Core/Model
  4. LiveSplit.Core/TimeFormatters
  5. LiveSplit.Core/Model/Comparisons
  6. LiveSplit.Core/Model/RunSavers
  7. LiveSplit.Core/Model/RunFactories
  8. LiveSplit.Core/Options
  9. LiveSplit.View/View
  10. UpdateManager

Livesplit で区間ごとにラップを切った回数をカウントしてくれるコンポーネント

Livesplit は標準で含まれている機能の他に、コンポーネントを追加することで機能を追加することができます
 Split Incrementer(レイアウトエディタで表示される名称は Split Name Auto Incrementer)を追加すると、区間ごとにラップを切った回数をカウントしてくれるようになります

Livesplit には標準で挑戦回数と完走回数を表示してくれる機能がありますが、区間ごとにラップを切った回数(あるいはリセットした回数など)は表示してくれません
 このコンポーネントがラップを切った回数をカウントしてくれることで、「とある区間でラップを切った=そこまでは到達した」と考えて区間ごとの突破率を計算する材料にしたり、「とある区間でリセットした=記録更新を諦める出来事があった」と考えてどの区間練習をするかの参考にするといったことに利用できると思います


2021/11/23 追記
ここで紹介している Split Incrementer にインスパイアされて、自分でも同じような機能のコンポーネントを作ってみました
 初期設定を簡単にしたり、履歴データからラップ回数を集計したり、ラップした回数だけでなくその割合を表示することもできたりと、私自身が欲しいと思った機能を詰め込んでいます
 ご興味があれば、SplittingCounter もお試しください