予告のバックナンバー (2020年)

-------------------- 2020年02月02日 --------------------

忍者ツールズで1/25頃からずっと障害が発生していたようで、
ずっと更新できませんでしたが、ようやく復旧したようです。
遅くなりましたが、本年もよろしくお願い申し上げます。


次回作はアクションゲームを作りたいと考えています。
作っていて一番楽しいのも、一番遊んでもらえるのも、
やっぱりアクションゲームだと思いますので。

それでどんなゲームを作るかですが、今考えているのは、
コナミのスクランブルのような横スクロールシューティングです。
(スクランブルは私は本物をプレイしたことはほとんどありませんが、
当時、ゲームウォッチやLSIゲームでよく遊んでいました。)

技術的な方針としては、2ドット横スクロールとVBLANKでのタイミング調節を実現します。
それで、2ドット横スクロールのデモプログラムを作ったのが上の動画です。
詳しい技術的な解説はまた別の機会に書きたいと思いますが、さっくり言うと
NewX1ゼビウスのトモカズさんの2ドットスクロールとリボルティー2方式の合わせ技としています。


-------------------- 2020年03月08日 --------------------

世の中、大変な状況になってきていますが、必要以上に悲観せず、
自分のできることをやっていきたいと思います。

----------------------------------------------------------------

前回、「コナミのスクランブルのようなゲームを」と書きましたが、
1月・2月と本業の方がとても忙しく、何もしない間に情熱が冷めてきたと言うか、
今は他のことに興味が移ってきていたりします。

----------------------------------------------------------------

前回の2ドットスクロールの技術的なことを簡単に書きたいと思います。

基本的には、トモカズさんのNew X1ゼビウスVer.2と同じ方式です。
つまり、2ドットずつずらした4画面を順番に切り替えて、
最初の画面に戻ってきた時にCRTCの表示開始アドレスを1バイトずらし、
画面一番右の縦1列のマップを描画します。(動画中の左下の数値が表示開始アドレスです。)
(詳しくは、 トモカズさんの85DATA の「X1でゼビウスを作る!Ver.2」の
「第1回 CRTC設定による2ドットスクロールとVRAM計算」をご参照ください。)

問題は、New X1ゼビウスではCRTCの設定で1画面を160x200ドットとして
物理的に4画面を確保していましたが、今回はフル画面(320x200ドット)で
どのように4画面を確保するか、ということになります。

ここで登場するのが、リボルティー2方式です。 (詳しくは こちら 。無断でリンク。。)
つまり、テキスト画面に画素となるPCGキャラクタを敷き詰めて、
プライオリティの設定でグラフィック画面をテキスト画面よりも前面にして、
グラフィックでPCGキャラクタを部分的にマスクします。

リボルティー2ではグラフィック画面のBプレーンをマスク用としていますが、
私の方式ではRプレーンとGプレーンをマスク用としています。つまり、
R/Gプレーンのスクリーン0/1で4画面を確保しています。(Rプレーンでマスクする時は、
プライオリティ設定でGプレーンをテキスト画面の後ろにします。Gプレーン時はその逆。)

Bプレーンはゲーム中のキャラクタ(自機等)のマスクデータを描画します。(トモカズさん方式)
R/Gプレーンにはマップデータに併せてキャラクタデータも描画します。こうすることでキャラクタには
奇数カラーコードの4色を使用できます。(背景はPCGキャラクタにより8色表現可能。ただし黒色が多くなる。)

以上が、絵もなしに文章だけで書いた2ドットスクロールの技術解説になります。

----------------------------------------------------------------

上で「他のことに興味が移ってきている」と書きましたが、次はこの方式で縦スクロールを
してみたいと思っています。どうせならゼビウスのマップでやってみて、
この方式で表現したらどのように見えるのかを試してみたいと思っています。
(画面構成は電波ゼビウスと同じ。マップは荒いがスクロールは滑らか、というような。
なお、縦スクロールとマップ表現を見たいだけで、
ゼビウスを作るつもりはありません。私にはできません!)


-------------------- 2020年04月12日 --------------------

2ドット縦スクロールのテスト動画を作成しました。
(技術的な解説は、こちらの2020年03月08日の記事を参照してください。)

前回と今回とで縦横両方の2ドットスクロールを試しましたが、それぞれの苦労がありました。
個人的な感想としては、CRTCの表示開始アドレスをずらして
疑似ハードウェアスクロールさせるという手法は、少々しんどいと思いました。

例えば縦スクロールでは、320x200 2画面モードの場合、テキストVRAMの1画面は
1024バイトなので24バイトの余り(画面に表示されない部分)が発生します。
この余りの部分が曲者で、40バイト(1行分)ずつ表示開始アドレスをずらしていくと、
画面右側のテキスト表示エリア(8x25キャラクタ)がずれてしまいます。
表示アドレスをずらす度に、過不足分の画素PCGキャラクタを整備しなければならず、
また当然テキストも全部書き直しで(この動画では真っ黒ですが)、かなりの手間です。

