Rez Finite PB+
for PB-SIM(fast),PokecomGO(fast)
Programmed by NUAO
Original 2023/4/4 Updated 2023/4/15
ビジュアル・サウンド・シューティングアクションが織りなすスリリングな体験(サウンドは無いけど)
2TFLOPS の PS4 ゲームが 60FLOPS の PB-100 で楽しめるのか?
アナタの「共感覚」を研ぎ澄ませば、それは可能だ!
追加情報)門真なむ様によるPB-100実機用 軽量・高速化改造版の登場!(2023/5/6)
Rez_Finite_PBplus_mod
PB-100の癖をも逆手に取る究極の奥義で、乾いた雑巾と思っていたオリジナル版(543steps版)が更に磨き上げられました。オリジナル543→525ステップに減したのに、高速化しています。まるで魔術です。PB-100実機に対応し、PB-SIMは非対応となっています。(シミュレータは元々サイズ・速度の制約が無いので当然です)
更新情報)Rez Finite PB+ へのアップデート (2023/4/15)
ゲーム性向上と原作に近づけるため、以下アップデートしました。
・ウィルスの出現パターンを、ランダムから規則正しくなるよう変更しました。(原作に沿う)
・ターゲット・スコープのループを無くしました。(ゲームバランス調整)
・ウィルスの消去を待たず、次に発生したウィルスが上書きするようになりました。
(上書きするまでの時間は、エリアが進むと少し短くなります)
・残り時間表示から、エリア番号表示に改めました
追加情報)Rez Finite PB+ (543steps) の追加 (2023/4/17)
せっかくなので、ノーマルPB-100に収まるバージョンも作ってみました。
概要
Rez/Rez HD/Rez Infinite はゲームコンソールや PC で発売されている「ミッドナイト・ハイ・シューティ ングゲーム」です。
今回はそれを強引に PB-100 に押し込めたもので、Infinite(無限)から一歩退いて Finite(有限)です。
宇宙空間を飛翔しながら、次々に迫る「ウィルス」に照準を合わせ、タイミングを見計らって爆破してい く爽快系シューティングゲームですので、残念ながら PB-100 実機はお薦めしません。
本来はノリノリの音楽に合わせてウィルスを撃退していくのですが、PB 版に音楽はないので、別途 TouTube などで BGM をガンガンかけながらプレイすることをお勧めします。
対応機種
PB-SIM 高速モードを推奨します
PokecomGO fastモードかnormalモードを推奨します。no waitモードは人類には攻略不可能。
PB-100 +OR-1 動作しますが、遅いので推奨しません。
ゲーム開始
プログラムを入力します。プログラムサイズは 578 ステップです。
[P0]を実行するとタイトルを表示し、[EXE]を押すとゲームがスタートします。
ウィルスは、近づくにつれ ・→o→O と大きくなります。
キー操作
1←→3 ターゲット・スコープ左右移動
スコープを迫りくるウィルスに重ねると自動的にロックオンし、表示は「◆」に変わります。
キーを離した瞬間、ロックオンしたウィルスを全て爆破します。
ウィルスは近づくと大きくなり、通り過ぎると消えます。
ロックオンしたウィルスも、通り過ぎると消えます。
ロックオンしたウィルスに、再度スコープが重なるとロックオンが外れます。
ウィルスをできるだけ引き付けて爆破した方が、得点は高くなります。
多くのウィルスをロックオンし、纏めて爆破すると、得点が指数関数的に跳ね上がります。(コンボ)
新たなウィルスが登場すると、前にいたウィルスは上書きされ消えてしまいます。
エリアは1~3あり、エリアが進むと新たにウィルスが登場するまでの間隔が短くなります。
エリア3を終了すると、得点を表示して終了します 。
注意
・高速化のため、画面消去(スコープ、残り時間)に手を抜いていますが、ご容赦ください。
・プログラム行番号80の「A=.1」は、実機において、得点計算(90行 D=D+B^A)で「0^0」の場合にエラーが発生することを回避するためです。実機では「0の0乗」が定義されていないようです。
おすすめ BGM
Rez OST https://www.youtube.com/watch?v=_Z06bKvmK-U&t=688s
Hydelic – Rez Infinite Area X https://www.youtube.com/watch?v=e4DBcmuMVbs
…等、YouTube で多くアップされていますので、お好みで
PB-100実機形式
PB-SIM形式
[P0]
5 VAC
10 PRINT "RezFinitePB+":C=1
15 FOR K=0 TO 2:$=" \DT\CIO\DI":GOSUB 130+K
17 PRINT CSR8;"Ar";K+1;
20 FOR L=0 TO 22 STEP 2
25 F=1:FOR I=1 TO 3:F=F+F
30 G$=MID(6+L,1):IF FRAC(VAL(G$)/F)>=.5;P(I)=1
35 G$=MID(7+L,1):IF FRAC(VAL(G$)/F)>=.5;P(I+3)=1
40 NEXT I
45 FOR J=1 TO 10-K
50 E$=KEY:IF E$="" THEN 80
55 P(C)=-P(C):IF E$<>"3" THEN 70
60 C=C+1:IF C>6;C=6
65 GOTO 95
70 C=C-1:IF C<1;C=1
75 GOTO 95
80 A=.1:B=0:FOR I=1 TO 6
85 IF P(I)<0;PRINT CSR I;"*";:B=B-P(I):A=A+1:P(I)=0
90 NEXT I:D=D+B^A
95 PRINT CSR 1;:FOR I=1 TO 6:F=P(I):IF F<0;F=4
100 PRINT MID(F+1,1);
105 P(I)=P(I)*1.1:IF ABS P(I)>=4;P(I)=0
110 NEXT I:PRINT CSR C-1;"<";CSR C+1;">";
115 NEXT J:NEXT L:NEXT K:PRINT:PRINT "Score";INT D:STOP:END
130 $=$+"400120021004410360063000":RETURN
131 $=$+"422105502214436170077000":RETURN
132 $=$+"322526522555541537766336":RETURN