MISTOVER メモ

MISTOVERについてのメモ
Nintendo Switchでのプレイ記録なので、他のコンソールでは異なる可能性があるので注意。

隊員やスキル構成について

このゲームでは戦闘スキルの取捨選択がめっちゃ難しい。
ボス戦も雑魚が多く出てくることを考えると、複数の敵を同時に攻撃できる技は有効に思える一方で、レベルが低いうちにみんなで複数敵を狙う技を連発すると、技のレベルが足りず、敵の回避率やガード率が高すぎて、反逆にビクビクすることになる。
一応おすすめは、五人のうち二人くらいは複数敵を相手にできる技を持っているんだけれど、それに頼り切るというより、それが戦闘スピードを速めてくれるくらいのバランス感がよい。

上記を踏まえた上で、以下は現状で把握しているかなり有効なスキル:

  • シャドーブレードの爆砕
  • ウィッチのカオス☆ブラスト
  • シスターの溢れる愛
  • シスターの安定した雲

爆砕はかなり珍しい複数敵をターゲットにした出血技。序盤から活躍してくれたし、中盤を過ぎた現在もとても便利。縦一列を攻撃する爆砕に対して、横一行を攻撃&ATK減少の打剣と迷うところもあるが、シャドーブレードはロウニンやウェアウルフほどは火力が出ない、あくまでも特殊攻撃担当だと思うと、継続的にダメージが与えられるのはなかなか便利に使える。
ウィッチは攻撃後にしょっちゅう動き回る困ったちゃんだし、カオス☆ブラストも決して万能ではないんだけれど、最終的には最大5体の敵に140%のダメージがガンガン出せるのは大きい。欠点は、十字範囲にダメージを与えると書いているんだけれど、十字の真ん中に必ず敵が必要であるということ。純粋に縦一列や横一行ではないから、敵の数が少ないときは単体攻撃とあまり変わらない。

シスターの溢れる愛はほぼ必須というか、なぜこのゲームはシスターしか回復役がいないんだろうか、という感じ(キャラが育ってくるとある程度シスターxオンミョウジの連携技や個人技の回復促進効果などでなんとかできるが、、、)。
さらに安定した雲は出血によるダメージがバカみたいに多い本作ではかなり重要。安定した雲 3から縦一列の出血回復、安定した雲 5ではなんとパーティー全員の出血が解消される。
中盤、ある程度余裕が出てきて低レベルキャラのレベル上げに付き合う時などは最後の祈りがあると助かるが、必須ではない。

序盤は多少の使いづらさもあるものの、影武者を覚えてからのロウニンは光るものがある。 影武者で範囲技を放てるので、がんばって敵一体を瀕死にして毎回お膳立てする必要がないのが楽になるため。

そんなわけで、現状の必須メンバーは

  • ロウニン(前衛)
  • シャドーブレード(中衛・ロウニンの真後ろ)
  • ウィッチ(中衛・シャドーブレードの隣)
  • シスター(後衛)

という感じで、オンミョウジでサポートを厚めにしたり、ウェアウルフで火力を増したりして最後の一枠を使っている。
ロウニンやシャドーブレードはまだ換えが効くものの、ウィッチの敵全域に攻撃可能であることと、シスターの回復はどうにも代替が効きづらいので、この二人は必須と言ってよいかも。
ウェアウルフは探索のアクティブスキルの使い勝手が悪いので、ロウニンを優先してしまいがち。あと、烙印は強いけれどそこまでのターン長引く雑魚戦はほとんどないので、ボス戦のみで有効な概念になってしまっている。仲間の烙印を集められるけれど、そしたらすぐ死んでしまうだろうしなあ、、、。最後の祈りと組み合わせてタンク扱い?)


訓練場

戦闘スキルの訓練

戦闘スキルのレベルアップを行える。
もし特定の隊員が覚えていないスキルを他の隊員が覚えていた場合、その人が隊を抜けるのと引き換えに、そのスキルを学ぶことができる。

ここで重要なのは、もともと覚えていた人が覚えていたスキルと同じレベルで習得できること。
たとえば、打剣 5を覚えているシャドーブレードAがいて、まだ打剣を未習得のシャドーブレードBがいた場合、シャドーブレードBがAから打剣を習得すると、打剣 1ではなく、打剣 5を覚えられる。
このゲームでは安易なレベル上げが世界を滅ぼす要因になりかねないので、上記情報は優秀な隊員を育てる上で重要なポイントになる。

