PSVita版 双子座のパラドクス プラチナトロフィー取得 感想/レビュー

"双子"のダブル主人公でザッピングしていくシステムと「コットンソフト」の生い立ちを合わせて考えると「Scarlett」を思い出した。

シナリオ

TRUEルートまでは伏線張りっぱなしが多くて最後に一気に回収するパターンだった。
その為、各キャラENDが終わった段階では盛り上がりに欠けていたが(伏線回収してないからそりゃそうなのだが)
ハルが総一に対してオブジェクト・リーディングしてアルフレッドとエドワードの話が終わった後で一気にきた。
本当の双子じゃないというのまではある程度想定していたんだけどまさかね。

一番好きなタイプの伏線回収だったのでプレイできて満足度高い。
ただ、ザッピングだけでも情報過多なのに世界線移動も相まって状況の変化についていくのが大変だった。

折角特能科で特殊能力を使える人間が複数いたわけだからもう少し戦闘向きな能力を使いこなせる人がいるとよかった。
戦闘シーンがいくつかあるが、全てただ肉弾戦をしているだけで殴ったら勝ちなので単調になってしまう。
パイロキネシスの暴発や副会長の電撃があったのだから味方陣営にもそういう戦闘向きな能力がほしかった。

あと、終盤テスラの能力の扱いがあんま重要視されてなくて普通の過保護な少女扱いでなんで守ってたんだっけ?と少しなった。

キャラクター

千ヶ崎先生と副会長はヒロインやれるだけのスペック持ってるでしょう。ルート欲しかった。
ヒロインとしてはナツ、ハル、蒼となるけどこの中だと蒼が一番好きかな。
f:id:arcright:20191102233237j:plain
やたらポンコツアピールしてるとき、最後の同士討ちはあまり好きではなかったけどそれ以外は好み。

ハルと蒼の揺らす演出は正直いらなかった...

「コットンソフト」好き。

デフォルトのGitHub Pagesではアンダースコアから始まるファイルは閲覧できない

しばらく、GitHub Pagesを触っていなかったので取り残されていたのですが、ProjectリポジトリでのGitHub Pages利用がより柔軟に利用できるようになっていました。

上記以前は、Projectリポジトリではgh-pagesブランチを用意する必要があった為一手間かかりましたが、
masterブランチも設定可能になったのでより使いやすくなりました。

いざ、運用を始めてハマったことがあったので備忘録。
GitHub PagesはJekyllで運用されている為、Jekyllの命名規則が適応されます。
Jekyllでは_(アンダースコア、アンダーバー)でから始まるディレクトリは特別な扱いをうけるようで、
ファイルが存在しても参照することができません。

公式ドキュメントに回避策の記載があります。

  • root パスに .nojekyll ファイルを含めて Jekyll をオフにする
  • _config.yml で インクルードディレクティブを使用して、無視すべきではないファイルを指定する
  • アンダースコア (_)、ピリオド (.)、またはハッシュ記号 (#) で始まる、またはティルダ (~) で終わる名前のファイルやディレクトリを使用しない
About GitHub Pages and Jekyll - GitHub Docs]

Git管理下のファイルの差分をpatchコマンドで適応するまとめ

たまに使うのですが、その度に調べたりしているのでまとめておきました。

確認version

  • Git 2.23.0

patchファイルを作成する

git diff

git diffの場合はシンプルです。今変更しているファイルの差分を出力するだけです。

$ git diff > file.patch
git log

git logの場合はそのままだと、リポジトリ全てのログが表示されてしまうのでリビジョン指定やファイル指定を行うことがほとんどです。

よく使うのは特定ファイルの直近コミットの差分、特定ファイルの指定コミットの差分ですね。

# fileの直近コミットの差分
$ git log -u -1 file > file.patch

# fileの指定コミットの差分
$ git log -u -1 {コミットのhash値} file > file.patch
no-prefixオプション

git diffやgit logはルートディレクトリからの相対パスにprefixをつけた状態でファイルパスを表示します。

--- a/file
+++ b/file

これが、patchコマンドで適応するときどう影響してくるかは後述しますがno-prefixオプションをつけるとこのprefixを無くすことができます。

--no-prefix
    Do not show any source or destination prefix.

実際にno-prefixオプションをつけてみると下記のように出力されます。

--- file
+++ file

patchファイルを適応する

patchファイルの適応にはpatchコマンドを使用します。

$ patch < file.patch

このコマンドを実行するパスが非常に大事になってきます。
git diffによって出力されたファイルパスをpatchコマンドを実行したパスを起点にファイルを探します。

この挙動をpオプションで制御することができます。

pオプション
-pnum  or  --strip=num
    Strip the smallest prefix containing num leading slashes from each file name found in the patch file.  A sequence of one or more adjacent slashes is counted as  a  single
    slash.   This  controls  how  file names found in the patch file are treated, in case you keep your files in a different directory than the person who sent out the patch.
    For example, supposing the file name in the patch file was

       /u/howard/src/blurfl/blurfl.c

    setting -p0 gives the entire file name unmodified, -p1 gives

       u/howard/src/blurfl/blurfl.c

    without the leading slash, -p4 gives

       blurfl/blurfl.c

    and not specifying -p at all just gives you blurfl.c.  Whatever you end up with is looked for either in the current directory,  or  the  directory  specified  by  the  -d
    option.

ヘルプに記載されている通りですが要約すると下記のようになるかと思います。

  • オプションが指定されていない場合はファイル名のみ
  • 0を指定するとルートディレクトリからの相対パス
  • 0以外の数字を指定すると、指定した数分のスラッシュまでを削る

なので、ルートディレクトリでpatchコマンドを実行する際は-p0をつけるとよいのですが、
先述のno-prefixオプションを使っていない場合には実際のパスには存在しないa/,b/が付与されているので-p0を使いたい場合にはno-prefixをつけようということです。
no-prefixをつけない場合には-p1をつけてa/,b/を無視すればよいので、要はどっちで考慮するかということです。

# ルートディレクトリでno-prefixをつけて出力
$ git diff --no-prefix > file.patch # patch出力
$ git checkout . # 変更を元に戻す
$ patch -p0 < file.patch # 変更を適応する

# ルートディレクトリでno-prefixをつけないで出力
$ git diff > file.patch # patch出力
$ git checkout . # 変更を元に戻す
$ patch -p1 < file.patch # 変更を適応する

たとえ、間違えてもpatchコマンドはファイルが見つからないときに、下記プロンプトが出てカレントディレクトリからのパスを記載すれば適応してくれます。

File to patch: 

適応した変更を元に戻す

patchコマンドのRオプションを使えばできます。

$ patch -R < file.patch

Gitで管理されているファイルでこんなことをやっても、なんも面白くないですが
例えばサーバ上はGit管理されていなくて、同じディレクトリ構成のローカル環境がGitで管理されている場合などに
patchファイル作成して適応すれば便利かもしれません。