Here's a neat little hack that adds more flavour to the Dance command. When you reach the World of Ruin, Dance will change the battlefield backgrounds into their WoR counterparts instead of the World of Balance backgrounds.
Wind Song: Dry land
Forest Nocturne: Brown forest
Desert Aria: Desert (WoR)
Love Sonata: Fanatic's Tower interior
Earth Blues: Kefka's Tower exterior
Water Rondo: (unchanged)
Dusk Requem: Blue/Purple caves (note: if you prefer the fiery red of the Phoenix Cave, change it to $2A!)
Snowman Jazz: (unchanged)
This patch only uses free space in bank D1 - it should be compatible with most other patches.
Download
Code:
[spoiler]
[/spoiler]
Wind Song: Dry land
Forest Nocturne: Brown forest
Desert Aria: Desert (WoR)
Love Sonata: Fanatic's Tower interior
Earth Blues: Kefka's Tower exterior
Water Rondo: (unchanged)
Dusk Requem: Blue/Purple caves (note: if you prefer the fiery red of the Phoenix Cave, change it to $2A!)
Snowman Jazz: (unchanged)
This patch only uses free space in bank D1 - it should be compatible with most other patches.
Download
Code:
[spoiler]
Code:
; World of Ruin battle backgrounds for Dance
; by Seibaby
; v1.0 - Initial version (2018/10/03)
;xkas 0.06
hirom
;header
!freespace = $D1F9D0
; Hook
org $C217A3
JSL setDanceBG
; Table of WoR backgrounds associated with each Dance
org $D1F9A3
reset bytes
worDanceTable:
db $05 ; World of Ruin (Wind Song)
db $01 ; Brown Forest (Forest Nocturne)
db $2F ; Desert, WoR (Desert Aria)
db $04 ; Fanatic's Interior (Love Sonata)
db $16 ; Kefka's Domain Exterior (Earth Blues)
db $23 ; Underwater (Water Rondo)
db $11 ; Blue/Purple Cave (Dusk Requiem)
db $12 ; Icy Field (Snowman Jazz)
wobDanceTable:
db $00 ; Grass (Wind Song)
db $03 ; Green Forest (Forest Nocturne)
db $02 ; Desert, WoB (Desert Aria)
db $2B ; Light Building (Love Sonata)
db $0B ; Mountain Top (Earth Blues)
db $23 ; Underwater (Water Rondo)
db $0A ; Brown Cave (Dusk Requiem)
db $12 ; Icy Field (Snowman Jazz)
; for reference, see
; https://www.ff6hacking.com/wiki/doku.php?id=ff3:ff3us:doc:asm:list:battle_backgrounds
org !freespace
reset bytes
setDanceBG:
LDA $1E94 ; Event flags
BIT #$10 ; Are we in the WoR?
BNE .wor ; If so, change the Dance BG
.wob LDA wobDanceTable,X ; Get default background for this Dance
RTL
.wor LDA worDanceTable,X ; Get associated WoR background
RTL
print bytes," bytes written"