残酷な話をすると、調査隊の雇用拡張を Lv. 4まで進めると、Lv. 10でいろんなスキルを覚えている隊員がスキルポイントを4つくらい余らせてゴロゴロ出てくるから、重要な技を覚えていない隊員を一人雇って、その人をベースに他の隊員でスキルレベルをマックスにしたスキルを付与していく、というのが最も合理的な隊員の育て方になってくる。
とはいえ、序盤ではそうも言ってられないので、いくつかのスキルを適宜伸ばしていくしかない。

ジンクスの矯正

体験版ではレベルアップで「必ず」ジンクスが付与され、かつ訓練場で矯正しても、必ずしも良いジンクスになるわけではない、という鬼仕様だったけれど(そっちの方がリアルだったけど)、製品版では修正された。
浄化された霧というアイテムを使う。

当然だけれど、悪いジンクスは即時矯正する。
その上で、さらによいジンクスを求めていきたいところ。

  • 「そこでは〜」という、あるステージ限定で効果を発揮するもの
  • 「〇〇時、〜」という、なにかが起きた際・ある条件下で効果を発揮するもの
  • 「常に〜」という、状況を問わず効果を発揮するもの
  • その他特殊なジンクス(勝利ボーナスHPなど) の大まかに四種類のジンクスが存在する。

基本的には、「常に〜」が出るまでガチャを回すのがよいが、「〇〇時、〜」でも場合によってはよい。
場合によっては、と言うのは、超前衛型であるウェアウルフやロウニンが「後衛の時、〜」とかなっていても意味がないので、内容に合わせて判断する(配置はずれることが少なくないので、「中衛の時、〜」くらいなら良いと言える)。


錬金術工房

鑑定

森の霧や神聖の霧などの「〇〇の霧」というアイテムを使って鑑定する。
種類を問わず、Rareならひとつ、Epicならふたつ必要。
合成をするときにはなんの効果を各アイテムが持っているかを把握することが欠かせないので、確実に鑑定を行っておいた方がよい。
とはいえ、鑑定できていないからと言って問題があるわけではないので、アイテムとしては未鑑定でもどんどん使える。

合成

本作でもっとも説明が足りない要素のひとつ。
森の霧の精髄や神聖の霧の精髄など、「〇〇の霧の精髄」というアイテム(とお金)を使って、アイテム同士を合成する。
ちゃんと活用するとめちゃくちゃアイテムが強くなる。

  • 武器ならATK・HIT・CRI、防具ならHP・EVD・GRD、アクセサリはその種類ごとにひとつの強化要素と弱化要素が備わっており(→標準パラメータと呼んでみる)
  • さらにRareならひとつ・Epicならふたつのパラメータが付与されている(→追加パラメータと呼んでみる)

たとえば、武器と武器を合成すると、材料にする武器のATK・HIT・CRIの三要素に応じた数値が加算される。
ここで重要なのは、Normalではないアイテム同士を合成する場合、もし合成元と材料のそれぞれが同じ追加パラーメタを持っていると、それらも加算される(Epic同士の合成で追加パラメータが二つとも同じ場合はどれかひとつだけ)。

上記を踏まえると、以下のような戦略が有効↓

  • 基本的には、Normalの武器・防具・アクセサリはそのまま売ってしまって問題がないけれど、標準パラメータの底上げに使ってもよい。とはいえ合成回数はEpicでも9回しかないので、基本的には無駄遣いできない。
  • RareとEpicはたとえ弱いアイテムだったとしてもとっておくと、同じ追加パラメータを持つアイテムが出てきたときの有効な合成素材として使える。
  • 武器は武器同士、防具は防具同士で合成するのがよいが、アクセサリだけはアクセサリ同士で標準パラメータも追加パラメータも揃うことは稀なので、武器や防具を素材にすることを考えてもよい。特にEpicならRareの武器や防具を素材としてでもよいのでバンバン強化していくと、頼もしくなる。

調査団支援事務所

サポートを要請する

満腹度の拡張
満腹になるまでの上限を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 最大400の満腹度まで
Lv. 1 断食の日誌 x5 最大480の満腹度まで
Lv. 2 断食の日誌 x10 最大560の満腹度まで
Lv. 3 断食の日誌 x20 最大640の満腹度まで
Lv. 4 断食の日誌 x35 最大720の満腹度まで
Lv. 5 断食の日誌 x50 最大800の満腹度まで

光輝度の拡張
光輝度を貯められる上限を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 最大400の光輝度まで
Lv. 1 発見の日誌 x5 最大480の光輝度まで
Lv. 2 発見の日誌 x10 最大560の光輝度まで
Lv. 3 発見の日誌 x20 最大640の光輝度まで
Lv. 4 発見の日誌 x35 最大720の光輝度まで
Lv. 5 発見の日誌 x50 最大800の光輝度まで

