## News:

11 March 2016 - Forum Rules

## Interesting SMB1 discovery ('Shy Bloopers')

Started by therealtaftq, May 21, 2022, 10:52:23 PM

#### therealtaftq

I made an interesting discovery about Super Mario Bros. earlier today; specifically, about one of the enemies.

You all know how Bloopers act, right? Moving in a zig-zag pattern, always going after Mario...
Well, it turns out that not all of them act like that.

Some Bloopers actually act like Boos. They chase Mario like the normal ones when he's facing away from them, but turn around and go the other way when he turns to look at them.
I've dubbed these Bloopers 'shy Bloopers' due to their unusual behavior.

I have a few theories for what causes these Bloopers to act different than the others.
Here they are from most likely to least likely:
1. It's determined by the Blooper's X or Y position, similarly to how some enemies in Super Mario World are programmed.
2. Shy Bloopers are not the same object as normal Bloopers, and are instead a subtype with different behavior.
3. Every Blooper has a random chance of acting like this to make them less predictable. Scratch that, this one's definitely not true. Which behavior each individual Blooper has is always the same.

I'm not entirely sure if this is relevant to the content of this site, but I thought this was really interesting, and was wondering if anyone else knew about this or had any information on it.

I haven't been able to find anything online about this. Is it possible that I'm the first person to discover this, or at least the first to document it?

TL;DR: Did anyone else know about shy Bloopers? What causes them to behave differently than other Bloopers?

Update: Made some changes to the original post to make things a bit clearer. I also made a video showing this behavior in action. Here's the link: https://www.youtube.com/watch?v=lqdNCq6jGA8

Update 2: Turns out my first theory was right! Bloopers placed at an odd X coordinate behave normally, while Bloopers placed at an even X coordinate exhibit the behavior described above.
I wonder if there are any other enemies whose behavior is determined this way...

#### gamingcat02261991

These X coordinate mentions remind me of how certain objects in Super Mario World behave when put in specific coordinates. Believe me, I have Lunar Magic as proof.

#### therealtaftq

Yeah, I noticed that too. The way these Bloopers act is also really similar to how Boos act. Makes you wonder...

#### N·K

Apparently, the X coordinate is irrelevant, and the behavior changes depending on whether the pointer of the enemy slot is even or odd.
The following is an excerpt of the relevant code.
`BlooberBitmasks:      .db %00111111, %00000011MoveBloober:        lda Enemy_State,x        and #%00100000             ;check enemy state for d5 set        bne MoveDefeatedBloober    ;branch if set to move defeated bloober        ldy SecondaryHardMode      ;use secondary hard mode flag as offset        lda PseudoRandomBitReg+1,x ;get LSFR        and BlooberBitmasks,y      ;mask out bits in LSFR using bitmask loaded with offset        bne BlooberSwim            ;if any bits set, skip ahead to make swim        txa        lsr                        ;check to see if on second or fourth slot (1 or 3)        bcc FBLeft                 ;if not, branch to figure out moving direction        ldy Player_MovingDir       ;otherwise, load player's moving direction and        bcs SBMDir                 ;do an unconditional branch to setFBLeft: ldy #\$02                   ;set left moving direction by default        jsr PlayerEnemyDiff        ;get horizontal difference between player and bloober        bpl SBMDir                 ;if enemy to the right of player, keep left        dey                        ;otherwise decrement to set right moving directionSBMDir: sty Enemy_MovingDir,x      ;set moving direction of bloober, then continue on hereBlooberSwim:`

#### NesDraug

Oh, yeah. Come to think of it, I accidentally put them in Mario´s Keep. It´s especially annoying in some stages. https://www.youtube.com/watch?v=AOSFTbyJOWk&t=5706s
✍️ Blog: https://www.tumblr.com/blog/nesdraug

💀 Join my crypt on discord:
https://discord.gg/Eb4HTSNzeg