atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
cocoaの隠れ処
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
cocoaの隠れ処
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
cocoaの隠れ処
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • cocoaの隠れ処
  • カスタムブロック

cocoaの隠れ処

カスタムブロック

最終更新:2012年03月02日 18:35

cocoadayo

- view
だれでも歓迎! 編集

カスタムブロックを設置してみましょう。

目次

  • 目次
  • bliteでブロックを作る
    • 入手
    • 使い方
    • オリジナルブロックを作る(.asm編)
      • .asmのOffset
    • オリジナルブロックを作る(.bin編)
  • BTSDでブロックを作る
    • 入手
    • 使い方

bliteでブロックを作る

ブロックに触れたときの動作などをプログラミング(.asmファイル)して、それをアセンブルし、ROMに書き込み、16x16 Map Editorでグラフィックを設定して設置を行います。今回はプログラミングを省いて、既存のブロックを設置してみましょう。後に65C816でプログラミングして書き込んでみます。

入手

blktool互換ツールからuo_blite.zipをダウンロードできます。ダウンロードしたら展開して適当に整理して下さい。

UO版の利点はasm形式(プログラミング言語)で書いたものをまとめてアセンブル(機械語に翻訳)してくれるところです。次に詳解するBTSDでも同様の処理が出来ます。なお、block toolというのもあるが処理が重くなってしまうのでこちらの方がお勧めです。

自分でブロックの処理が書けるようになるのが目標ですが、まずは他の方々が製作した機能を利用させて頂きましょう。先ほどのページの下にblktool.zipがあると思いますのでこれもダウンロードします。展開したら/blockに入れて下さい。

使い方

  1. ファイル -> ROMを開くより書き込みたいROMを開きます。ROMのパスに半角スペースが含まれていると正常に実行できない可能性があります。
  2. /blockにブロック類(.blk)が入っていることを確認します。
  3. bltedit.exeを起動します。
  4. 書き込みたい16x16 Tile Mapのアドレスをm16に指定します。例えば200(16進数)としましょう。
  5. 右のリスト(*1)から書き込みたいブロックを選択します。例えばパワーアップのcape blockとしましょう。
  6. 「<<」ボタンをクリックします。
  7. ファイル -> 保存より保存先を選択します。上書きすることも出来ます。
  8. ファイル -> bliteにぶち込むより先ほど指定した保存先に上書きされます。

設置に関しては、Lunar Magicで説明しましたので、書き込んだアドレスをAct asに指定してやってみて下さい。但し、既に効果が指定されているタイル番号で他のAct asを指定すると複合された形で動作してしまいます。正常に動作しない場合も考えられますのでご注意下さい。

オリジナルブロックを作る(.asm編)

自分で.asmを書いてそれをbliteにぶち込むだけでxkasがアセンブルして書き込んでくれるので非常に便利なツールです。さて、騙されたと思って以下のアセンブリをcape.asmとして/block/test/cape.asmに保存してみましょう。

print "BELOW 0 ",pc
LDA #$02
STA $19
RTS

続いてblkedit0.exeを実行し、Nameにブロック名(例えばマントブロックなど)、descriptionにブロックの説明を書き、BELOWに0と記入します。他は記入してはいけません。最後にASMにcape.asmと記入し、/block/testにSAVEします。

あとは先ほどと同様にcape.blkを導入し、設置したブロックをしたから叩くと……マントマリオになります。

.asmのOffset

音符ブロックに乗ったとき「びよ~ん」と音がし、マリオがはねます。ところが、下から叩いても音はせず跳ね返りもしません。このように真理夫の触れられた位置により処理を分岐できれば表現の可能性が広がりそうです。

bliteではABOVEやBELOW蘭にある数値(*2)をIDとして扱います。例えば、0をABOVE, BELOWに指定したとして、

print "ABOVE 0 ",pc
~上から触れた場合の処理~
RTS
print "BELOW 0 ",pc
~下から触れた場合の処理~
RTS

と書くことで処理を分岐できます。また、

print "BELOW 0 ",pc
~BELOW = 0のときの処理~
RTS
print "BELOW 1 ",pc
~BELOW = 1のときの処理~
RTS

と書くことで、BELOWに指定された数値に対して処理を分岐することが出来ます。こうすることで1つのアセンブリファイルでも複数の処理に対応でき、スペースの節約にもなります。

print "方向 ID ",pc

のIDの後には半角スペースが必要です。実際にはxkasがデバッグとして「"方向 ID " + この指令のアドレス」の文字列を出力するのでそれをOffsetとして書き込む……というものです。使用する分には上の感覚で十分でしょう。つまり、実行される最初を指定すると言うことです。

print "xxx ID ",pcを使って色々な挙動で実験してみました。

BELOW
下の判定
ABOVE
上の判定
SIDES
左右の判定
SPRUD
スプライトの上下判定
SPRLR
スプライトの左右判定
CAPE
マントの回転攻撃判定
FIRE
ファイアーマリオでの攻撃判定
RESV1
上の端(左右)の判定
RESV2
未確認
RESV3
下の端(左右)の判定
RESV4
RESV5
RESV6
RESV7