調査隊の拡張
調査隊に雇える調査隊員の上限を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 10人まで
Lv. 1 人材管理の日誌 x5 12人まで
Lv. 2 人材管理の日誌 x10 14人まで
Lv. 3 人材管理の日誌 x20 16人まで
Lv. 4 人材管理の日誌 x35 18人まで
Lv. 5 人材管理の日誌 x50 20人まで (?)

調査隊の雇用拡張
一度に調査本部に訪れる調査隊員の人数とレベルを増やす。

Lv 必要アイテム 内容
Lv. 0 初期 5人まで・最大レベル1
Lv. 1 採用広告の日誌 x5 6人まで・最大レベル4
Lv. 2 採用広告の日誌 x10 7人まで・最大レベル7
Lv. 3 採用広告の日誌 x20 8人まで・最大レベル10
Lv. 4 採用広告の日誌 x35 9人まで・最大レベル13
Lv. 5 採用広告の日誌 x50 10人まで・最大レベル17 (?)

倉庫のスペースの拡張
街の倉庫に保管しておけるアイテム数の上限を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 150個まで
Lv. 1 ミニマリズムの日誌 x5 180個まで
Lv. 2 ミニマリズムの日誌 x10 210個まで
Lv. 3 ミニマリズムの日誌 x20 240個まで
Lv. 4 ミニマリズムの日誌 x35 270個まで
Lv. 5 ミニマリズムの日誌 x50 300個まで (?)

カバンのスペースの拡張
探索カバンに入れておけるアイテム数の上限を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 30個まで
Lv. 1 整理の日誌 x5 36個まで
Lv. 2 整理の日誌 x5 42個まで
Lv. 3 整理の日誌 x5 48個まで
Lv. 4 整理の日誌 x5 54個まで
Lv. 5 整理の日誌 x5 60個まで (?)

経験値入手の拡張
戦闘に勝利した際に得られる経験値を増やす。

Lv 必要アイテム 内容
Lv. 0 初期 100%の経験値
Lv. 1 成功の日誌 x5 110%の経験値
Lv. 2 成功の日誌 x10 120%の経験値
Lv. 3 成功の日誌 x20 130%の経験値
Lv. 4 成功の日誌 x35 140%の経験値
Lv. 5 成功の日誌 x50 150%の経験値 (?)

ゴールド入手の拡張
戦闘に勝利した際に得られるゴールドを増やす。

Lv 必要アイテム 内容
Lv. 0 初期 100%のゴールド
Lv. 1 金持ちの日誌 x5 110%のゴールド
Lv. 2 金持ちの日誌 x10 120%のゴールド
Lv. 3 金持ちの日誌 x20 130%のゴールド
Lv. 4 金持ちの日誌 x35 140%のゴールド
Lv. 5 金持ちの日誌 x50 150%のゴールド (?)

Processing でファイル変更を監視する

表題の通り。

Java の WatchService を使うと指定したディレクトリに生じた変更をモニタリングできる。 具体的には、WatchService を起動し、監視したいフォルダを指定。その後、WatchKey というオブジェクトに WatchService のイベントを随時保存し、それに変更がないか、変更があった場合はどのようなものか、をチェックすればよい。

一番下の「参考」 に貼ったブログを基本的には元にしているが、Processing 表記にするため多少変更している。

以下、実際のコード:

import static java.nio.file.LinkOption.NOFOLLOW_LINKS;
import static java.nio.file.StandardWatchEventKinds.ENTRY_CREATE;
import static java.nio.file.StandardWatchEventKinds.OVERFLOW;
import static java.nio.file.StandardWatchEventKinds.ENTRY_DELETE;
import static java.nio.file.StandardWatchEventKinds.ENTRY_MODIFY;

import java.io.File;
import java.io.IOException;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.WatchEvent;
import java.nio.file.WatchEvent.Kind;
import java.nio.file.WatchKey;
import java.nio.file.WatchService;

WatchService watchService;
File dir;
Path path;
WatchKey watchKey;

void setup() {
  try {
    watchService = FileSystems.getDefault().newWatchService();

    dir = new File("/Users/Ken/Desktop");
    path = dir.toPath();
    path.register(
      watchService, 
      ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY
      );
  }
  catch (IOException ioe) {
    ioe.printStackTrace();
  }
}

void draw() {
  try {
    while ((watchKey = watchService.take()) != null) {
      for (WatchEvent<?> event : watchKey.pollEvents()) {
        System.out.println("Event kind: " + event.kind()
          + ". File affected : " + event.context() + ".");
      }
      watchKey.reset();
    }
  }
  catch (InterruptedException ie) {
    ie.printStackTrace();
  }
}

