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

再使用不可

この1年に追加されたキャラの基礎データを入力していると、いくつかのキャラのアビリティに「再使用不可」となっているアビリティが散見される。現在少なくともどのアビリティも再使用可能という前提だったので、初期使用間隔はnot NULLの正数しか指定できないようになっている。

NULLを許容したり、負数を導入するなどすると、表示関連のロジックも変更しなければいけなくなる可能性がある。「再使用不可」という注意書きは、備考などに記載し、データ上は「0ターン」とするか、「999ターン」とするかのどちらかで逃げたいところ。

ひとまず、999ターンとして入力して置く事にして、表示上などで問題がでたらそのとき又考える事にする。

噓だったw
十天衆の4アビとか、そもそも再使用不可だったので、ちゃんとその仕組みを仕込んであった。再使用間隔にNULLをセットすればいいようにしてあった。これは取り消し。

複数種族対応完了

基礎データの入力が順調に進み、最新データまで完了する事ができたので、該当するデータ(今回は、スタン&アリーザ)をDBに入れて動作確認をしてみる事にした。

結果から言うと、問題なく動作した。
エルーン(スタン)/ドラフ(アリーザ)のどちらを指定しても、あるいは両方指定してもきちんと該当データが表示される事が確認できた。念のため、エルーンとドラフの両方を指定しても問題なくリストアップされてくる。

懸念だったのが、キャラデータのアイコン表示だったが、特に変な感じにもならず、このままでもいいかもしれないと思った。ただ、デザインは色々と崩れるケースがあるのと、スマホ表示については正直不安も多いので、データ入力し終えたところで再度確認が必要だろう。

とり合えず、複数種族と性別が複数あるデータ(スタン&アリーザとゼタ&バザラガ)も問題なく使えるようになったので、本件はひとまずクローズする。

複数種別/性別

一部キャラ(スタン&アリーザ、ゼタ&バザラガ)で、種族と性別が2種類あるものがあった。ウーフとレニーは実質ウーフだけだし、レヴィオン三姉妹とかは種族も性別も一致していたが、この2キャラはそれぞれ異なるものを持つ。
したがって検索条件もそれぞれでHitしないと意味がない。多分、SRのモルフェとヴェトルもそうなんだろうけど、これまでSSRではいなかったので対応できていなかった。

当面、得意武器と同じ対処方法でいく予定だが、表示については検討が必要になるかもしれない。スペース的には余裕があるから問題無いかもしれないが…。少なくともレイアウトは多少手を入れないといけないだろう。

テーブルの変更と、SQL部分は修正終わったので、データを入力して確認したい所だが…、基礎部分のデータ完了後にしようと思う。(アビ詳細データは一部でも構わないが、基礎データはそうもいかない)

テーブルが変わっていく

十賢者のカイムのデータを入力しようとして、カイムのアビリティが8種類存在(サポアビなど含めれば12種類)する事を知った。実際の使われ方としては、第3アビリティが条件によって4種類の別の働きをするアビリティに変化するという事なので、データを増やすのではなく、別アプローチで解決する事も可能だったかもしれない。
(例えば、同じアビリティIDでもバリエーションを設けるなど)

ただ、そうするとバリエーションの扱いについてのロジックが必要となるし、処理が増えればその分表示も遅くなる。という事で、単純にアビリティを従来の6から8に増やす事にした。列が2つ増えても全体のキャラ数が300に満たない以上、大きなデータ増にはならないし、そんなに負担にはならないだろう。

しかし、JOIN数が異様に増えてしまっているので、詳細データ表示画面のパフォーマンスについては今後注意しておく必要はあるかもしれない。

取り合えず、テーブルの変更とデータへの列追加、検索関数のフィールド追加と、表示画面のショートコード埋め込みは完了したので、後はまたデータを入力して確認するのみ。現状データの表示には問題無い事は確認したので、ひとまずデータ入力を進める事とする。

対応と確認完了

アーカルム賢者の3つ目のサポアビ対応は、あまり手間かからずに完了。マリア・テレサのデータを入力して検索と結果画面表示もちゃんと表示される事を確認。
これで、引き続きデータ入力を進めていける。

ただ、表示形式について(特に「サブメンバー時」「バトル登場時」)については、もう少し吟味したいところ。全体的に表示形式は吟味したいが…、まぁそこらへんはセンス無いから諦めてるけどw

また、「サブメンバー時」とか「サブでも有効」とかのサポアビが多くなってきていて、検索条件でそれらを盛り込みたい気がする。(エッセルとかリミイオとか、刻印関連とか)
「その他」の項目で、「サブメンバーでも効力を発揮」とかの項目を追加して、該当するアビ(サポアビ)に追加しようかな。

一通り終わってからでもいいけど、忘れちゃいそうだから、ここから入力するものに関しては追加しておこう。

検索条件の入力

