【最新記事】⇒仮公開開始(2019/02/07)

消去/回復不可の効果を表示する

アビの中には、消去や回復が不可なバフやデバフが存在するが、現状それらは実際にアビを使ってみないとわからないものも多い。(説明に明記されているものもあるが、されていないものもある)

効果一覧(アビ詳細)を見た時に、どの効果が消去可能かを見られると嬉しいと思うが、現在はそのような情報を一切持っていない。そこで、データにそれらの情報を追加する事にした。

アビ詳細の「効果」部分のレイアウトも見直して、消去/回復不可がわかるように変更したい。まずはデータの入力が必要なので1から全てデータを見直して行く。

あわせて、それらの効果の有効ターン数も表示させようと思う。しかし、現状は奥義で付与されるバフ(デバフ)の効果ターンは「奥義発動ターンは含まない」状態で入力してある。ただ、そのデータも一部WiKiから参照したもので、そのデータも揺らいでいるケースがある。なので、可能な限り全てのバフの効果時間を確認して、データも「奥義発動ターンを含んで」として入力しなおすことにした。

さらに、現状英語データの「注釈」が抜けているものが多く、特に「バフ/デバフ名」が漏れているものが多い。そこであわせてこれらのデータも確認しながら追加していく。

現状、データの入力は進めているが、1件ずつ確認したところデータのミスでエラーになったり変な表示、別キャラのデータを表示する…など、酷い状態になっているものが多かった。
(情けない)

そこで、これ以降全てのデータも確認して(とりあえず)完全な状態にしてFixさせておきたい。膨大なデータではあるけれど、漏らさず確認するように頑張ろうw

自由検索が欲しい

キャラ数が増えてきて、特定条件での絞込がしたいものの、例えば「特定バフの付与」だと、あまりにも候補が多すぎて絞り込めない。(例えば、今回のアーサーの「感電Lv」が他に誰が持ってたか?とか、ユエル達の「狐火」とかも)

となると、奥義やアビの説明文から自由検索をしたいと思うのは至極当然ではなかろうか?

やるとしたらどうするか。
SQLは別に問題ない。後SQLインジェクションとかサニタイジングなど入力欄を設ける事で考えなくてはいけない事があるので、それの対策が一番必要となる。それさえクリアできれば、後は仕様をどうするかにかかってる。

入力項目として、テキスト(日/英)欄。絞込条件は他の条件と同じで良いだろう。検索条件とテキストはandまたはorで両方有効にすべきか、自由検索を選択したなら他の条件は無効にするかは要検討。
画面にテキストフィールドを追加し、プルダウンのブロックとラジオボタンで活性/非活性を切り替えて、どちらか一つしか有効としないのが一番楽だとは思う。

日本語は「日本語情報」、英語は「英語情報」に分けるべきか、ここも要検討。
検索結果は、従来通りの表示で良いが、日英一緒に検索すると、日本語には無い単語でHitしたデータも表示されてしまう。その場合、検索結果やキャラを表示させても指定した単語は表示されない事になる。と考えると、日本語画面では日本語データ、英語画面では英語データのみを検索対象とするのが自然なように思える。
検索結果に該当部分の単語を含む、前後数文字を表示させるのも手だが…、検索結果画面までいじらないといけなくなるので、それは当面考えないことにしたい。

検索は2文字以上とするとして、単語以外のものをどうするか…と言っても、弾くのは現実的に難しい。かと言って候補を出すのも難しいだろうな…。リアルタイムで候補を抽出しプルダウン表示させるのもアリだろうけど、それをやった時のレスポンスやサーバー負荷が心配なので、最初は考えない事にしたい。(試してはみたいが)
文字数の最大値も考える必要がある。何文字が最適か。
また、空白を許可して複数の単語で検索するというのもあった方が良さそうではある。そうすると、単語をorかandで検索するオプションも必要になるだろう。それに応じて文字数の最大値も考慮する必要がありそう。