実際に試してみて「この方式でゲームを作るのはちょっとしんどいかな」と思い至りました。
現在はその反動で(?)、ベーマガ的なシンプルなピコピコゲームを短期間で作りたいと考えています。


-------------------- 2020年04月29日 --------------------

前回、「ベーマガ的なシンプルなピコピコゲームを短期間で作りたい」と書きましたが、
いわゆるスネークゲームを近日中に公開したいと思っています。


これは、有償版のCROSS PILLAR AUBERGINE(販売終了)のおまけADVの中にあった
スネークゲームをゲーム内容はほぼそのままで、新しい遊び方を追加したものにする予定です。

これの次は、RUINOUS XIIIのシナリオ2を作ろうかなーとぼんやりと考えています。
(実現するかどうかは未定です。)


-------------------- 2020年05月17日 --------------------


snakewatchをリリースしました。
前回も書きましたが、これは有償版のCROSS PILLAR AUBERGINE(販売終了)の
おまけADVの中にあったスネークゲームを元にしています。
通常の遊び方(playモード)に加え、ユーザーが蛇のアルゴリズムを作成して
自動的に動く蛇を観察する遊び方(watchモード)を追加しました。

最近、YouTubeで昔のゲームのプレイ動画やグランツーリスモのレース動画などを
見ることが多く、自分で遊ぶよりも人が遊んでるのを見る方が多いと気付きました。
(そう言えば、昔ゲーセンでもそうだったかも。)
それで「見て楽しめるゲームを作ろう」と思ったのがきっかけです。

しかし、とりあえずリリースはしたものの、実際に自分でユーザールーチンを作るのは
難しいかも知れません。意図したとおりに動かなかった時にデバッグする術がないのがつらいです。
初心者の人にもZ80アセンブラを体験してもらえたらと思いましたが、
結局、パワーユーザー向けになってしまったかも。。


-------------------- 2020年06月27日 --------------------


次回作を作り始めました。
Battle Battle Upwards
upwards [副詞] 上の方へ、上へ向かって

内容は、Battle Battleで最終面のボスを倒した後の帰り道です。
今回は面の区切りはなく、ひたすら上へ上へ進んでいきます。(「限りなき戦い」の逆版)
ただし、前作の戦いで酷使したせいで、スラスター(バーニア)は
一定時間しか連続噴射できません。
噴射可能な範囲内で足場を確保しながら、頂上を目指し上昇を続けます。

基本的には前作のプログラムを全面的に流用しますので、
比較的短い期間で作れると考えています。


-------------------- 2020年07月11日 --------------------

今回は次回作の予告ではなく、X1の思い出話を書きます。
(最近なぜかふと思い出しましたので記録の意味も兼ねて。)


これをご存知の方はおられますでしょうか?
「必殺複写人」、X1のカセットテープソフトのコピーツールです。
私が当時とてもお世話になったソフトです。

1983年の終わりか84年の初め頃、上の「X1の思い出」に登場するT内君に連れられて、
京阪電車の枚方市駅近くの雑居ビル(詳しい場所は失念)にあった貸しソフト屋に初めて行きました。
さほど広くない店内に当時の主要マイコンのソフト(主にゲーム)が
ずらーっと棚に並んでいる様は圧巻で、当時の私には夢のような景色に見えました。
(確か途中からお店が広くなり、アルバイトの若い人も雇ったようでした。)
料金はソフトの定価によって数百円〜千円ぐらいだったと思います。
一般的なゲームソフトだと200〜300円ぐらい?一泊二日で500円はしなかったと思います。

X1用のソフトは比較的多かったと思います。その中で私が最初に借りたのがこの「必殺複写人」でした。
まず「必殺複写人」で「必殺複写人」をコピーし、その後は手持ちの「必殺複写人」(コピー)を使って
借りたゲームをどんどんコピーしていきました。今の基準で考えると完全にアウトですが、当時は
非常に大らかな時代でした。(そもそもコピー前提の貸しソフト屋という商売が何年間も成り立っていた。)

スクリーンショットのメニューの「コピーの種類」は、(1)が通常の場合で、
(2)が多段ロードの場合、(3)がハドソン方式の多段ロード専用だったと思います。

高校生ぐらいになってお小遣いに余裕ができてくると、パッケージもほしいので
ちゃんとお店でソフトを購入するようになりましたが、それまではこのツールで
コピーできなかったソフトはほとんどなかったと思います。
シンプルでとても強力なコピーツールでした。


-------------------- 2020年08月09日 --------------------


「Battle Battle Upwards」を制作中です。
進捗としては、マップデータの持ち方(今回は面クリアなしのオンメモリ)や
死亡後のリスタート等、システム全体的な所はほぼ作り終わりました。
今後はマップの作成、敵の配置といった作業がメインになっていきます。

マップの広さは「限りなき戦い」の約2倍になる予定です。
「限りなき戦い」では40×23キャラクタ×約27画面です。ドット数で言うと
320×4,968=1,589,760で、実はフルHDよりも全然狭いんですよね。
パソコンやスマホの壁紙で全体を表示可能という。
いつか気分転換に作ってみますかね。


-------------------- 2020年09月13日 --------------------

