日記/2016-09-24
雑記:ChatAnalyzer0.06 メモ。†
というわけで、いくつかバージョンすっ飛ばした、補足メモ(笑)
比較的わかりやすい話も多いので、 リリースノートから読み取れることもあるかと思いますが、いちおー。
履歴保存まわり。†
アイテム管理画面で、右クリック→「保存」とすることで、そのアイテムの名前をファイルに保存できます。
もともとの狙いは、このアプリを使ってくれていない(笑)友人向けの機能です。
ROでは、今まさに実施されているような『参加キャラ全員にランダムアイテム配布』というようなイベントがときどきあります。
その友人、そういうイベントではわりとマメに『何を獲得したか』をメモっているんですね。
現状その友人がどういう『具体的な作業』をしているかは、もちろんわかりませんが。
普通に考えると、獲得アイテム名をROクライアントの画面で目視確認して、保存用ファイルに自分で手動入力しているはず。
当然長い名前のアイテムではそれだけ大変ですし、タイプミスなんかもあるでしょう。
で、今回の対応なわけです。
これによって、/savechat →右クリック保存とするだけで、履歴が残せる。
アイテム鑑定する場合、それを『倉庫/カート/ドロップ』などの手間が発生しますが、それでも一生懸命タイプするよりは楽なはず。
savechat で切り取り線†
ある意味当たり前というか、盲点的だった追加作業です。
ROクライアントの /savechat で保存されるのは、そのときにチャットウィンドウに表示されている文字列です。
で、チャットウィンドウは結構な行数をバッファできるので。
『以前に/savechat した』ときに表示された獲得アイテムが、次の/savechat でも表示されちゃうんですね。
で。/savechat するたびに「xxx saved.」っていう行が追加されるので。
これを『切り取り線』にすることで、一度表示された獲得アイテムを次以降の savechat で無視できるわけです。
生成物対応。†
文字通り、『Vice.Chaosの白ポーション 20 個獲得』というチャットから『白ポーション』を取り出す仕組みです。
わりと機械的に『^.+?の』正規表現(xxxの、を切り出す)で切り捨ててるだけですが。
必要以上に削ってはいけないので常に『切り捨てる前に該当アイテムがあるか』を常にチェックする手間があります。
- 例えば、以下のようなケースがあるので、無条件に『xxxの』を切り捨てるわけにはいかない。
- 戦慄のカタール [2] と カタール [2]
- 熱帯のバナナ と バナナ
また、キャラ名に複数の『の』が使われていることも考えられるので、繰り返しの仕組みも必要。
極端な例では『ののののかの赤ポーション』とかありうるわけです(笑)
で、作ってて思ったんですが。
今回の『名前』の場合スペース区切りとかがないので、変な自作可能アイテムがあると誤検出しうる問題があります。
例えば、現状『シューズ』を作成する手段はないですが。
もしこれを作ることができると、『サバフ』というキャラがそれを作ると『サバフのシューズ』という名前ができてしまいます。
そう、アーティファクトにありますよね、これ。
詐欺行為に直結する話なので、運営側も配慮はしているとは思います。
とはいえ、ゼロではなさそう。
気づいた範囲では『退魔神の』とか『審判の』とかはあり得る。
大丈夫なのかな。
脱線したので、以上ということで。
ご意見などがあれば。