Skip to main content

Background Scrolling Data Info

Foregrounds and backgrounds scroll differently in many levels, sometimes they have a fast speed ratio and sometimes they can be completely static, this can be changed via hex editing your level.

  • Background only --> Change block 3 only.
  • Foreground only --> Change block 5 only.
  • Both --> Change both blocks 3 and 5.

BG hexadecimal example.png

  • Byte 11: Control BG horizontal scrolling.
  • Byte 13: Control BG vertical scrolling.

And for each byte:

  • First Nybble: Control where the background starts when the player enters the views.
  • Second Nybble: Control speed.
Data
  • 0x0: Makes the BG completely static. Used in w2-3 (sewer level) for example.
  • 0x1: Scroll slower than level. Used in most levels.
  • 0x2: Scroll slower than level, maybe slower than 0x1?
  • 0x3: Slightly faster than 0x2.
  • 0x4: Scroll faster than level.
  • 0x5: Approximately 3 times speed scrolling.
  • 0x6: Extremely slow scroll, almost static to screen.
  • 0x7: A little faster than 0x6.
  • 0x8: Scroll slower than level, again?
  • 0x9: Scroll exactly the same as level.
  • 0x10: Scroll same as level.
  • 0x11: Vertical started image at top half of level and horizontal/vertical scrolling is about mid speed.
  • 0x30: Scroll same as level.
  • 0xFF: Makes the BG scroll extremely fast.

Disabling vertical scrolling

  • Background only --> Change both bytes 13 and 16 of block 3 only.
  • Foreground only --> Change both bytes 13 and 16 of block 5 only.
  • Both --> Change both bytes 13 and 16 of both blocks 3 and 5.

 

  • Byte 13: enters 40.
  • Byte 16: enters 10.

Automatic horizontal scrolling

Works for both foregrounds and backgrounds.

It only works for backgrounds that already have a horizontal animation, this can be achieved by putting a value of 10 for byte 16 and it will animate the whole background instead of partially animating it.
(Note : if byte 13 value is somewhere between 40 and 4F, this effect will be overridden and instead the vertical scrolling will be disabled).