前回書いた「限りなき戦い」のマップを作ってみました。(壁紙はやめました。)

このマップはエミュレータで自機数を増やしながらプレイ動画を撮り、後から繋ぎ合わせました。
(ちなみにズルなしで普通にプレイすると、鉄骨の所の下のゾーンぐらいでいつも終わります。)
途中までは敵の数も正しくなるように作りましたが、最後の方は数が多過ぎて諦めました。

こうやって全体を見ると分かることがありますね。後半は建物のような敵の配置が
ずっと同じになっていました。これは既視感を狙ったものなのか、あるいは手〇きなのか。
マップも後半は前半に比べてシンプルになっているような…。

私が一番好きな場所は、紫色の壁の上のゾーンで、エイリアン砲台(勝手に命名)が
中央から左右に向いて配置されている場所です。ここは私が確認した限りでは、
上から左側に降りるか右側に降りるかで、エイリアン砲台の向きが一部変わるようでした。
このマップでは右側に降りて、左側のエイリアン砲台2機が右を向いています。


おまけでPCG一覧です。未使用キャラクタもあるようです。
42hは正面を向いたエイリアン?
89h、99hはUFOの斜めパターン?
他にも見覚えのないパターンがいくつか。


-------------------- 2020年10月24日 --------------------


しばらく放置してしまいました。開発中のBattle Battle Upwardsですが、
ゲーム全体に影響のある方針変更を検討しており、しばらく停滞しています。

具体的には、部分的に強制スクロールを取り入れようかと考え中です。
コナミの「沙羅曼蛇」で縦横スクロールが交互に登場するように、
強制スクロールを挿入することでゲーム進行に変化を持たせられるのではないかと。
一方で、スクロールに付いていけずに下に落ちたら死んでしまう理由を説明できず悩んでいます。
(強制スクロール以外の場所では自由に下に行けるのに、落ちたらなぜ死亡??)

余談ですが、昔、PCエンジンで「モトローダー」というトップビューのレースゲームがあり、
レース中に先頭の車に差をつけられて画面からはみ出しそうになると
燃料が減らされて前方にワープするという、最高に意味不明な仕様があったのを思い出しました。
(結局レースの勝敗はゴール直前の数秒次第だという。。)

強制スクロール無しで自由に行き来できる方が全体を広く感じられると思いますので、
現在は無しの方向に考えが傾きつつあります。


-------------------- 2020年12月06日 --------------------

ネタ切れなので久しぶりに小説の話を書きます。

最近(と言うか以前から)好んで「叙述トリック」ものを読んでいます。
叙述トリックとは、読者に事実を誤認させておいて
最後に物語をひっくり返して驚かせるというようなトリックです。
例えば、同一人物だと思っていた人が実は別人だったとか、性別が違っていたとか、
小説だからこそ成立するもの(映像化不可能なもの)が多いです。
私の場合、きれいに騙されるとなぜか嬉しくなってしまいます。

今回は、叙述トリック作品個人的ランキングを書きます。
(有名な作品でも未読のものがまだありますので「なんであれが入っていない!」
ということはあるかも知れません。)

第1位 「イニシエーション・ラブ」乾くるみ
読んでる時は普通の恋愛小説、読み終わってからの方が面白くなる珍しい作品。
個人的にはこれぞ叙述トリック。最後の2行、私は最初意味が分からず
間違った解釈をしてしまいました。解説サイトを見て初めて納得。
映画化もされましたが原作ファンは「あれをどうやって!?」とみんなが思ったはず。

第2位 「慟哭」貫井徳郎
連続幼女誘拐事件の話で、上の作品とは打って変わって重厚な雰囲気の作品。
交互に語られていく二つの異なる話が最終的にどう交差するのかを考えずにはいられません。
終盤の種明かしですぐに意味が分からず混乱しました。しかしちゃんと説明してくれるので親切。

第3位 「アヒルと鴨のコインロッカー」伊坂幸太郎
引越し先のアパートで初対面の青年に「一緒に本屋を襲わないか」と誘われる。
この作品にも驚くような仕掛けが隠されていますが、個人的にはやや無理があるような気も。
しかし、様々な伏線が全部回収されるのがとても心地良かったです。

第4位 「殺戮にいたる病」我孫子武丸
猟奇的殺人の描写が非常にグロテスクな作品。苦手な人には厳しいと思います。
個人的には作り話として読んでいるのでそれほど気になりませんでした。
この作品にも驚愕のトリックが隠されていますが、少し納得がいかない部分もありました。

第5位 「ハサミ男」殊能将之
連続少女殺人事件の犯人が次のターゲットを調査中に、自分の手口を真似て
殺された彼女の死体を発見してしまうという話。この作品はトリックがフェアなのが好きです。
勘のいい人なら途中で気付くかも。しかし真実が判明しても驚きは大きくないかも知れません。

第6位 「葉桜の季節に君を想うということ」歌野晶午
元私立探偵の主人公が知人から悪質な霊感商法の調査を依頼されて、という話。
真実が判明した時の驚きはとても大きいと思いますが、ちょっとアンフェアさを感じるかも。




戻ります