ただ、これは現在非常にラグがある。予想されるのは、watchservice以外の代替があるのではないか、watchservice自体が遅い、などいろいろあるけれど、実質的には別スレッドで定期的にファイル構造を読めばいいだけなので、案外自分で一から書いた方が早いのかもしれない。
暇なときにきちんと見直したい。

参考
- A Guide To NIO2 WatchService | Baeldung

Orange is the New Black

数ヶ月前から Netflix を契約していて、いろいろちょこちょこ見ていたので、考えたことや感想を少しずつ残していこうと思った。

最初に紹介したいと思ったのは『Orange is the New Black』。

Orange Is the New Black | Netflix Official Site 

 

こちら、 Netflix が人気になるきっかけになったドラマのひとつらしい。
アメリカのとある女子刑務所を舞台に、その内外で起こるさまざまな事件が囚人や看守たちの記憶なども交えて語られる。
シーズン6まで公開されていて、今のところ3の途中まで見たので、ここに書くのは基本的にはシーズン1と2のことになる。

いつか『Stranger Things』についても書きたいと思うのだけれど、こちらは異なる人物同士の物語が並行していくつも進み、最後になってもものによっては統合されない(それぞれ単品で終わる)こともあり、思うところも多かったので、シーズンの途中だけれど一旦考えをまとめようと思った。

 

細かいあらすじは Wikipedia に詳しく掲載されているので、そちらを参照してもらって、ここでは考えたことだけをツラツラと書く(ネタバレ注意)。

 

シーズン1は基本的には「基礎」をつくったシーズンだと思う。
シーズンの当初、主人公パイパーはロシア人の料理長レッドに喧嘩を売って、「彼女らしいやり方」で仲直りする。この時点では僕は、「ああよくある異なる環境でも自分の強みを見失わずに〜」的な話かなと思いきや、どちらかというとシーズンを通してパイパーは徐々に変化していく。
具体的に言うと、彼女は「刑務所の外」と同じ状態であろうとし続けていたものの、さまざまな事件を経て刑務所の中で同じ態度を取り続けることが難しくなってしまった上、唯一の心のより場であった「外」とのコネクションも失ってしまったから。

 

ここでおもしろいと思ったのは、ダヤの存在。
彼女はパイパーとは実は真逆の存在で、彼女にとって大事なものはすべて刑務所内にある。
シーズン2でも3でもずっと、刑務所生活が続いた後のことも考えて地道で穏やかな人生のことをずっと考えている。彼女にとってはそれで十分で、そう考えるとパイパーは若干滑稽に見える。もちろん、ここには「家族をつくる」ことが最優先のヒスパニックグループと白人的な自由を謳歌するライフスタイルの差も含まれてはいるものの、この二人の対照的な囚人生活はすごい。

 

というわけでシーズン1はすったもんだがありつつも、いろんな人間関係が少しずつ変化していく。

ただ、これはシーズン2を見たあとだと、ゆっくりすぎると感じるくらいシーズン2は激動だった。

 

ヴィーという新しい存在が刑務所に入ってきたことで、一気に人間関係がはっきりと派閥に別れてしまったから。
黒人(ヴィー)、白人(レッド)、ヒスパニック(グローリア)、無党派(パイパー他)。
それぞれとても興味深い終わりを迎える。

ヴィーは死に、黒人グループは元の仲良しグループに戻る。

レッドは九死に一生を得て、自分のグループをゆるやかに取り戻す。ビジネスは放棄。

グローリアは何も得なかったものの、自分のグループからも誰も怪我人を出さず。

無党派は終始混戦状態のまま、最終的には彼らの敵が刑務所事態であると見定め、これに(ある程度)勝利を収める。


ここで一番おもしろかったのはそれぞれの「家族観」の違い。

  • ヴィーにとって家族は利用するもの。必要なら切っていく。つまり「部下」。
  • レッドにとっても最初はある程度ヴィーと同じだった。このことは、「昔とはゲームが変わった」といいつつも、昔と同じようなやり方でヴィーと対抗した結果大きく痛手を受けたことでも明らか。しかし、そのあとより自律的なつながりへと変化させていく。おそらくこれの一番の原因は仲間が自分についてこなくなり、頼れて守れるべき仲間(家族)の大切を自覚したから。彼女にとっては「仲間」。
  • グローリアにとっては家族は最優先して守るべきものであり、そこに疑いなどはないし、試したり試されたりする必要も感じていない。事実このシーズンで彼女が誰かを疑うシーンというのはない。かつ、自分の家族を超えて慈愛の心があるというのも明らか。

 