現状のstatテーブルは、検索条件をカウントしているが、自由テキストで検索条件をカウントすべきかどうか。検索対象のキャラやアビはカウントされるので特に変更はしなくてよい。条件をどうするか…だけ。statテーブルはどうせ俺しか見れないものだし、特に凝る必然性があるとも思わない。それに、自由文字列の場合は文字が一意に絞り込めるとは思えないので、レコードばかり増える懸念がある。
ただ…、どういうトレンドで検索しているのか…は把握できるのであった方が良いかもしれない。現状の利用数なら別にレコードが多少増えようが問題ないし、将来オフにすればいいだけだから、データ収集しておく方がいいかもしれない。要検討。

思い立った時にやるのが吉だろうから、近々仕様を決めて手を付けたい。

ツイッターカードを日英それぞれに用意する

現在、ツイッターカード用の記述は、functions.phpに記述している。
タイトルや概要はサイトの「title」と「description」から取得しているのだが、タイトルはともかく概要は、特段設定していないせいか、それぞれの検索画面の一番上にあるテキストの先頭何文字かが表示されてしまう。さすがにこれではアカンだろうと思うので、ちゃんとした概要を表示させたい。

そもそも、固定ページ用のPHPをそれぞれ作成してあるので、ogp設定もそれぞれ行えばいいのでは?と思っている。

…思っていた。さっきまでは。

そもそもの話として、サイトに「概要」をキチンと設定できていないことが問題なのでは?と思い当たる。
get_bloginfo(‘description’)
で取得される文字列がちゃんと設定できていれば、問題ないように思われる。まずは、それをちゃんと設定する事から始めよう。

…どこで設定するのだろう?固定ページの編集画面でいいのだろうか?まずそこから調べよう。

ブログ投稿に画像を添付

盛んに、ルリアノートテキストの情報提供を呼び掛けているものの、基本的にツイッターやメールなどでは「身バレ」してしまい、気軽に情報提供できない人がほとんどだろうと思っていた。なので、以前からコメントに画像を添付できないかな?と思っていたのだが、今回「DCO Comment Attachment」というプラグインを導入して解決した。

実際に試してみると、サムネイルとして表示されるサイズが大きくなってしまうのだが、どうやらこれはtwenty seventeenがなんかしてるんだろうと思う。となると、手を出すにしても結構な手間もかかるので、現状このままいくことにした。
(おそらく、メディアはブログの表示幅に合わせて表示されるようになっているのだろう。そこを直すには、CSSとかプログラム側でなんかしないといけないっぽいが、その手間と現状を考えたら、このままで良いだろうという判断)

大量に投稿されたらサーバーのサイズ制限や、ファイル制限に引っかかるので、逐一注意が必要だろう。メールの見落としなどが無いようにしなければと思う。

しばらくこれで運用してみる。問題があれば臨機応変に対応していこう。

細かいけどやっときたい事

ツイッターカードというものがある。
URLをツイッターで引用する時、サムネイルと紹介文がカード形式で表示されるという奴。

現状、最低限のものを設定しているんだけど、どういう状況なのかはわからないけれど、うまくサムネイルが表示できない事がある。想像でしかないけれど、URLの末尾がスラで終わってるか否かで変わっているようなので、設定しているサムネイル用の画像フォルダがうまく成立できてないんじゃないかと想像する。

つまり「https://www.3channnel.work//wp-content/…/logo.png」みたく、スラが重なってしまっているのでは?と思ってる。なので、URIを取得するhome_uri()関数の末尾が、状況で変化してるんだろうなと考える。

てことで、末尾がスラ付きなのか判断して、URIを生成するように直す必要がある。(今はサボってそのまま結合してる)

もう一つ、ページの説明文が現状は検索ページトップのテキストが単に表示されているだけになってしまっているので、それをちゃんとした文章にしておきたい。

