アニマルロアの結果の一部データなどを1画面で表示するUIモジュールを作りました
ペットにしたい動物を探し求め(?)、テイム前にアニマルロアで確認するのだけど、ステータス・属性抵抗(あと、場合に依ってはスキル値も見たい)が複数ページに分かれていて確認するのが面倒なので、その辺をイッペンに表示するウィンドウ用のUIモジュール(以下、Mod)を作りました。(なのでウィンドウのサイズは大きめです ^^;)
また、標準UIに含まれている各生物のステータス・スキル値等の最大・最小値データを利用して、アニマルロアの対象とそれらのデータを比較した値なども一緒に表示するようにしました。
[2018.05.03 16:20 追記]バグがあったためインストーラーとGitHubリポジトリを更新しました。この追記以前にダウンロードした場合は再度ダウンロードをお願いいたします。
修正内容: 瞑想、フォーカススキルが0の時、マナ回復計算でエラーが発生しウィンドウが表示されない場合があったのを修正。
このModで出来ること
アニマルロアを行った時に標準のアニマルロアガンプとは別に、このModのウィンドウを表示します。
- ウィンドウ右上にある「Close def Gump」にチェックを入れておくと、標準のガンプは表示されなくなります。(ペット訓練開始ボタンや各種アビリティなど、Modのウィンドウには表示していない項目があるので、必要な時だけチェックを入れてください)
- 対象生物のデータ(各ステータス・スキルの最小・最大値)がUI内にある場合は、アニマルロアの結果とデータを比較して表示します。
※ 対象生物の種類を正常に判定出来なかった際に、データを表示出来ない、または、違う種類の生物のデータが表示される場合があります。 - アニマルロアの結果をテキストファイルとして出力します。
スクリーンショット
上の画像はテイム前のcu sidheにアニマルロアを行った所。
テイム後、同じ個体にアニマルロアを行ったのが下の画像です。
このModの表示内容
標準のガンプに対して、追加でデータ等をあれこれ表示していますので、分かりにくい物を説明します。
まずは下の画像をご覧ください。
上記画像の内容についての補足を以下に。
取得したデータの種族名
最小・最大値データのキーになった種族名を表示します。
リリースされた生物と判定された場合は、種族名の後ろに (Maybe Released) と表示されます。
訓練中ペットの場合は、ここに訓練進行状況を表示します。
色ID(HueID)
対象の HueID を 4桁の16進数 (10進数) で表示します。
数値左側の ■ はモノトーンのグラデーション画像に取得したHueIDを適用した物ですが、HueIDによっては正常に表示出来ない場合(画像が透明になるなど)もありますので参考程度に。
ちなみに、標準カラーは #0000 (0) の事が多いですが、生物によっては標準カラーでも 0 では無い場合があります。
ステータス・属性抵抗値を訓練ポイントに換算した値
ロア時点のヒットポイント、スタミナ、マナ、STR、DEX、INT、各属性抵抗値を訓練ポイントに換算した値を表示します。(ブレス等の魔法や不調和などで値が変化していると、リアル値とは異なるポイントが算出されます)
この数値をマウスオーバーすると、ツールチップで内訳を表示します。
また、ポイントで各個体を比較しやすくする目的で、各ステータス値を以下の様に処理してからポイントを算出しています。
- スタミナが150を超えているテイム可能な野生生物の場合は、スタミナを150としてポイントを計算します。(テイム後に150まで下がる為)
- STR・DEX・INTが125未満の時は、それぞれが125まで上がった時の値でポイントを計算します。
例えば、
- 「スタミナ:200」「DEX:200」のテイム可能野生生物
→「スタミナ:150」「DEX:200」と見なす。 - 「スタミナ:70」「DEX:80」「マナ:0」「INT:25」の生物
→「スタミナ:115」「DEX:125」「マナ:100」「INT:125」と見なす。
の様にして訓練ポイントに換算します。
マナ回復予測時間
マナが全回復するまでに1秒以上掛かる時に表示されます。
ロア時点でのINT、マナ回復、瞑想、フォーカスを元に、現在マナの予測値と最大マナまで回復するのに掛かる時間(秒)を、1秒ごとに更新して表示します。
※ ロア時点からマナを消費せず、各ステータス・スキル値が変化しない前提での予測です。(また、「瞑想化」状態として計算するので、瞑想不可防具を装備している扱いの生物だと予測より回復が長くかかります)
リアルタイムでマナの値を取得している訳では無いので、ロア以降にマナを消費したりステータス・スキル値が変化すると予測値と実際の値に差異が生じます。
ですので、ペットのマナ回復待ちなどの休憩時間(?)の目安程度にご利用ください。
※ マナ回復の計算には「UO職人の部屋」さまの「各種計算」→「マナ回復計算」ページの計算式を利用させていただきました。この場を借りてお礼申し上げます。
最小~最大値内の割合
※ UIにデータがある場合のみ表示します。
ロア対象の各ステータス値が、最小~最大値の中でどの程度かをパーセンテージ表示します。
(最小~最大値の範囲外だった場合は、最小値 or 最大値との差を表示)
パーセンテージによって、文字色が「0%:赤 ← 50%:白 → 100%:青」になります。
最小値~最大値
※ UIにデータがある場合のみ表示します。
各ステータスの最小値~最大値です。
最大値との差
※ UIにデータがある場合のみ表示します。
ロア対象の各ステータスと最大値との差です。
テイム後のステータス値
UIにデータがあり、「テイム後ステータス半減する」生物としてデータが設定されている野生生物の場合のみ表示されます。
テイム後のスキル値
テイム可能な野生生物の場合のみ表示します。
※ 2段階スキルロスやスキル値半減は反映していません。。。重要なのはGM越えのスキルキャップ値だと思うので ^^;
ステータス・スキル値等のデータについて
標準UIに含まれているデータは、UIフォルダ内(または Default.zip 内)の Source\CreaturesDB.lua にあります。
長らくメンテナンスされていない(恐らく標準UIでは使用していない)と思われるデータなので、一部データをModで追加・変更しています。
追加・変更したデータは下記サイトを参考にしました。この場を借りてお礼申し上げます。
アニマルロア結果のテキストファイル出力について
※ ClifeUIのインストーラーを使用した場合は、下記フォルダ作成は不要です。
SAクライアントをインストールしたフォルダ内にある “logs” フォルダの中に “animalLore” フォルダを作成してください。
アニマルロアデータのファイルを書き出すために必要なフォルダになります。
アニマルロア実行時、下記のいずれかの場合にアニマルロアデータ出力用フォルダ内にテキストファイルが出力されます。(ファイルのエンコードはUTF-16LE)
- 各個体に対して(ログイン後 or インターフェースリロード後)初めてアニマルロアを行った時
- アニマルロアの結果が、前回の結果と比較してステータス・属性抵抗・スキル値のいずれかに変化があった時
Modの有効・無効の切り替え方法
このModのウィンドウを表示させたくない場合(標準のアニマルロアガンプだけ表示させたい場合)は、このModを無効にします。(Mod導入直後は有効になっています)
下記コマンドでModの有効・無効を切り替えます。
または /script ClfALGump.toggle() と発言(チャット画面で入力)でもOKです。
既知の問題等
- アニマルロアガンプが表示されるタイミングで、ラストターゲットの対象とロアガンプの名前が異なる場合は、Modのウィンドウは表示されません。(例:マジンシア動物トレーダーの「調べる」ボタンからロアガンプを開いた場合)
- リネームされた生物は、ステータス・スキル値等の最小・最大値データを取得出来ない、または、異なる種族のデータを取得してしまう場合があります。
- リネームせずにリリースされた生物は、リリースされた生物と判定出来ません。スキルロスやステータス半減に関する値・表示が実際とは異なる物になります。
- 各生物のステータス・スキル値等の最小・最大値データが、現在の仕様と異なっている物があります。
こんにちは
アニマルロア用ウィンドウもいつも大変便利に使わせていただいております
もしも可能なら、以下のご検討をお願い申し上げます
(当方は何もせず言うだけなので、めんどくさかったり、技術的に不可な場合は、遠慮なく無言スルーして下さい)
①HP回復、スタミナ回復、マナ回復も見れるようにしたい
スペースが足りない場合は、DHとハイドのスキルは不要
②ステータス・属性抵抗値を訓練ポイントに換算した値について
スタミナ・DEX・マナ・INTは消費Pが少ないのであまり気にしないので
STR・HP・ 属性抵抗値 だけの合計を知りたい
③記事の内容とは異なりますが、便乗で要望させていただきます
SAクライアントのチャット入力はすごく不便です
A.クラシックチャットモードだと、ローマ字入力中にカナ変換(F7)、アルファベット変換(F9)しようとすると
ファンクションキー単体(ALT等を付けない)に割り当てていたマクロが発動してしまう
B.クラシックチャットモードのチェックを外すと、ファンクションキーの誤爆は無くなりますが
いちいちENTERを押してから入力しないといけない
ENTER押してから入力してはずなのに、入力できない場合もある
C.半角文字が化けてしまう
何か良いアイデアがあれば、オリジナルチャットウィンドウを追加していただけると、すごくうれしいです
コメントありがとうございます
お返事おそくなってすみません
この所リアル都合でUO自体出来てない状態なので、更新がいつになるのか分からないのですが・・・
> ①HP回復、スタミナ回復、マナ回復も見れるようにしたい
やっぱりそう思いますよね ^^;
スペース自体はほんの少し縦方向に伸ばせばいいだけなので時間が取れたら検討します!
> ②ステータス・属性抵抗値を訓練ポイントに換算した値について
個人的には、訓練前の個体比較に使っていて合計値の方が重要なので、ごめんなさいです。。。
ロアを実行した際出力するログで、個別にポイントが出せるように時間が取れたら検討してみます
あと、チャットについてなんですが、
入力欄を常時表示しておけるようなチャット用のフィールドを設ければ良いのかなぁ、
とフワっとですが考えてた事があったので、
(その入力欄にフォーカスが入っている時はチャット用にキーを受け付ける、フォーカスがそれ以外ならマクロ用にキーを受け付ける、といった感じ)
実際にそれが可能なのか・上手くいくのか検証していないので、なんとも言えないんですが、
こちらも時間が取れたら確認してみます