ではなぜグローリアはそんなに慈愛が溢れているのか。なぜ他の二人にはできないのか。

この秘密はシーズン3にあると思う。
シーズン3ではヒスパニックグループの一人、マリアが「私たちは家族ではない」と語っている。
つまり、彼女たちは家族ではない。


たしかにグローリアにとっての家族の大切さは仲間のさらに上に行くのは端々で伺えるし、彼女は内は内、外は外、と割り切っているのではないだろうか?

それと比較すると他の二人はそう割り切れているわけでもなさそう。
ヴィーは外での関係を中でも続けているし(テイスティー)、レッドは逆に外よりも内側で権力を握っていた事実から、刑務所内での方が心地がよかったのではないか。

 

ここで、主人公パイパーがおもしろい位置にいる。
彼女は、
1. もとは内は内、外は外と割り切れてこざっぱりした刑務所生活を送ろうとしたけれど、刑務所外の関係が崩壊する
2. シーズン2ではアレックスがいなくなって刑務所以前からパイパーを知っている人はいなくなったものの、1を経てアレックスを呼び戻す策を取り、外での関係を刑務所内に再度引きずり込む
ということで、もとはグローリアの立ち位置にいた(いようとした)ものの、ヴィーとアレックスの二人の属性を併せ持つ存在へと身を変えていってしまうことが見える。

ということは、シーズン3以降の彼女がどうなるかは簡単に予想がついてしまう。


物語をとおして、こういった「人間関係観」や「倫理観」がかなりトピックにされているのでおもしろい。
(刑務所の外の人と刑務所の中の人とどっちの方が倫理観が崩壊しているか、とかね)

 

シーズン3も割とおもしろいのだけれど、割とドラマチックに個別にものが動いているので、シーズン2ほど大局的なおもしろさはないものの、引き続き楽しんで見ていきたい。

 

Raspberry PI で FMOD Studio API を動かす

表題の通り。

FMOD (https://www.fmod.com/download) はゲームなんかでよく使われているサウンドライブラリらしく、Raspberry PI で使えるようにするまでの道のりを書く。

作業をはじめる前に、事前に自分のラズパイの ARM のバージョンを確かめておくとよい。

cat /proc/cpuinfo

このとき、Arm 6 だったら arm、Arm 7 だったら armhf というふうに ARM のバージョンを指定すればよい。 uname -aとかでも分かる。 ここではすべて armhf に統一して説明するので、適宜置き換えてください。

まず、アカウント登録を済ませて、 FMOD Studio API をダウンロード(https://www.fmod.com/download)。 あまり重くないので、アカウント登録だけ他のマシンで済ませて、Raspberry PI から直接ダウンロードすれば良いかなと思う。

ダウンロードしたら、適当に解凍して、適宜ものを移動させる。

tar -xvzf fmodstudioapiXXXXXlinux.tar.gz

API/lowlevel のうち、lib 以下を /usr/local/lib に、inc 以下を /usr/local/include へと移動させる。

sudo cp fmodstudioapiXXXXXlinux/api/lowlevel/lib/armhf/libfmod* /usr/local/lib
sudo cp fmodstudioapiXXXXXlinux/api/lowlevel/inc/*.h* /usr/local/include

これができたら、だいたい環境が整った感じ。 あとは、fmod.h をインクルードして、適宜コンパイル

api/lowlevel/examples の中に例も入っているので、適宜参照しつつやるのがわかりやすい。

ちなみに、サンプルは

make --file play_sound.makefile CONFIG=Debug CPU=armhf 

のように、CONFIG と CPU のパラメーターを指定して make しないといけない。

参考:

FMOD Running on Raspberry Pi

nvm のデフォルトのバージョンを変える

nvm ls
nvm alias default v???

でバージョン変更。ターミナルのセッション再起動で設定が読み込まれるはず。 再度 nvm ls でデフォルトになっているのが確認可能。

❯ nvm ls
         v4.0.0
->       v7.2.1
         system
default -> v7.2.1
node -> stable (-> v7.2.1) (default)
stable -> 7.2 (-> v7.2.1) (default)
iojs -> N/A (default)
lts/* -> lts/boron (-> N/A)
lts/argon -> v4.7.0 (-> N/A)
lts/boron -> v6.9.2 (-> N/A)

上記は出力一例。

ただ、もし default が自分が指定したいバージョンになっているもののうまく反映されていない場合、shell の rc ファイルでの nvm.sh の読み込み順によるものの可能性があるので、nvm.sh を読み込むのをできる限り後にずらす。変更後 source ~/zsh.rc (shellによって適宜変更)で反映されるはず。