ただ、現状はfunctions.phpにこれらの記述をしているため、日/英を切り替えて表示させるには、今表示されているページがどちらかを判断する必要がある。でも、そもそも日英でトップページ分けていて、それ毎にphpも作ってあるのだから、それぞれで紹介文のみをセットすりゃいいんじゃないか?と思っているのだけど、うまくできるか試してみないと良くわからない。

いずれにせよ、この部分をちゃんとしたいと思っている。

あわせて、ロゴ何とかしてーなぁ。なんとなくなイメージがわいてきているので、それを形にしてみようかな?作ったら、一度運営さんにそれで利用していいか聞いてみた方がいいよな。

よし、この古戦場が終わったら、色々やってみるんだ!

改修その3

更新のお知らせを書いている際にふと思いついた。

フルオートの対象になるアビだけ絞り込めると便利かな?

フルオートで除外されるのは、回復アビ、再使用間隔が0ターン、特殊選択を含むもの。このうち、回復アビに関しては今回の改修で除外できるようになった。再使用間隔が0ターンというのは、既にデータとして保持しているので導入は簡単にできそう。

ただ、特殊選択を含むものというのは簡単では無いなぁ…。自動発動と同じく、そういう属性を持たせれば簡単ではあるのだけど…。またデータ全体を見直さないといけないし、全アビを確認しながらやらないといけないから、ちょっと大変かもなぁ。またフィールド増やすのもどうだろう?何かいいアイデアがあればいいが…、変にこねくり回しても後々大変だから、やっぱりシンプルにやるのが一番かな。

また時間作って考えよう。

改修その2

前回、今後改修したい項目についていくつか記載したが、さらにいくつか。

先日実装されたベリアルHLでは、アビによるスロウでペナルティが発生するらしい。しかし、奥義の追加効果によるスロウなどは該当しないとの事。

となると、前回上げた「奥義時」で絞込ができると、上記のようなケースで検索の利便性があがるのでは?と思う。

それに加え、現状では奥義の追加効果やサポートアビリティなどで、特殊条件下でアビリティが再発動するものがある。上記のようにベリアルHLで自動発動するアビリティでペナルティが発生するかどうかは未確認だが、「自動発動するアビでスロウ効果を持つもの」のような検索をしたいケースがあり得るかもしれない。そこで、「自動発動するアビリティ」を別途、絞込条件として設定できるようにしたい。

しかし、現状では「自動発動」と「複数回発動」が同じIDの為、このままではうまくできないため、データからこの2つを分離する必要がある。(14020を14020と14021?に分ける)

件数としては相当数(200件以上)あるが、今後を見越して修正しておきたい。

今回は、「自動発動」「奥義など」と効果の組み合わせだけなので、UIを大きく変えずに対応しようと思うが、今後条件の組み合わせも欲しくなるかもしれない。もっとも利用者も多いわけではないので、そんなに無理しなくていいかな…。

「奥義/強化/弱体/攻撃/回復/サポアビ」は、純粋に「絞込」として追加すれば良い(フィールドが異なる)が、「自動発動とその他」の組み合わせは、同じフィールドなので同じ対処ではできないと思われる。やや難易度が高いように思えるので、段階的に対応していきたい。

改修のメモ

この間、寝る前に考えた機能改修案をメモ。

検索の絞込みに
・奥義
・アビ(強化、弱体、攻撃、回復、その他)
・サポアビ/リミアビ
も絞り込めると便利かもしれない。特に恩恵があるのは「奥義」で、奥義の追加効果を検索し易くなるのでは?
フルオートとかで使えるキャラを検索するのに、役立ちそう。

もう1つ、キャラ数が増えてきて、効果内容だけでは確実に50件を超えてしまう。であるなら、最初から属性は絞り込めてもいいのでは?
わざわざ絞込み画面を開かないと属性を選択できないのでは手間がかかってしまう。属性だけでも初期画面から選択できるようにした方がいいと思う。

