[Oblivion] HUD Status Bars および Enhance 勉強してみる
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

[Oblivion] HUD Status Bars および Enhance 勉強してみる

2019-09-04 15:44
    いつまでOblivionやってんだって感じですが、やりたいものは仕方がない。MODも出てるしな。
    さて。長く(永く?)プレイするにあたり、UI周りを快適にしたい。というわけで、画面表示を完全に自分の思い通りにできるMOD、HUD Status bars を導入してみる。

    しかしねぇ、自由度が高いがゆえにこれが難しいの。iniの編集ガイドがそりゃ長くてさぁ…。
    日本語で解説してくれてる人がいないので、自分が少しでも分かるようにちょっとまとめてみたい。

    以下に使い方をまとめていくつもりなんだけど、後から別の人が作った拡張MOD、HUD Status bars Enhanceでの機能も併せて書いていきます。じゃないと却って難しいんで。
    絶賛編集中。むずかしいよー

    MOD概要
    ヘルスやマジカを表す、画面上に重ねて表示される文字や棒グラフなどの画像をHUDと言いますが、それを自由に編集することが出来るMOD。
    バニラに無いバー、例えば防具が痛んだことを知らせるアイコンとか、松明の残り時間をバーで表すとか、スキル値を常時表示しておくとか、MODで必要になる情報を画面に表示しておくとか、イメージできさえすれば多分、ほとんど何でもできる。
    いくつかテンプレも用意されていて、スカイリムタイプとかに変更出来たり、インベントリにどれだけ余裕があるかを表すバーを追加してくれたりするので、編集しなくてもとりあえず入れておけばメリットはある。

    使い方
    BAINとかOBMMとかでインストール。コンパスは今使ってる円形コンパスの方が好きだったので変更しなかった。デザインはとりあえずバニラスタイル。あとは、付属のテキストを見ながらDateフォルダ内のiniをポチポチ編集していくことになる。各項目の記述の仕方は、OBSEに使われるスクリプトから。え、もうそれプログラムじゃんか(素人)。

    iniへの記入の仕方
    まず基本として、画面に何の情報を表示させたいのか、という事を決めないといけない。
    次に、それをどう表示させるのか。バーがいるのか、数字でいいのか。
    バーならゲージは何色で、常に表示させとくのか、必要に応じて消したりするのか。
    まだまだあるけど、最低限必要なのは

      set tnoHSB.hud_color to sv_Construct "<the color>" バーの色指定
      set tnoHSB.hud_val to sv_Construct "<the value>"  バーの現在値
      set tnoHSB.hud_max to sv_Construct "<the max>"  バーの最大値
      SetStage tnoHSB 10                 バー初期化命令


    記述の仕方  set tnoHSB.hud_color to sv_Construct "<色指定>"
    内容  お願い     HUDの色についてだよ    "〇〇色だよ"
          HSBModからの命令だよ  定型文で指定するよ

    こういうのを、コピペしたり打ち込んだりしながらバーの外見と機能を作っていく。いやー大変。

    バーの形について

    set tnoHSB.hud_type to ____
     そもそもこの文を記述しないか、"HUDdefault"とすればヘルスなどと同じ水平バーになります。その他のtoの後に記入できるものは以下。

    HUDbarHorizontal  水平バーになる。
    HUDbarVertical    垂直方向のバーになる。
    HUDbarCentered   中心から色が左右対称に変わってゆく水平バー。
    HUDbarCircle    円形。中心を基準に色が変わる。
    HUDbarRefIcon  インベントリのアイテム、スペル、召喚のアイコンを参照する場合
    HUDbarEffectIcon  スペル効果を表示する場合。別にアイコン指定分が必要。
    HUDbarSmall   アイコンの下に表示できるくらいの小さな水平バー。
    1-n        対象が複数ある場合に、それぞれに対応したバーを表示する。
    HUDtxtNoBar   テキストを表示するが、バーは必要ない場合。

    set tnoHSB.hud_direction to ____
    水平バー、垂直バー、小型バーに使用可能。バーの進行・減少方向を指定する。
    以下をtoの後に記入する。

    HUDdirLeft バーの色付き部分が左端を0として右に伸びていく。水平バー用
    HUDdirRight バーの色付き部分が右端を0として左に伸びていく。水平バー用
    HUDdirTop バーの色付き部分が上端を0として下に伸びていく。垂直バー用
    HUDdirBottom バーの色付き部分が下端を0として上に伸びていく。垂直バー用
    HUDdirBoth  バーの両端を0として、中央に向かって同時に伸びてゆく
    HUDdirSwitched センタータイプのバーを垂直方向に切り替えて配置する

    バーの大きさについて
    set tnoHSB.hud_size to ____
    バーのサイズ。これ自体を記入しなければデフォルトのライフなどと同じサイズになる。
    以下をtoの後に記入する。

    HUDdefault  デフォルトサイズ。カスタムアイコンの場合最大サイズ(100)。
            HUDbarRefIconおよびHUDbarEffectIconの場合、そのアイコンのサイズ。HUDweaponWidth 武器アイコンと同じ幅に合わせる。水平、垂直バー用。
    HUDmagicWidth  魔法アイコンと同じ幅に合わせる。水平、垂直バー用。
    HUDcompassWidth コンパスと同じ幅?どのコンパスだろ。水平、垂直バー用。
    0-1000の数字  デフォルトサイズに対する倍率で指定。100で同じサイズ。


    バーの色について
    set tnoHSB.hud_color to sv_Construct " " バーの色を指定する。HUD~で記入
    set tnoHSB.hud_color_min to __ バーが最小値の場合に色を変える場合に使う。番号
    set tnoHSB.hud_color_max to __ バーが最大値の場合に色を変える場合に使う。番号

    " "内やtoの後を0にすると透明になる。以下を" "内に記入する。

    HUDcolorGreen  (1)
    HUDcolorHealth (2)
    HUDcolorBlue (3)
    HUDcolorCyan (4)
    HUDcolorRed (5)
    HUDcolorBrown  (6)
    HUDcolorYellow (7)
    HUDcolorPurple  (8)
    HUDcolorPink  (9)
    HUDcolorOrange  (10)
    HUDcolorLime (11)
    HUDcolorRhubarb (12)
    HUDcolorWhite (13)
    HUDcolorGrey (14)
    HUDcolorBlack (15)

    参考


    バーの透明度について
    set tnoHSB.hud_visible to sv_Construct " "
    透明度を変更する項目を" "内に指定する。以下など。


    set tnoHSB.hud_visible_on to sv_Construct " "
    tnoHSB.hud_visibleで指定した項目が、これの" "に記入した状態になると表示される。

    set tnoHSB.hud_visible_time to __
    特定の条件下でバーを表示する際に、その時間を数値で指定する。秒…かな?


    引用する数値について
    set tnoHSB.hud_val to sv_Construct "  "
    バーに値を引用するために使う項目を" "内に記入する。多分、ここから探すんだと思うんだけど…まじか…。ReadMeなんかから抽出できた例を下記に例として挙げます。

    GetActorLightAmount PCに当たっている光の量

    set tnoHSB.hud_max to sv_Construct "  "
    バーに引用している数値が" "内の状態になった場合に、バーが最大になる。デフォは0。
    使用できるのは数値、スクリプト変数、または関数のいずれか(分かってない)。
    例えば100と記入すれば、その項目が100%になっている状態がバーの最大の状態。
    何かを獲得してバーを満たすのか、最大値から減少することでバーが減るのか、などでmaxを大きな値にするのか、minを大きな値にするのかが変わってくる…てことだと思う。

    set tnoHSB.hud_min to sv_Construct "  "
    バーに引用している数値が" "内の状態になった場合に、バーが最小になる。


    テキスト表示について
    set tnoHSB.hud_name to sv_Construct "  "
    バーと一緒に、またはバーの代わりに表示されるテキストを" "内に記入。

    set tnoHSB.hud_textDisplay to __
    バーが引用している数値をどう表示させるか。toの後に以下を記入。

    HUDtxtPercent   最大値に対するパーセンテージで値を表示
    HUDtxtValueOfMax 値 of 最大値 で表示。ofはtnoHSB.textDividerで指定したテキスト。
    HUDtxtValue  バーが引用している値を表示。
    HUDtxtValue1  バーが引用している値を小数点以下1桁で表示。
    HUDtxtValue2  バーが引用している値を小数点以下2桁で表示。
    HUDtxtNoValue  引用している値ではなく、hud_nameで指定したテキストのみを表示

    set tnoHSB.hud_textColor to sv_Construct " "
    テキストの色を指定する。バーの色と同じ色を指定する必要がある?じゃぁこの記述いるのか?何も指定しなければバーと一緒になるって意味かな?
    set tnoHSB.hud_textShadowColor to sv_Construct " "
    テキストの影の色を指定。省略したり0を記入したりすると、影は表示されません。

    set tnoHSB.hud_textShadow_x to ___
    set tnoHSB.hud_textShadow_y to ___
    テキストの影の位置を、文字との相対位置で指定。toの後に数字を記入する。

    set tnoHSB.hud_textType to ___
    toの後に表示させたいフォントを記入する。以下のうちから選ぶ。記入しなければグローバル設定から引用される。

    HUDfontSimple  シンプルなサンセリフフォント
    HUDfontKingthings  ゴシック調のレタリング文字
    1, 2, 3, 4, 5  標準Oblivionフォント、内容は未確認 

    set tnoHSB.hud_textSize to ___
    toの後にフォントの大きさを指定。フォントによっては8,10,12,14,16でしか指定できないものがある。

    HUDdefaul、又は記述なし グローバル設定でのサイズ。
    8, 10, 12, 14, 16  HUDfontSimpleまたはHUDfontKingthingsを使用する場合
    任意の数字  上記以外の場合にフォントサイズを好きに指定できる。

    set tnoHSB.hud_textPos_x to ___
    set tnoHSB.hud_textPos_y to ___
    バーに対してのテキストの位置。

    HUDdefaul、または記述なし  グローバル設定に準じる
    HUDtxtAbove  バーの上にテキストを表示
    HUDtxtBelow  バーの下にテキストを表示
    HUDtxtCenter  バーと同じ高さにテキストを表示
    HUDtxtNoBar  テキストのみでバーなし

    アイコン表示について
    set tnoHSB.hud_spell_effect to sv_Construct " "
    set tnoHSB.hud_type to HUDbarEffectIcon と並べて記入して、呪文効果のアイコンを表示させる。効果に対応して" "内に記入する呪文はこちらから。魔法名なのかIDなのかは未確認。ごめん。


    バーの位置について
    set tnoHSB.hud_x to ___
    set tnoHSB.hud_y to ___

    画面内での表示位置の軸指定。左端が0、右端が100。記入しなければ、一つ前のバーと同じ横位置。toの後に以下を記入してもよい。

    HUDdefault 又は HUDprevBar  一つ前に記述されたバーと同じ座標 x位置用
    HUDbars  標準バー(hud_store_posで設定されたバー)と同じ座標 x位置用
    HUDbarsLeft  標準バー(その中でも最後のもの?)の左側 x位置用
    HUDbarsRight  標準バー(その中でも最後のもの?)の右側 x位置用
    HUDprevBarLeft  以前に定義されたバー?の左側 x位置用
    HUDprevBarRight  以前に定義されたバー?の右側 x位置用

    set tnoHSB.hud_x_adjust to ___
    set tnoHSB.hud_y_adjust to ___
    同じ項目のバーが追加される場合に、その位置を指定する。


    バーの重なりについて
    set tnoHSB.hud_depth to __
    同じ場所に表示されるバーがある場合に、重なり順を数字で指定する。数値が高いバーが手前に表示される。一番奥に来るバーが10で、一つ手前に来るバーは11と指定する。

    具体例
    プレイヤーに当たっている光の量を示すバー
      set tnoHSB.hud_color to sv_Construct "HUDcolorYellow"
      set tnoHSB.hud_val to sv_Construct "GetActorLightAmount"
      set tnoHSB.hud_max to sv_Construct "100"
      SetStage tnoHSB 10

    光量をバーではなくパーセンテージで表示
     set tnoHSB.hud_textColor to sv_Construct "HUDcolorYellow"
     set tnoHSB.hud_val to sv_Construct "GetActorLightAmount"
     set tnoHSB.hud_max to sv_Construct "100"
     set tnoHSB.hud_type to HUDtxtNoBar
     set tnoHSB.hud_textDisplay to HUDtxtPercent
     SetStage tnoHSB 10
    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。