オリジナルブロックを作る(.bin編)

基本的にblkedit0.exeでASM蘭に.binのファイルを書くだけの違いですが、自分で.asmファイルをアセンブルして.binを作成しなければなりません。通常1から自作する場合は利点がないと言えます。SMW CentralのToolsからTRASMをダウンロードします。sprite toolがある場合はそのディレクトリに入っている可能性があります。

cape.asmを

LDA #$02
STA $19
RTS

と書きます。書いたらこのファイルをtrasm.exeに突っ込んでアセンブルします。出てきたcape.binを先ほどと同様の手順でROMに書き込めば終了です。

BTSDでブロックを作る

海外だとよく使われているようです。bliteが優秀なので特に使う必要はないかも知れません;

入手

SMW Centralの右側のメニューからToolsへ行き、そこでBTSDをダウンロードして下さい。当然、ダウンロードしたら適当な場所に展開して下さい。

使い方

  1. BTSDのあるディレクトリ内にブロックのデータを入れます。(*3)
  2. Blocktool Super Deluxe.exeを起動します。
  3. File -> OpenからROMを開きます。
  4. Data -> Edit databaseをクリックします。
  5. 新しく追加するには「Add」をクリックします。
  6. 続いて、BIN形式を追加する場合はBINタブを選択し、BIN pathにBTSDをルートとした相対パスを指定します。(*4)
  7. 説明が必要な場合はDescriptionに説明を書きます。
  8. 全て登録し終えたらOKを押します。なお、次回もdatabaseは記録されたままです。
  9. Block -> Insertよりブロックを選び、Map16のアドレスを指定してInsertを押します。
  10. 全部挿入し終えたらFile -> Saveより保存します。
「カスタムブロック」をウィキ内検索
LINE
シェア
Tweet
cocoaの隠れ処
記事メニュー

更新ページ

取得中です。

人気ページ

TOTAL : -
  • 65C816
記事メニュー2
人気記事ランキング
  1. xkas
  2. 65C816
もっと見る
最近更新されたページ
  • 4852日前

    応用65C816
  • 4852日前

    トップページ
  • 4852日前

    メニュー
  • 4852日前

    Lunar Magic
  • 4852日前

    カスタムブロック
  • 4852日前

    xkas
  • 4852日前

    65C816
  • 4852日前

    応用65C816/カスタムブロック
  • 4852日前

    応用65C816/SMW全般
  • 4852日前

    メモリ資料
もっと見る
「改造マリオ」関連ページ
  • No Image 65C816
  • No Image Lunar Magic
人気記事ランキング
  1. xkas
  2. 65C816
もっと見る
最近更新されたページ
  • 4852日前

    応用65C816
  • 4852日前

    トップページ
  • 4852日前

    メニュー
  • 4852日前

    Lunar Magic
  • 4852日前

    カスタムブロック
  • 4852日前

    xkas
  • 4852日前

    65C816
  • 4852日前

    応用65C816/カスタムブロック
  • 4852日前

    応用65C816/SMW全般
  • 4852日前

    メモリ資料
もっと見る
ウィキ募集バナー
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MadTown GTA (Beta) まとめウィキ
  2. GTA5 MADTOWN(β)まとめウィキ
  3. R.E.P.O. 日本語解説Wiki
  4. シュガードール情報まとめウィキ
  5. SYNDUALITY Echo of Ada 攻略 ウィキ
  6. ガンダムGQuuuuuuX 乃木坂46部@wiki
  7. ドタバタ王子くん攻略サイト
  8. 星飼いの詩@ ウィキ
  9. パズル&コンクエスト(Puzzles&Conquest)攻略Wiki
  10. ありふれた職業で世界最強 リベリオンソウル @ ウィキ
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  6. 発車メロディーwiki
  7. MadTown GTA (Beta) まとめウィキ
  8. 検索してはいけない言葉 @ ウィキ
  9. オレカバトル アプリ版 @ ウィキ
  10. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. anbrella(餡ブレラ) - ストグラ まとめ @ウィキ
  2. 参加者一覧 - ストグラ まとめ @ウィキ
  3. 敵情報_第2章 - モンスター烈伝オレカバトル2@wiki
  4. 参加者一覧 - MadTown GTA (Beta) まとめウィキ
  5. Lycoris - MadTown GTA (Beta) まとめウィキ
  6. 山田 ジェイミー - ストグラ まとめ @ウィキ
  7. アルフォート ウェスカー - ストグラ まとめ @ウィキ
  8. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  9. コメント/雑談・質問 - マージマンション@wiki
  10. ぶんぶんギャング - MadTown GTA (Beta) まとめウィキ
もっと見る
注釈

*1 /blockにあるデータリストです

*2 これがOffset

*3 例えばtest.binというブロックがあったとして、/test.binでもいいし、ディレクトリを作って/block/test.binでもいいです。

*4 先ほどのblock/test.binなどのことです。

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.