【FC】スーパーマリオブラザーズ改造しようぜ!
質問 オリジナルでは、地下のボーナスステージで死ぬと中間エリアから再開できるけど 自作のステージで同じ事をしようとすると、どうしてもスタート地点に戻されてしまう マップ移動先で死んだときに、移動元の中間エリアから開始するための 条件ってあるんでしょうか >>102 地下ボーナスのページ数がエリアの中間地点に設定したページ数の前か後かってことが影響する オリジナルでも1-2の地下ボーナスは中間後だけど地下ボーナスのページ数若いのでTIME UPするとエリアの最初に戻される 移動先のルームの何ページ目で死んだかで、そのエリアの途中ページを超えたかどうかを判定する という方がわかりやすいか 移動先のページを変えると中間エリアから再開できました。 >>103 >>104 ありがとうございます! スーマリで各ワールドの3面の最後の城ですが、あそこにもゴール後城の旗が出ている事を確認しました バグを使えば本当に出ている事が分かります 今日判明しました これは知られていないのではないでしょうか ちなみに城ブロックの裏に隠れていますがね あるバグを使えば実機でも確認可能です 改造しません 画面左端にめり込むとマリオの半身が右端に見えるが、これを利用してツタワープならぬ画面端ワープは可能にならないか? さすがにプログラム上無理か あとyoutubeにある スーパーマリオブラザーズ 謎の無限1UP という平地1UPのやり方教えてください アレを試すと確かに1回は反射してきたノコノコを踏めるが持続しない w7nさんのはプレビューバージョンってことで、完全版じゃないみたいだけど完成が楽しみだわ 左右スクロールや背景の多重スクロール、蹴った甲羅のブロックへの当たり判定や謎解き効果音、音楽と素晴らしいな 謎解き失敗したら死亡確定にしないで、前のフロアに戻れてやり直せるチャンスくれたら無駄なストレスも減りそうだが 彼らに(得点的なものを)許せって何だろう マリオの残機!? youtubeにある スーパーマリオブラザーズ 謎の無限1UP という平地1UPのやり方教えてください スレ主はSMB3の改造を公開→スレを乗っ取るように初代SMBの改造→スレに誰もいなくなる みたいな流れだったし既に1はいないのかも SMBアーカイブにちょこちょこ新作出たり掲示板に書き込みあるし初代に限っては絶滅したわけでもなさそうだけど >>75 スーパーマリオブラザーズ2の1024wのワールドセレクトもお願いします。 マリオ2はイレギュラーなワールドに居たらリセットされたり、自動的にプログラムバンクが切り替わったりするし面倒だった記憶が 5-1以降に入ると一度ディスク読み込む(1と違ってRAMアダプタに入りきらない) からそのせいなのかな >>119 マリオ1は自分で調べてもこのスレでも分かるけど、マリオ2は具体的な16進数さえ分かりません、数か月調べても… どうかお願いします。 ディスクシステムも命令自体は6502そのままだから ディスク版1と見比べればいいんじゃない >>75 fdsのT-2はカセット版のT-1らしい 一緒かどうかは定かじゃないけど >>122 23CF〜23D3、2405付近の命令を見比べてみたのですが素人にはかなり難しいです、と言うかさっぱり分かりません。 頭が沸騰寸前と言うより蒸発した感じです。 6502命令について勉強してみたのですが、1つ1つの命令が抽象的すぎて、その周辺がどう機能しているのか想像すら出来ません。 正直、>>75 のような直接的な答えが欲しいのですが…… どうか宜しくお願いします。 >>123 fdsはT-1らしい面が結構あるよ、それに、それぞれ微妙に違うみたい >>124 言うほど抽象的か?命令表では小難しく書かれてるかもしれないが 基本的に足し算と引き算しかしてないと考えればわかると思う。 もしや逆アセンブラ使わずにバイナリだけで見てない? それだとめちゃくちゃ非効率だから逆アセンブラ使ったほうがいい。 ・・ただ>>75 はよく見たらタイトル画面Bボタン選択用プログラムのあたりか。 このコンテ方法、2だと無くなってるからこれ参考にしても意味ねーすまない。 だから直接ステージ番号指定してる箇所を変更するしかないが これは逆アセンブルしなくてもチート探す要領でメモリ検索していけばたぶん見つかる ttp://www.romhacking.net/forum/index.php?topic=13848 やっぱ向こうの人でも嫌がる人は嫌がるんだねぇ >>129 本当に感謝してるんだけど、なんせ俺の頭脳は一般人以下、数日かけて色々やってもさっぱり分からんかった… エミュレータでメモリ弄るんなら、以下のやり方でも行けるんじゃない? ・ワールドA−1まで到達する ・チート機能か何かでワールド管理メモリ:075F に値:FF を格納する ・1機死ぬ(面データを再読み込みさせるため) ・リトライすると、そのままW1024-1が始まる >>132 075Fのアドレスの値を変えたらいけそうだけど、もう1つアドレス必要だよね、あれ?要らないか? おかしなワールドを入力した時点で死ぬ前に止まるんよねー確か >>134 そのやり方あってるの?何か方法があるような気がする >>133 ごめん、未検証。SMB2は確認できる環境持ってないのよ。 4つめのマップ構造体を参照しているのが、 ワールドA,B,C,Dの時らしいからってだけの理由で立てた仮説だから、 止まっちゃう可能性も十分あると思う。 確かに、参照先を決めているメモリが分かれば、もっと簡単だろうけどね。 >>136 なるほど、075Fの他にあと3つのアドレスが分からないと1024Wワールドセレクトはできない訳ね 止まる現象はしょうがないのかな >>137 どうだろうね。止まるタイミングが詳しくわかれば、見当つくかもしれないけど… なんかPC漁っていたら、昔SMB Softwareで配布されてた資料見つけたから、 関係ありそうなメモリを列挙してみるよ。 $07FB:A,B,C,D面フラグ。★8つ以上、かつタイトルでA押下しながらスタートでON $D29F:クリア回数。ディスク直書きなので、編集はバイナリエディタで可能(?) 普通に検索すれば出てくるよ。 ここのSMB2逆アセンブルテキストが今の話題にドンピシャ。 2007年に更新されていたとは知らなかったな。 >>140 ttp://www.geocities.jp/smbsoftware/ ここだよね?ページないよ >>141 逆アセンブルテキストは無くなってたから、Wayback Machine使った。 それともページ自体ダメ?こっちではアクセスできたけど。 Insectduel hacks All Night Nippon Super Mario Bros. http://www.youtube.com/watch?v=bMAWf6Ggynw All Night Nippon Super Mario Bros. - Custom World 1-3 http://www.youtube.com/watch?v=PTF47zUldaw SMB2J+2 Mystic Land - W9 (Super Mario Bros. 2 FDS ROM-Hack) http://www.youtube.com/watch?v=4a_E26viAro むしろぶっとびならではの通常運転な気がしてならない マリオマフィア2のIPSってどこかで配布されていないの? >>149 SMBアーカイブにあったけどアプロダ荒らしのせいで流れた でも無断転載されてる ttp://ux.getuploader.com/smbarchive/ の uploder.exe を解答して出てくる 106.zip _,.._,.=-_-、 ,r;r '´ `ヽ ,r:i' ヽ /::::;! ヽ ;!:::::::'! ., _ _,.......i:、 ;i:::::::::::::l. ,;r''_:::::'' ::r_;ニ;.:l:::i r'::::::::::::r "'"`=';' ' i:::`;::::l:;! /::::::::::r:ミ ;::::. ´'´ r )´ '::l! !::::::::::::、_,.:::::: /.:::::::::ヾ、.::l ヾ:::;、::::!::::::. ..::' ';':::::::::::::::::ヽl! ` ヾi ::::::ミ:、-':::::;:r―::、:::ij;! ,.r!i ミ::_;::::''::::::::::::::;r/::`::::-.、 ,...-:::::::::/ `r、__,-―--‐'´ /::::::::::::::::::::::..、 :::::::::::::::i'' ー-'r--r.、´ヽ /::::::::::::::::::::::::::::::::`::、 ネーヨ [Naryo.W] (1915〜1985 ポーランド) 間違えて再調整前のデータアップしてると気付いたときの絶望感 某ROM版SMB2と某ROM版SMB2(ワールドセレクト付き)のを比較してみたけど、 差分みる? >>155 SMB2J-マッパー4(73,744バイト) 標準(本家と同じ仕様) $447E AD FC 06 29 10 F0 $447D 8D FB 07 AD 00 60 $4507 A9 00 8D 5F 07 A9 00 8D 50 07 A9 00 8D 60 07 ワールドセレクト版(AボタンとBボタンでワールドとステージを選択) $447E 20 00 fb 4c 50 f8 $447D EA EA EA 4C EC C4 $4507 EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA 上記のコードをそのままSMB2J-マッパー40の物に適用してみたが作動しなかった、 本家FDS版も作動しなかった。マッパー制御(バンク切り替え)の部分叩いて いるのだろうか? あとSMB2J-マッパー4-SRAMセーブ付き(81,936バイト)には一応適用可能。 大文字に統一 SMB2J-マッパー4(73,744バイト) 標準(本家と同じ仕様) $447E AD FC 06 29 10 F0 $447D 8D FB 07 AD 00 60 $4507 A9 00 8D 5F 07 A9 00 8D 50 07 A9 00 8D 60 07 ワールドセレクト版(AボタンとBボタンでワールドとステージを選択) $447E 20 00 FB 4C 50 F8 $447D EA EA EA 4C EC C4 $4507 EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA >>156 ありがとう 変えている場所はまんまワールドセレクトに絡んでいるっぽいね $07FBのセーブ機能を消してるようにも見えるけど、 もしやワールドセレクト版は、A,B,C,Dに正規の方法で行けなかったりするのかな >>159 そこまで試してなかったな。検証してみる。 >>160 あくまで推測だからなんとも言えんけども あと、本家FDS版で動かなかったのは 単純にROMの構造がNES版とことなるからかも ワールドセレクト版にサブルーチンへ飛ぶ 20 00 FB の記載があるけど >>141 の資料を見るに$F000番台が存在しないっぽい SRAMセーブ版でも>158のコードでワールドセレクト化できたけど、 ワールドセレクト版を元に改造したROMかも知れないな >>158 素人です。73,744 バイトのnesをバイナリエディタでそのアドレス見ても標準(本家と同じ仕様)のコードが無いっす。 ていうか書かれているコードの意味が理解できていないのですが、 $447E AD FC 06 29 10 F0 のADは$447E0のADでしょうか? アドレス$447E(0x447E)です。改造ROMはいくつかあるので種類によって違う 可能性もあります。 もし$447E0(0x447E)だったらそのファイルサイズは273,000バイト以上になります。 >>163 "AD"は lda $yyxx を指すコードで、さらに続く"FC 06"がそれぞれxxとyyに当てはまる 要約すると"AD FC 06"は、lda $06FC の意味 どのバイナリコードが何の命令子かは、検索掛ければ出てくる そもそもldaって何よってのも、探している過程でわかってくるはず >>164 >>165 種類がたくさんあるみたいですね、サイズは一緒でも種類が違うと適用しないのでしょうか? AD FC 06 29 10 F0 でバイナリエディタの検索するとアドレスは違うけど2か所ありました。 他の2つはないみたいです。 サイズ、アドレスは違ってもバイナリエディタ検索で一致したところをワールドセレクト版へ変えても可能でしょうか? >>169 可能ってのはワールドセレクトできるようになるかってことかな 試しにやってみて動くようなら動くんだろうね もし $447E 20 00 FB 4C 50 F8 で呼び飛びしてるルーチンが ワールドセレクト版固有のものだったら動かないだろうけど 俺もド素人だけどそもそもバイナリエディタ? SMB2専用の何かで見ないといけないとか? バイナリエディタと必要に応じて6502逆アセンブラ SMB Utilityの「アクティブオブジェクトを他ルームへ送る」って一体何に使えるんですか? 必ず「送り元のオブジェクトは、ページの関係に影響を与えるオブジェクトです。」と出るんですが >>175 そのブロックや キャラクタを他の部屋に移動させる事が出来る そのレベル内に使うブロックが余ったときや足りないとき等。 ・送れないケース1 オブジェクトリストから見たとき、各ページの先頭においてあるオブジェクトは送れない。 キャラクタ編集時も大体同じ 実際編集したときに改ページフラグにチェックが入ってる奴。 ・送れないケース2 ・ページ送りコマンドによって白紙状態が確定してるページ ・各ルームの最後のオブジェクトより後ろなどオブジェクトがそもそも存在しないページ 対策としては、ページ送りコマンドを外したり、前後のページに送ったりしてから 改ページフラグを駆使してその送りたいページにオブジェクトを運ぶ。 >>176 とても参考になりました、ありがとうございます 引き続き質問なのですが、 今、コースにオブジェクト配置の編集を行っているのですが 始めから設定してあるページ送りコマンドのせいで手間取っています。 ページ送りコマンドを敵オブジェクトに変更して消そうとすると、その削除したページより後にあるオブジェクトが 全部前のページに来てしまい、その後のページが全て白紙判定されてしまって編集できない、という壁にぶち当たっています。 編集可能なページは変更されずにページ送りを無効には出来ませんか? 説明下手ですいません…;; >>177 ページ送りコマンドを敵オブジェクトに変更するときに そのオブジェクトの改ページフラグも一緒にチェックすると、多少マシになるかな あるいは、SMBアーカイブの旧UPローダー369に 「nothing1.10」っていうフォーマットパッチがあるから 初めから新しく作るときはこれを使うと楽かもね オールナイトニッポン版スーパーマリオを奇跡的に手に入れたんだけど、 これを256W選択できるようにするにはどうバイナリ弄れば良いかわかる人いる? 宜しく頼む ルイージにカーソル合う処理潰してやってみた 俺の持ってるやつの 8A4C h の AD 53 07 49 01 8d 53 07 ↓ EE 5F 07 20 39 66 60 EA にしてみたらワールドセレクトできたけど$075Fが9ワールド以降を指した瞬間リセットかかるわ オールナイトニッポン版SMBの逆アセンブルテキストをキボンヌ キラーを1画面に5匹出現させる事は可能ですか? もし可能ならポールの旗が消え、点数が入りません すなわちロースコアクリアが300点に更新できる可能性があります 少し検証してみた所3匹同時が限界? 出現タイマーだか何かがネックになり無制限とはいかないんですかね S.M.B. Remodelerで色弄って遊んでたんだが、コインの色のパターンを違う系統の色に変えてみたら ステージ始めの残機表示してる画面で、画面上部のコインの色とか ルーム入った瞬間の光るオブジェクトの初期色(地上&地下、海、城の三カ所?)とか 一瞬でも見た目が不自然なところ気になったのでバイナリエディタで手動変更して整える必要あった YYエディタとマリオえでぃた〜併用でレンガや使用済みブロックのグラフィックのアドレス変えた時も 叩いた後のレンガや使用済みブロックは元のアドレス残ってて、それらもバイナリエディタで手動変更する必要あった 例えツールで弄れる範囲の改造しかしてなくても、ツールを過信し過ぎるのはダメなのね ツタを出した後右寄せで次の土管に入るとボーナスステージの上から降ってきてしかもツタが消えてるんだな そんなバグ知らんかったわ 土管やツタ毎に行き先設定されているのではなく、どこまで画面がスクロールしたかで行き先設定されているからなー 改造で複数の行き先あるルーム作る時はうまく横位置考えて設定しないと作者の予期せぬ場所に出たりハマったりする 意地の悪い改造作品ではスクロールで正しい行き先になるように調整しないとクリアできないようなのもあったような チビマリが高さ2ブロックの角に入れません マリオの横位置が関係してるんですか?何度か試すと簡単に入る時があります 1マス手前くらいから <>B >A > > > > > > > > > < < < の入力をすれば入れるやつです ようは1-1の最初の土管に最速で角入りできないのは何故かという事です 少しマリオの位置が戻れば多分入れる気がする 一見ノーマルレイアウトで普通にクリアできるけど 意外な所に奇想天外な楽しい仕掛けがたくさん仕込んであるようなのを誰か作ってくれないだろうか? 動画を見た人が無改造のやつで試したくなっちゃうようなやつ ぶっとびねっとそろそろやばいぞ SMBアーカイブのファイルが欠けまくってる >>192 簡単にSMB2のワールドセレクトできる改造マリオつくって オブジェクトを他のルームから移動させまくって置ける限界まで使いきった面ばかりにしようとしたら 限界まで12ルーム+残り滓で1ルーム組むみたいな構成になった 今回ルーム間の移動は使わない予定なので、ボーナス面みたいなの出す代わりにコインの配置を増やすが 4ステージ構成の3ワールドでクリアにして面セレクトでしか行けないようにした4ワールドをオマケ扱いにすべきか 4ワールドだけ半端な長さでクリアにすべきかで迷っている スーマリのバグ発見 7-4で右寄せしてると迷路が永久に脱出できない 多分4-4でもそうなんじゃねーかな read.cgi ver 07.5.0 2024/04/24 Walang Kapalit ★ | Donguri System Team 5ちゃんねる