動作パラメーターのリファレンス
このページはv1.0.1の陸上移動用の詳細値を,src/config.rsと実行側の処理から整理した資料です。通常の大きさ・数・セリフ・天気の設定はuser.tomlのリファレンスを参照してください。旧記事のURLは維持していますが,現在の動作パラメーターファイルはconfig.tomlという名前ではありません。
ファイルの場所と反映
| 環境 | 監視するファイル |
|---|---|
| Mac | アプリが読み込むキャラクター素材フォルダーのparams.toml。配布アプリではアプリ内のResources配下 |
| Windows | Petit Mates.exeと同じフォルダーのbearded_dragon_params.toml・pond_turtle_params.toml・leopard_gecko_params.toml |
Windowsでは対象の種類のファイルだけを作成できます。Macのアプリ内ファイルを書き換えると配布物の署名や更新に影響するため,素材・コードを扱う作者向けの説明として参照してください。一般利用者の変更は設定画面やユーザー用のセリフファイルで行えます。
監視対象のパラメーターファイルを保存すると,実行中に再読み込みします。無効なTOMLは適用されず,それまでの値が残ります。項目を省略したファイルはRustの基準値から補われます。assets/common/params.tomlをユーザーファイルとして順に重ねる処理ではありません。
実際に使われる値の優先順位
現在の実装は「Rustの基準値 → パラメーターファイル → 性格からの再計算」の順です。表の「性格」列が「優先」の項目は,ファイルへ明示しても後から性格の計算値で置き換わります。ソース内の一部コメントにある「明示値が性格より優先」という説明とは順序が異なります。
表はRustのDefaultの値であり,キャラクターを実行したときの最終値ではありません。性格を0.5にしても全項目がこの表と同じになるわけではありません。内蔵性格の値はカスタマイズを参照してください。
値の読み方
時間は秒,速度は画面座標のpx/s,距離はpxです。配列は[最小値, 最大値]の範囲です。確率には0〜1を使い,累積しきい値は小さい値から順に並べます。基準の範囲を少しずつ変え,配列の大小や正の時間を保ってください。
たとえば,しきい値が0.4・0.6・0.8なら,各区間の確率は40%・20%・20%・残り20%です。3つの独立した確率として加算する指定ではありません。
[floor]
| キー | Rust基準値 | 性格 | 説明 |
|---|---|---|---|
walk_speed | 40.0 | 優先 | 歩行速度(px/s) |
walk_frame_secs | 0.14 | 優先 | 歩行アニメーションの1フレームの秒数 |
run_speed | 90.0 | — | 走行速度(px/s) |
run_frame_secs | 0.07 | — | 走行アニメーションの1フレームの秒数 |
run_duration | [1.5, 4.0] | — | 1回走る時間の範囲(秒) |
run_interval | [20.0, 60.0] | — | 走る動作の間隔の範囲(秒) |
stand_duration | [3.0, 8.0] | — | 立って休む時間の範囲(秒) |
sit_duration | [5.0, 15.0] | — | 座って休む時間の範囲(秒) |
lie_duration | [20.0, 60.0] | 優先 | 横になって休む時間の範囲(秒) |
sleep_duration | [60.0, 180.0] | 優先 | 眠る時間の範囲(秒) |
headbob_period | [30.0, 90.0] | — | 口を開くまでの間隔の範囲(秒) |
headbob_open_duration | [0.3, 0.5] | — | 口を開いている時間の範囲(秒) |
peek_prob | 0.20 | 優先 | 観察後などにのぞき込む確率 |
peek_duration | 0.5 | — | のぞき込みの時間(秒) |
edge_idle_prob | 0.40 | 優先 | ウィンドウ上端の縁で休む確率 |
edge_stand_to_sit_prob | 0.50 | — | 縁で立った後に座る確率 |
edge_sit_to_lie_prob | 0.50 | — | 縁で座った後に横になる確率 |
edge_lie_to_sleep_prob | 0.30 | 優先 | 縁で横になった後に眠る確率 |
standup_duration | 0.8 | — | 着地後の立ち上がり時間(秒) |
turn_duration | 0.7 | — | 振り向きの時間(秒) |
observe_duration | [3.0, 8.0] | — | 着地後の観察時間の範囲(秒) |
head_side_duration | [10.0, 25.0] | — | 横向きでいる時間の範囲(秒) |
head_front_duration | [2.0, 6.0] | — | 正面を向く時間の範囲(秒) |
peek_walk_prob | 0.5 | 優先 | のぞき込み後に歩く確率。残りは振り向き |
turn_walk_prob | 0.7 | — | 振り向き後に歩く確率。残りは立ち休み |
stand_idle_sit_prob | 0.40 | 優先 | 通常の立ち休み後の累積しきい値1:座る |
stand_idle_walk_prob | 0.60 | 優先 | 通常の立ち休み後の累積しきい値2:歩く |
stand_idle_turn_prob | 0.80 | — | 通常の立ち休み後の累積しきい値3:振り向く。残りはのぞき込み |
sit_idle_lie_prob | 0.30 | 優先 | 通常の座り休み後の累積しきい値1:横になる |
sit_idle_stand_prob | 0.65 | 優先 | 通常の座り休み後の累積しきい値2:立つ。残りは歩く |
lie_idle_sleep_prob | 0.15 | 優先 | 通常の横休み後の累積しきい値1:眠る |
lie_idle_sit_prob | 0.60 | 優先 | 通常の横休み後の累積しきい値2:座る。残りは歩く |
edge_arrive_stand_prob | 0.40 | — | 縁で休む場合の累積しきい値1:立つ |
edge_arrive_sit_prob | 0.70 | — | 縁で休む場合の累積しきい値2:座る |
edge_arrive_lie_prob | 0.90 | — | 縁で休む場合の累積しきい値3:横になる。残りは眠る |
edge_fall_prob | 0.10 | — | 縁で休まない場合に,驚いて落ちる条件付き確率 |
shocked_duration | 0.6 | — | 驚いた落下姿を表示する時間(秒) |
[wall]
| キー | Rust基準値 | 性格 | 説明 |
|---|---|---|---|
climb_speed | 60.0 | 優先 | 壁を登る・降りる速度(px/s) |
climb_frame_secs | 0.22 | 優先 | 登攀アニメーションの1フレームの秒数 |
pause_prob | 0.15 | — | 壁の移動で3フレームごとに休む判定の確率 |
pause_duration | [2.0, 5.0] | — | 壁で休む時間の範囲(秒) |
entry_hold | 0.5 | — | 壁に取り付いた姿勢の保持時間(秒) |
[corner]
| キー | Rust基準値 | 性格 | 説明 |
|---|---|---|---|
side_corner_secs | 0.3 | — | 横向きのコーナー遷移時間(秒) |
front_corner_secs | 0.5 | — | 正面のコーナー遷移時間(秒) |
rest_prob | 0.30 | — | 上部コーナーで休む確率 |
rest_duration | [3.0, 8.0] | — | 上部コーナーで休む時間の範囲(秒) |
lower_rest_duration | [1.0, 3.0] | — | 下部用の休憩時間定義(秒)。通常の陸上状態遷移では参照されない |
rest_lying_prob | 0.5 | — | コーナー休憩で横になる確率。残りは座る |
rest_descend_prob | 0.5 | — | コーナー休憩後に降りる確率 |
corner_jump_prob | 0.20 | 優先 | コーナーから別のウィンドウへ跳ぶ確率 |
corner_jump_dist | 300.0 | — | 別ウィンドウを探す距離(px) |
outing_interval | [300.0, 900.0] | 優先 | 外出を促す時間の範囲(秒)。[0, 0]で無効 |
[jump]
| キー | Rust基準値 | 性格 | 説明 |
|---|---|---|---|
gravity | 0.6 | — | 重力係数。加速度は値×60 px/s² |
runup_duration | 0.3 | — | 壁へ跳ぶ前の助走時間(秒) |
wall_jump_max_dist | 80.0 | — | 壁ジャンプ候補との最大距離(px) |
wall_jump_floor_margin | 150.0 | — | 床からウィンドウ下端までの高さの許容値(px) |
climb_attract_dist | 600.0 | — | 登りに向かうウィンドウの探索距離(px) |
climb_attract_prob | 0.35 | 優先 | 床で休憩した後,近くのウィンドウへ向かう確率 |
air_speed | 350.0 | — | ジャンプ中の水平速度(px/s) |
min_jump_vy | 200.0 | — | ジャンプ開始時の上向き速度の下限(px/s) |
[display]
| キー | Rust基準値 | 性格 | 説明 |
|---|---|---|---|
hover_alpha | 0.25 | — | カーソルを重ねたときの不透明度。0〜1 |
Windowsでの記述例
bearded_dragon_params.tomlとしてEXEと同じフォルダーへ置く例です。ここでは性格の再計算で置き換わらない項目を使っています。
[floor]
turn_duration = 1.0
standup_duration = 1.2
[display]
hover_alpha = 0.20種類名に対応する全個体へ適用されます。通常利用の設定は設定リファレンス,判断の流れは状態遷移を参照してください。[water]も内部には定義されていますが,この表は通常のfreeモードの陸上動作を対象としています。