そろそろ、アビの効果ターン(または時間)を表示したい。ただ、それをやるには奥義で付与されるバフのターン数について明確にしておく必要がある。今の所データ上は「奥義発動ターンを含まず」に入力しているが、最近は2回行動とかも多く、奥義発動ターン自体も計算にいれた方が良いような気はしている。
元々、ターン制のデバフの数値が奥義発動ターンを除いたものになっている(ような気がした)からそうしているのだが、表示よりは実利を取るべきだと思う。その為にも、一律でデータを直す必要がある。

今の所、こんなところかなー。絞込みは多分それほど難しくない。絞込み画面を改修するなら、1と2はセットでやった方がいいだろう。今度時間を取ってやろうかな。

機能UPあれこれ検討開始

やりたい事一覧

・キャラ情報にカテゴリシリーズを追加
 現状2枠まで設定されてるみたいなので、キャラ情報(詳細)に2枠横持で追加。データは固定値だが、別TBLで管理するか(今後増える可能性あり)、単に数値だけにするか…。
 数値と表示データを一元管理するならテーブル作るべきなのだが、いちいちSELECTするのもな…。ただ、今後増加する可能性は否めない。少し考える必要あり。
管理用テーブル作って対応!表示データ(日/英)とアイコン識別子を持たせて頭で検索するようにした。今後シリーズが増加しても、プログラムは触らないで増やせる…はずw

・アイコンの更新
 カテゴリのアイコンと同様、いくつかのアイコンがアップデートされてるようなので、それを取り込んで反映。(キャラ種族が「不明」から「その他」になってる)
対応完了!

・絞込み画面にカテゴリシリーズを追加
 これは優先度低
やってしまった…。後悔はしていないw思いのほかスムーズに対応できた。日/英ともに動作したので目的以上の達成かな。

・改行対応
 キャラ情報その他に改行(「CR/LF」)が含まれている場合、タグ(<br />)に変換して表示。
PHPの関数nl2brを使ったら一発でできてしまった。(検索結果テキストから文字列を引っ張ってくるショートコードのreturn値をnl2brで変換して返しただけ)
→アビ詳細画面がまだ対応できてなかった。やり残し無いように。
 →完了

・表示名エリアの調整
 鬼滅の刃キャラのように改行されるとレイアウトが崩れるのでそれに対応。

・キャラ表示情報(アイコン)の更新
 カテゴリアイコンも表示できるようにしたい
対応完了。ただし、横幅が増えてしまったので、キャラアイコンと重なる可能性あり。

・検索結果のビジュアル化
 検索結果を「キャライメージ/キャラ名+情報(レア/属性/得意武器など)+アビリティ情報(名前/Lvなど)」に変更。イメージかキャラ情報エリア選択でキャラ詳細、アビ情報エリア選択でアビ情報をそれぞれ開くように変更。
 同時に検索結果件数については要検討。従来通り50件の情報を作っても性能的に問題ないか確認が必要。遅くなる場合はディレイさせる必要がある。
大枠はできた。後レイアウトに不満が残るので、調整が必要。今の所遅くはなってないけど、スマホでもう少し確認は必要かもしれない。

・本サイトのSSL化
 先日は何故かうまく行かなかったので、再度チャレンジ。

取り合えずこんなところかな…。順番にやっていきたい。

無料SSLの設定

開発用のサイト(これ)を、無料SSL設定してみた。
MainURLには設定できないとなっていたけれど、何か設定できてるな…。
アクセスしてみても、取り合えず鍵マークはついている。Edgeとかで見てみないと漏れてる部分があるかもしれない…にしても、これでいいのかな…。

プログラム部分でhttp:としてアクセスしてる所が残ってるかもしれないし、その辺りも含めて、一度全部確認したい。

でも、これでいけるのなら、ブログもサイトもhttps化できたという事になるので、追加費用無しなら万々歳かもしれない。

ただ、2021年以降、Android7.1未満の端末ではエラーになるようだから、その時どうするかは又考えないといけないのかな…。

いずれにしても、この状況でしばらく様子を見て、問題ないようなら公開サーバー側も変更してみよう。