今日、ブレイブグラウンドの発表があり、そこで「回避」が有利との事で、検索で回避持ちキャラ(風)を検索しようとした。しかし、回避には「回避」そのものと「回避率UP」の両方がある。効果としては別なので、当然別項目になっているのだが…。

検索する場合は、「回避」または「回避率UP」のどちらかを持つキャラを検索したいと思うだろう。となると、現在のプルダウンでの条件指定ではよろしくない。

という事で、複数条件での検索ができるように、リストボックスなどの条件入力をできるようにする必要があると考えた。ただし、状況入力の為のフィールドが大きくなるとそれはそれでレイアウトが難しい。プルダウンとリストボックスを切り替えて表示できるようにする必要があるかもしれない。(タブやスイッチで切り替え)

プルダウンは単一検索、リストボックスはAND/ORでの複数条件検索。
カテゴリが異なる条件を複数指定できるようにしたいか、単一カテゴリ内のみで良いかは検討が必要だろう。あるいは上位カテゴリでの検索ができるようにするという方法も考えられる。(その為のコード体系だし)
その場合、「AND」では無く常に「OR」で検索(いずれかにヒットするもの)という形にせざるを得ないが、用途としてはそれでも十分な気もする。

いずれにしても、アビリティ種別の複数条件検索自体は必要と認識したので、今後の課題としておきたい。

問題発生

いや、単に課題が一つ浮かび上がったという事だな…。
これまではサポートアビリティは全員2つまでだったのが、アーカルム十賢者は全員3つ持っている。(通常、正位置、逆位置)
テーブル(chara_samarry_tbl)も当然2つまでしか想定してなかったので、カラムも2つしか用意していなかった。2つ目のカラムを使おうかとも考えたけど、やっぱりカラムを追加する事にした。

影響があるのは、テーブル自体とこれまで入力していたデータ、それと検索プログラム。

まず、テーブルはツールを使って動的にカラム追加を実施。追加したカラムには自動的にNULLが入るようになっているので、データ自体の不整合は起きないのでよし。次に実際のデータ(CSV)にカラム追加し、NULLデータを列記。これも特に問題は無いだろう。

プログラムは、page_detailview.phpのカラム名を列挙している所に追加したカラム(ab_id_sup3)を追加する。そして表示用の固定ページのWPソースに3つ目のサポアビの表示を追加。

対応はこれだけで済んだ。まだ賢者のデータを入力していないので、ちゃんと動作するのかは確認とれていないけれど、カラムの追加などで従来処理がおかしくなったりするような事は無いようだ。気にはなるので、1人だけでも賢者のデータを入力して確認したいと思う。

一区切りついた

と言っても、全キャラ255のうち193キャラ分が終わっただけ。
そこまでは、基礎データが入力できてたから、そこまで終わったというだけの話…。
ここから、又残り58キャラ分の基礎データから打ち込み始めないといけない。とは言え取り合えずの区切りに辿りついたのは確か。

一部のデータで画面がおかしくなったり、キャラ調整の結果が反映されていなかったりなど、データだけじゃなくまだやる事は多い。まだ年内少しあるし、残りの期間で基礎データの入力までは終えたい。

データの入力と調整キャラの修正も急がないと、ベータ公開用のドメインが1月末で失効するので、その後どうするかを含め検討もしないといけない。1月中完了目処に設定しないといけないだろう。

ベータ公開用のサーバーを新規に取得し、そちらへ環境を構築し、そちらをベータ公開。そして現行のサーバーのドメインを正式に取得して、そちらを本番環境用に構築し直す。という方針で行こうかな…。

リッチリンクへの対応

ツイッターやブログへサイトを埋め込もうとした際に、もうちょっと見栄え良く埋め込まれるようにしたいので、どうやればいいのかを調査しておきたい。
OGPの設定をしておけばいいと思うが、WordPressでどう設定すればいいのかは良くわかってないので、その辺りを調査する必要がある。トップページだけでなく、個別の検索画面などに設定できるのか?などもあわせて調べて設定しておきたい。

データについて

奥義の追加効果の有効ターン数に関して、どこかに注意書きをしておく必要があるかもしれない。現状、有効ターン数は「奥義ターンを含めず、次ターン開始時点」のターン数で入力している。
WiKiなどでは「奥義ターンを含める」とか「1+1」などの表記もあるが、記載が無いものも多く、表示上は揺らいでいる。どちらがいいのか、正直悩むが、ゲーム内では奥義で付与されるターン制のデバフは、奥義発動ターンを含めないような表記になっている。
(実際は発動ターンから有効になっているが、「2」と表示されているデバフは、奥義の次のターンから「2ターン」有効)
なので、ゲーム画面の表示とズレないように、「奥義ターンを含めない」で統一する事にしたい。

そこで、検索画面か結果画面のどこかに、追加効果の有効ターン数についての注意書きを設ける必要があると思う。どう表示させるかは要検討。