ChaAnalyzer/地図情報 の変更点

お名前:

#author("2018-04-11T17:00:30+09:00","default:Tomose","editor")
#author("2018-04-11T17:01:33+09:00","default:Tomose","editor")
*ChatAnalyzer 地図情報 [#pe40aae7]

**地図情報ってなんだ? [#q181b6d4]

ROクライアント内の右上には、キャラが現在いるミニマップが表示されています。~
このミニマップには、RO公式でいくつかのもの:例えば『カプラ職員』『精錬所』といった NPC の情報が表示されています。

ChatAnalyzer の『地図情報』は、この地図に対する情報を追加する機能です。~
RO クライアントでの /where 情報から現在のマップ名を切り出して、そこにユーザが設定した『モノの情報』を重ねて表示します。

前提として、ミニマップは最大縮小(現在のマップ内が全て見える倍率、例えばプロンテラの街が全部見えるサイズ)での運用を想定しています。


**基本的な使い方 [#e85edd03]
ChatAnalyzerの『地図情報』を表示した状態で、
ROクライアントで『/where』→『/savechat』とすることで、現在のマップに該当するオブジェクトを表示します。

#divregion(導入設定方法,h2)
**導入設定方法 [#s20c5fb8]
地図情報機能を使用するには、少し面倒な設定が必要です。~
以下、順に解説します。

+タスクトレイにあるChatAnaryzer 右クリックし、『地図情報』を選択してください。~
&attachref(CA_Map_start.png,nolink,left,100%,地図情報起動);
+ChatAnaryzerが提供する表示エリアを、ROクライアント上のミニマップに重なるように置く必要があります。以下の順に実施してください。
++ROクライアント上のマップ表示を一時的に拡大して、「マップ表示範囲がわかる」ようにしてください。~
&attachref(CA_MapCup.png,nolink,left,100%,ROクライアント地図領域の確認);
++地図情報ウィンドウ内「初期設定」タブを開きます。~
左側の「ウィンドウ位置」内で「移動」または「サイズ変更」を選択してください。~
&attachref(CA_Mapman_1.png,nolink,left,100%,初期設定タブ);~
こうすると、PC画面左上に『半透明グレー』のウィンドウが表示されます。~
&attachref(CA_Grayarea.png,nolink,left,100%,半透明グレーウィンドウ);
+++「移動」選択状態にすると、
半透明ウィンドウをマウスドラッグ and マップ管理ウィンドウ上の矢印ボタンで移動できるます。
マウスドラッグで大体移動→矢印ボタンで微調整というやりかたお勧め。
+++「サイズ変更」選択状態にすると、
半透明ウィンドウをマウスドラッグ and マップ管理ウィンドウ上の矢印ボタンでサイズ変更できるようになります。~
マウスドラッグで大体変更→矢印ボタンで微調整というやりかたお勧め。
+++上記の移動・サイズ変更を適時利用して、ROクライアントの「ミニマップの表示範囲」に「透明ウィンドウ」がぴったり重なるように調整してください。~
&attachref(CA_Justput.png,nolink,left,100%,ぴったり合わせる。);
---ここでのズレがオブジェクト表示のズレになりますが;
マップ解像度的にもともとざっくりとしかわからないと思われるので、数ドットのズレにはこだわらなくていいと思います。
++位置決定したら、管理ウィンドウで「ロック」を選択すると、
半透明ウィンドウが見えなくなり、移動/サイズ変更できない状態になります。~
この状態ではウィンドウは「透明」になっているだけです。
++ROクライアント上のマップ表示を縮小し、「マップ全体が表示される」ようにしてください。~
+テスト動作
++地図情報ウの「オブジェクト管理」タブを開きます。
++ROクライアント上で /where 入力、続けて /savechat と入力します。~
うまく動作すれば、管理ウィンドウ上の「マップ名」に、ROクライアント上でのマップ文字列が表示されます。
---例:下記は、プロンテラで /where した結果です。~
管理ウィンドウのマップ名に「prontera」と出ています。
&attachref(CA_Mapname.png,left,50%,/where結果);
++管理ウィンドウ内の表部分に、以下のような情報を入力して [Save] します。~
&attachref(CA_Dummydata.png,nolink,left,100%,テストデータ);
---うまく動作すれば、ROクライアントのミニマップ中央あたりに「赤い■」が表示されるはずです。~
そしてその上にマウスを持っていくと「テスト」というポップアップがでるはずです。
&attachref(CA_Show.png,nolink,left,100%,表示結果);

#enddivregion

#divregion(初めて訪れたマップでやってほしいこと,h2)
ROのマップは、その場所によってサイズ(幅・高さ)が違うことが一般的です。~
個々のマップの幅・高さの情報がないと、CAのオブジェクト表示位置が正確にできません。~
そこで、以下の手動・自動のいずれかで、設定を行ってください。~
1つのマップにつき1回行えば十分です。


''マップサイズの適正化操作(手動)''~
+RO上で /where→ /savechat してください。~
ChatAnalyzerの地図管理ウィンドウ内「マップ名」に現在のマップ名が表示されます。
+現在のマップの幅を地図管理ウィンドウ上の W に設定してください。~
同様にマップ高さを H に設定してください。
--マップの幅・高さは、いくつかの外部サイトで公開されています。~
また、自分でマップの『右上端』に行きその座標を確認することで、大体のサイズがわかるはずです。
+地図管理ウィンドウの「Save」ボタンを押して保存してください。

''マップサイズの適正化操作(自動判定)''~
+RO上で、キャラクターをマップの『右上側エリア』に移動してください。~
これは必須ではありませんし、できる範囲でかまいません。~
ただし、キャラクター位置が右上に近ければ近いほど、判定の精度が上がります
+insertキーor /sit で座ることを推奨します。
+/where → /savechat としてください。
+ChatAnalyzerの地図管理ウィンドウにある「位置設定」ボタンを押してください。~
「自分のいる位置を左クリックしろ」指示メッセージボックスが表示されます:読んだら「OK」を押して閉じてください。
+この時点で、ROのミニマップ上に「薄いグレーのウィンドウが重ねて表示」されている状態になっています。~
透過して見えている「自分の位置を示す矢印」の中央を左クリックしてください。
--以上を実施すると、地図管理ウィンドウ上の W,H 欄の値が変更されているはずです。~
+地図管理ウィンドウの「Save」ボタンを押して保存してください。

''補足''~
一般に、ROでのマップの幅・高さは区切りのいい数値として設定されているようです。~
もし自動設定された W,H の値が微妙ならば、手動で微調整するとよいでしょう。
#enddivregion

**オブジェクト管理画面詳細 [#s009f3d7]

マップ上に表示される情報類は、オブジェクト管理画面上で一覧管理されています。~
中央の表の「行」を選択すると、その選択された行に対応するマップ上のオブジェクトが点滅します。

&attachref(mapmanwin.png,nolink,left,100%,テストデータ);

#divregion(表示情報・ボタンの説明)
-マップ名
--ChatAnalyzerが認識している、現在のマップ名です。~
ユーザが /where → /savechat することで設定されます。
---当然のことながら、ROクライアントの表示マップとのリアルタイムな同期はできません。~
適時 /where/savechat してください。
-(マップ名右側にある)W,H
--現在のマップの最大幅・最大高さです。~
マップサイズと異なる場合、ユーザが指定して [Save]してください。
---デフォルトでは両方とも500になっていますが、多くの地図ではこれ以外のサイズになっています。
-[Clear]
--現在表示されているマップ情報を消去します。~
表示上だけです:ファイルに保存されている情報は削除しません。
-[MapSize]
--上記「マップサイズのW,H」を自動計算するためのボタンです。~
使い方は後述します。
-X, Y
--/where から取り込んだ、その時点でのキャラクターの位置座標です。~
-[Del]
--登録されているオブジェクトを削除するためのボタンです。~
削除したいオブジェクトの「行」を選択して押すことで、そのオブジェクトをリストから削除します。
-□ガータ
--『ボーリングバッシュのガーターライン』を地図上に表示します。
-[Load]
--マップ名に該当するオブジェクト情報を、ファイルから取り込みます。~
通常使う必要はありません:編集した結果が気に入らない場合に、[Save]する前に押すことで「戻す」ことができます。
-[Save]
--表エリアに入力されている情報を、当該マップ上のオブジェクト情報として保存します。~
#enddivregion

上記表エリア内の項目説明はこちら。
#divregion(オブジェクトの情報詳細)
-Object
--ユーザ設定するモノの名称です。~
マップ上にカーソルを合わせると、チップウィンドウとして表示されます。
-X, Y
--モノの座標です。~
ROクライアント上の座標に合わせて入力してください。
-表示
--オブジェクトをマップ上に『どのように』表示するかを指定する情報です。~
以下のルールに従って、1〜2桁の数字を指定します。
---1の位は、色指定になっています。~
1〜7 の数値を設定することで、それに対応した色が使用されます。
---10の位は、形状指定です。指定なし(つまり1〜7の値)ならば、■形状(塗りつぶし四角)で表示されます。
---10の位が1の場合、〇形状(円)で表示します。
---10の位が2の場合、●形状(塗りつぶし円))で表示します。
---10の位が3の場合、×形状(×印)で表示します。
-Size
--オブジェクトをマップ上で『どういうサイズで』表示するかを指定する情報です。~
ここで指定した画素数で表示します:任意数値を指定できますが、3以上ないと目視が困難と思われます。~
また、●や〇指定では、5以上でないと綺麗には見えません。
--なお、「表示」と「Size」については、設定ウィザードを搭載しています。~
設定したいオブジェクトの「表示」or「Size」列を右クリックしてください。
-メモ
--任意に使用できるメモ欄です。~
--ここに「一時登録」と記載している場合、その行のオブジェクトは「Save」操作をしてもファイル保存されません:
[Load]ボタンによって登録が消えてしまいます。

#enddivregion



**使い方:地図上に表示するオブジェクトの登録方法 [#ebb1facb]

以下にしめすいくつかの方法があります。~
前提:一度 /where → /savechatを行い、オブジェクト管理画面上「マップ名」が確定していることが必要です。

#divregion(方法1:直接編集)
-オブジェクト管理画面の表に、直接データを入力する方法です。
-表エリアの1行に情報を入力したあと「save」ボタンを押すことで、登録できます。
--オブジェクトの情報については、前述の『オブジェクトの情報詳細』を参照してください。
--なお、「表示」と「Size」については、設定ウィザードを搭載しています。~
設定したいオブジェクトの「表示」or「Size」列を右クリックしてください。

#enddivregion

#divregion(方法2:ROクライアントからの登録、その1)
-この方法を行う場合、「キャラクター名登録」が必要です。
-ROクライアント上で、以下のステップを踏むことで登録できます。
--Step0. 登録したいオブジェクトの傍に移動する。
--Step1. 「/where」する。クライアントの発言欄に「マップ名:(xxx、yyy)」というような表示がでます。
--Step2. オブジェクトの名称を発言する。上記Step1でのマップ名出力の直後の行に、この発言名称が表示されていることを確認する(もし他の発言などが割り込んでいたら、Step1からやり直し)。例えば、こんな感じ。
 港町ラザーニャ(lasagna) : 240, 239
 ドラクロワ鏡 : 集合場所
--Step3. 「/savechat」する。
-上記操作によって、「キャラのいる位置(xxx,yyy)」に「発言した名称」を持つオブジェクトが登録されます。~
その際、メモ欄には「自動登録」というコメントが入ります。
-例えば「イズルードの弾丸販売者」を登録したい場合、そのNPCの隣にいる状態で「/where」「弾丸屋」「/savechat」と発言入力すればよいです。~
--通常NPCなどのオブジェクトと同じセルには移動できないので、厳密は「がんばっても1セルずれた」情報が登録されることになります。~
現実的にはほぼ問題ないと思いますが、必要に応じてオブジェクト管理画面上で再編集してください。

#enddivregion

#divregion(方法3:ROクライアントからの登録、その2)
-この方法を行う場合、「キャラクター名登録」が必要です。
-ROクライアント上で、以下のステップを踏むことで登録できます。
--Step1. 「xxx,yyy style=sss size=zzz」のフォーマットで発言する。~
後半の style,size は一部/全部省略しても大丈夫です。
 ドラクロワ鏡 : 242,238 style=32 size=7
--Step2. 「/savechat」する。
-上記操作によって、発言した「xxx,yyy」に、この「登録を行ったキャラクター名」でオブジェクトが登録されます。またメモ欄に「一時登録」というコメントが入ります。~

#enddivregion


//#divregion(方法4:拙作のRoTresureHuntアプリと連携。)
//-ROTreasureHuntでの解析結果で「座標」解析がなされた場合、その座標にオブジェクトが登録されます。
//-この方法で登録されるオブジェクトは、名称は「ROTR連携」、またメモに「一時登録」が記録されます。
//#enddivregion

''補足''~
+全ての方法に共通で、「同じ名前のオブジェクト」は登録できません。~
もしそのような登録を行うと、古い情報が失われ・上書きされます。
+メモ欄に「一時登録」と記載されている場合、そのオブジェクトはファイルに保存されない「一時的」な登録です。たとえ「Save」しても、「Load」しなおすと消えてしまいます。~
--長期的に残したい場合、この「一時登録」というコメントを削除してください。

#divregion(番外:ROクライアントのメモとの連携(インポート))


-ROクライアントの標準の『拡大マップ上に利用者独自メモを置く』機能で設定した情報をインポートすることができます。事前にRO画面上でいろいろ登録しておけば一気に設定できるので便利です。
--RO上での登録は、公式情報を参考にしてください。~
[[3月15日パッチ内容について| ラグナロクオンライン公式サイト>https://ragnarokonline.gungho.jp/news/play/kue8e6000001ujsz.html]]
-CAの「初期設定」タブ内、「ROクライアントメモ」の [インポート]を実施することで、当該マップに登録されている情報を取り込むことができます。

#enddivregion