Skip to content
Copied!

動作パラメーターのリファレンス ​

このページはv1.0.1の陸上移動用の詳細値を,src/config.rsと実行側の処理から整理した資料です。通常の大きさ・数・セリフ・天気の設定はuser.tomlのリファレンスを参照してください。旧記事のURLは維持していますが,現在の動作パラメーターファイルはconfig.tomlという名前ではありません。

ファイルの場所と反映 ​

環境監視するファイル
Macアプリが読み込むキャラクター素材フォルダーのparams.toml。配布アプリではアプリ内のResources配下
WindowsPetit 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_speed40.0優先歩行速度(px/s)
walk_frame_secs0.14優先歩行アニメーションの1フレームの秒数
run_speed90.0—走行速度(px/s)
run_frame_secs0.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_prob0.20優先観察後などにのぞき込む確率
peek_duration0.5—のぞき込みの時間(秒)
edge_idle_prob0.40優先ウィンドウ上端の縁で休む確率
edge_stand_to_sit_prob0.50—縁で立った後に座る確率
edge_sit_to_lie_prob0.50—縁で座った後に横になる確率
edge_lie_to_sleep_prob0.30優先縁で横になった後に眠る確率
standup_duration0.8—着地後の立ち上がり時間(秒)
turn_duration0.7—振り向きの時間(秒)
observe_duration[3.0, 8.0]—着地後の観察時間の範囲(秒)
head_side_duration[10.0, 25.0]—横向きでいる時間の範囲(秒)
head_front_duration[2.0, 6.0]—正面を向く時間の範囲(秒)
peek_walk_prob0.5優先のぞき込み後に歩く確率。残りは振り向き
turn_walk_prob0.7—振り向き後に歩く確率。残りは立ち休み
stand_idle_sit_prob0.40優先通常の立ち休み後の累積しきい値1:座る
stand_idle_walk_prob0.60優先通常の立ち休み後の累積しきい値2:歩く
stand_idle_turn_prob0.80—通常の立ち休み後の累積しきい値3:振り向く。残りはのぞき込み
sit_idle_lie_prob0.30優先通常の座り休み後の累積しきい値1:横になる
sit_idle_stand_prob0.65優先通常の座り休み後の累積しきい値2:立つ。残りは歩く
lie_idle_sleep_prob0.15優先通常の横休み後の累積しきい値1:眠る
lie_idle_sit_prob0.60優先通常の横休み後の累積しきい値2:座る。残りは歩く
edge_arrive_stand_prob0.40—縁で休む場合の累積しきい値1:立つ
edge_arrive_sit_prob0.70—縁で休む場合の累積しきい値2:座る
edge_arrive_lie_prob0.90—縁で休む場合の累積しきい値3:横になる。残りは眠る
edge_fall_prob0.10—縁で休まない場合に,驚いて落ちる条件付き確率
shocked_duration0.6—驚いた落下姿を表示する時間(秒)

[wall] ​

キーRust基準値性格説明
climb_speed60.0優先壁を登る・降りる速度(px/s)
climb_frame_secs0.22優先登攀アニメーションの1フレームの秒数
pause_prob0.15—壁の移動で3フレームごとに休む判定の確率
pause_duration[2.0, 5.0]—壁で休む時間の範囲(秒)
entry_hold0.5—壁に取り付いた姿勢の保持時間(秒)

[corner] ​

キーRust基準値性格説明
side_corner_secs0.3—横向きのコーナー遷移時間(秒)
front_corner_secs0.5—正面のコーナー遷移時間(秒)
rest_prob0.30—上部コーナーで休む確率
rest_duration[3.0, 8.0]—上部コーナーで休む時間の範囲(秒)
lower_rest_duration[1.0, 3.0]—下部用の休憩時間定義(秒)。通常の陸上状態遷移では参照されない
rest_lying_prob0.5—コーナー休憩で横になる確率。残りは座る
rest_descend_prob0.5—コーナー休憩後に降りる確率
corner_jump_prob0.20優先コーナーから別のウィンドウへ跳ぶ確率
corner_jump_dist300.0—別ウィンドウを探す距離(px)
outing_interval[300.0, 900.0]優先外出を促す時間の範囲(秒)。[0, 0]で無効

[jump] ​

キーRust基準値性格説明
gravity0.6—重力係数。加速度は値×60 px/s²
runup_duration0.3—壁へ跳ぶ前の助走時間(秒)
wall_jump_max_dist80.0—壁ジャンプ候補との最大距離(px)
wall_jump_floor_margin150.0—床からウィンドウ下端までの高さの許容値(px)
climb_attract_dist600.0—登りに向かうウィンドウの探索距離(px)
climb_attract_prob0.35優先床で休憩した後,近くのウィンドウへ向かう確率
air_speed350.0—ジャンプ中の水平速度(px/s)
min_jump_vy200.0—ジャンプ開始時の上向き速度の下限(px/s)

[display] ​

キーRust基準値性格説明
hover_alpha0.25—カーソルを重ねたときの不透明度。0〜1

Windowsでの記述例 ​

bearded_dragon_params.tomlとしてEXEと同じフォルダーへ置く例です。ここでは性格の再計算で置き換わらない項目を使っています。

toml
[floor]
turn_duration = 1.0
standup_duration = 1.2

[display]
hover_alpha = 0.20

種類名に対応する全個体へ適用されます。通常利用の設定は設定リファレンス,判断の流れは状態遷移を参照してください。[water]も内部には定義されていますが,この表は通常のfreeモードの陸上動作を対象としています。