目次: ゲーム
Steamでドラクエ1&2 HDリメイクを購入したまま完全放置でドラクエ3やってましたが、やっと戻ってきました。ドラクエ1の分のトロフィーコンプ(たぶん)しました。

ドラクエ1 HDリメイク、(ドラクエ1の分)トロフィーコンプ
ドラクエ1&2の名の通り、トロフィーはドラクエ1とドラクエ2の分を合わせた表示でコンプかどうかよくわからないですね。まあいいか。一番ありがたかったのはドラクエ1にやりこみ要素がほぼないことでしょうか。やりこみ必要なトロフィーがあったら取れなかったと思います。
ドラクエ1&2リメイクは、ドラクエ3リメイクとほぼ一緒の制作陣(スクエニ、ARTDINK)です。画面のデザインやゲームのシステムも再利用されているらしくほぼ一緒で、ドラクエ3リメイクを知る人は見慣れた画面だと思います。
ドラクエ1リメイクは敵がやたら強いです。ドラクエ1はずっと1人旅をします。ファミコン版は敵も常に1人(=タイマン戦闘)でしたが、リメイク版は敵多数なのでいつも集団リンチされます。しかも敵から喰らうダメージがデカく、雑魚敵相手でさえ運が悪いと1ターンKOされ、耐えても回復が追いつかずジリ貧の末にKOされます。システムによる救済が格段に親切&優しいので、全滅してもほぼデメリットないのは唯一の救いです。
私は岩泣き島と竜王の城辺りで、幾度も1ターンKOされて、嫌になってやめました。一応エンディングだけは見ましたよ。道中は「しのびあし」で全部ガン無視、竜王は「楽ちんプレイ」でガン無視した、やる気ゼロスタイルですけど。
ドラクエ3も1もどちらもストーリーの味付けやゲームの出来はとても良かったし、ドラクエ3とシステム共通点の多さを考えると、なぜドラクエ3と1のリメイクでこれほど楽しさの感じ方に差が出たのか?不思議です。
たぶんドラクエ1リメイクのレベルデザインが肌に合わなかっただけだろう、と予想してます。もしかするとLv上げまくったら程よい感じになったのかも??とは思いますが、今はもう嫌なので、いつか暇だったらやるかも程度です。
この記事にコメントする
目次: ゲーム
Steamでドラクエ1&2 HDリメイクを購入したのですが、完全にほったらかしにしてこれまたSteamのドラクエ3 HDリメイクをずっとやっていまして、今日やっとトロフィーコンプしました。ドラクエ3はクリア後のやりこみ要素、いわゆるエンドコンテンツがあっていつまでも遊べるので、終わりはないといえばないです。でもまあトロフィーコンプは区切りとしては良いところでしょう。
しんりゅうを7回しばき倒すまでは通常の難易度(ゲームモード「バッチリ冒険」)で進めてましたが、勇者がLv.99になったのに全然クリアできそうな気配がない「試練の神殿」と「グランドラゴーン」は難易度を下げて(ゲームモード「楽ちんプレイ」)クリアしちゃいました。
敵が馬鹿みたいに固いのはまだ良いんですよ、でも武器の制約が面倒すぎて無理でした……。
ファミコン版のドラクエ3を遊んだのは小学生の頃だったと思います。もう30年近く前ですかね?細かい部分は覚えていなくても、町の名前とかおおまかな進行とかは意外と覚えているもので懐かしさを感じました。
町は全て3Dで現代PCの計算性能を使いまくって描画され非常に綺麗です。あまりに綺麗なので意味もなく町をうろうろしていました。それでいてドラクエユーザーに馴染み深い固定視点にしていて(あえて視点をぐるぐる回せない)2D時代と同様に操作可能です。よく考えられていて素敵でした。
敵の強さはほどほどです。仲間の職業をあそびにんだらけにするとか、4人未満にするとか極端なことをしない限りは、やたら苦戦したり理不尽に蹂躙されて終わることはほぼないと思います。システムによる救済も昔と比べて格段に親切&優しいので、向こう見ずに突っ込んで全滅してもほぼデメリットありません。総じて難易度はちょうどよかったと思います。面白かった!
この記事にコメントする
目次: Linux
前回(2026年1月29日の日記参照)、スクリプトの先頭(例えばシェルスクリプトなど)に書く"#!〜"から始まるおまじないのことをshebangといって、カーネルがexecveシステムコール内で解釈する文字列であることを紹介しました。
また、前々回(2026年1月23日の日記参照)は、shebangは間違っていても動いてしまう場合があることも紹介しました。もう少し正確に言うとexecveシステムコールに渡すとエラーになるスクリプトもシェルで実行できる場合があります。例えばこんな感じです。
#!/bin/dash
echo ok
##!/bin/dash
echo ng
$ ./ok.sh ok $ ./ng.sh ng
なぜかexecveシステムコールがエラーになるスクリプトでも実行できます。不思議ですよね。
大抵のシェルには、初めにexecveで実行して、失敗したらシェルスクリプトだと思ってシェルに渡して実行する仕組みがあります。実際にコードを見てみましょう。シェルは何でも良いと思われますが、Debianならdashでしょってことでdashを見ます。
// dash/src/exec.c
STATIC void
tryexec(char *cmd, char **argv, char **envp)
{
char *const path_bshell = _PATH_BSHELL;
repeat:
#ifdef SYSV
do {
execve(cmd, argv, envp);
} while (errno == EINTR);
#else
execve(cmd, argv, envp);
#endif
if (cmd != path_bshell && errno == ENOEXEC) {
*argv-- = cmd;
*argv = cmd = path_bshell;
goto repeat;
}
}
上記のtryexec()関数が先程言った通りの実装になっています。まずexecve()を実行します、成功したら返ってこないのでそれでおしまいです。失敗したらexecve()から返ってくるので、argvを一個ずらしてコマンド名をスクリプトからシェルに変更して再びexecve()を実行します。これは文字で説明してもわかりにくいので、下記にcmdとargvの変化を示します。
先頭のほうで出てくる_PATH_BSHELLはシェルのフルパス文字列を定義したマクロです。
# dash/configure.ac
dnl Check for declarations
AC_CHECK_DECL([_PATH_BSHELL],,AC_DEFINE_UNQUOTED([_PATH_BSHELL], "/bin/sh", [Define to system shell path]),[
#ifdef HAVE_PATHS_H
#include <paths.h>
#endif
])
マクロ_PATH_BSHELLはconfigureのときに決定されます。通常は/usr/include/paths.hが定義しているはずで、私の環境では/bin/shになっていました。もし定義されていない環境の場合はdash側で決めますが、これも/bin/shになるようです。
スクリプトの中身に関わらずシェルスクリプトだと仮定して実行するだけですから、スクリプトがシェルスクリプトでなければエラーになります。やや特殊ケースとして、シェルスクリプトであってもシェル依存の専用構文(bashやzshの専用構文)を使うと実行エラーになります。
わざとbash専用の構文を使ったスクリプトを2つ作ります。片方はshebangが正しく、もう片方はshebangを誤った文字列にしてあり、それ以外は全く同じです。
#### ok_bash.sh
#!/bin/bash
function a()
{
echo hello
}
a
#### ng_bash.sh
##!/bin/bash
function a()
{
echo hello
}
a
この2つのスクリプトをdash上で実行しようとすると、下記のようになります。ok_bash.shは実行できますが、ng_bash.shは実行できません。
$ ./ok_bash.sh
hello
$ ./ng_bash.sh
./ng_bash.sh: 3: Syntax error: "(" unexpected
最初のok_bash.shはshebangに書かれた通りbashが起動されるので、bash専用の構文も実行できます。
2つ目のng_bash.shはshebangが間違っていてexecveで実行できないため、dashはスクリプトを/bin/sh = dash上で実行しようと試みます。しかしdashでは使えない構文が含まれているためエラーとなります。
この記事にコメントする
| < | 2026 | > | ||||
| << | < | 02 | > | >> | ||
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
wiki
Linux JM
Java API
2002年
2003年
2004年
2005年
2006年
2007年
2008年
2009年
2010年
2011年
2012年
2013年
2014年
2015年
2016年
2017年
2018年
2019年
2020年
2021年
2022年
2023年
2024年
2025年
2026年
過去日記について
アクセス統計
サーバ一覧
サイトの情報合計:
本日: