Cave scanning order effects or "Safely touch fireflies!

Everything about the various Boulder Dash tools, and other stuff created by the fans.

Moderator: Admin

User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

EDIT: Here's another little exercise for you: As stated above, the solution of cave 13 you see in the video was not my intended one. So can you figure out a completely different way to solve the cave?

Hint: in the intended solution, the butterfly will actually come out first!
Solution in one of the next few episodes! :idea:
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 19 - cave 14 analysis
https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 14 ("Too Hard For Dustin's BD") starts at 0:50.
I actually had designed this puzzle cave years ago, with the intention to make
an intermission for the Dustin's BD series out of it, but I thought it's just
insane to demand from the player to first-try this... so it ended up being part
of the "CSO" series instead :lol:


What do we see?
Well, as this cave wasn't originally meant to show cavescanning order tricks in
the first place, let's try to solve the puzzle aspect of it as well.
Rockford needs 10 diamonds, which must seemingly come from the butterfly
and the free diamond. But then, there's the first problem - how to crush the
butterfly with one of the two boulders? Also, the exit is blocked off... :(
As the video shows, there turns out to be a hidden magic wall, which allows
Rockford to crush the butterfly with the diamond and get the 10th diamond
from a boulder conversion!
Alright, but there's still another big problem - how to free the exit? It must
obviously be done with a boulder crushing the firefly, but getting one of the
boulders into the lower half seems impossible. However, the video shows how
it's done: the growing wall somehow helps to "push" the top boulder one
step to the right!
:shock: This way, the boulder gets away from the cave
border so that Rockford can now push it into the lower half without any more
problems.
(Note that it's actually a light boulder, meaning it can be pushed without
delay, but apart from that, it just behaves like a normal boulder!)

How does it work?
The bold part above is actually the real cavescan-order-trick. Let's see how it
works in detail. We start a few frames before the boulder is "magically"
moving right:
Frame 0
Image
The firefly is an indispensible part of the action, as it's needed to stop the top
boulder from falling sideways for long enough.
Cavescanning order of the relevant elements:
1. The top boulder is blocked by the firefly.
2. The firefly is next. It notes that it can neither make a left turn nor move
straight, so it makes a right turn without moving.
3. Rockford's turn. He must snap down to free the growing wall.
4. The growing wall grows left, where Rockford has just cleared the way.


Frame 1
Image
1. The top boulder is still blocked.
2. The firefly now moves right
3. Rockford is now threatened by the fly and must move away immediately!
4. The growing wall grows on.

Frame 2
Image
Now comes the decisive moment! Attention, please! :D
1. The top boulder is now free! So it starts to fall sideways from the
bottom boulder! That means it moves one step right and thereby becomes a
"falling boulder" because it thinks it can fall down into the empty space in the
next frame!

2./3. The firefly and Rockford are no longer part of the action.
4. Now the growing wall grows on and blocks the empty space where the
boulder intended to fall!


Frame 3
Image
The top boulder is scanned. It's furious - why can't it fall down when there
has been empty space just one frame before?! The growing wall makes an
innocent "it wasn't me!" face, but we know the truth... :D
So that's how the magic works! The boulder started to fall sideways in
frame 2 because it "saw" empty space to its right AND to its bottom-right. So
it moved right, intending to fall down next frame. But in the same frame, the
growing wall "trolled" the boulder by blocking the way!


Actually, the same trick can be done at the right border and it's even a lot
simpler then. I haven't prepared an image to illustrate this, so let me do some
"good old ASCII art" again ;D
DDDDT
DDDBT
DGRBT
DDDDT
D=Dirt, B=Boulder, R=Rockford, G=Growing wall, T=Titanium wall
If Rockford moves up by two steps in this scenario, the top boulder will move
one step left!
I'll leave it as an exercise to you if you want to make a frame-by-frame
analysis here. Also, you might want to find out why this works without a
firefly, while the firefly was strictly necessary in the above cave!
The solution to this exercise and the one from episode 18 will come in the
next episode! See you there! :bye:

EDIT: Actually the trick analyzed in this episode has been seen many times
before (the same goes for many other cavescan order tricks as well), but I
don't have any concrete videos at hand. Arno (or someone elase), if you have
a nice video in mind that fits into this episode, it'd be cool to have the link
here! :D
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 20 - Solutions and cave 15 analysis

I Solution to the exercise of episode 18
Here's the intended solution of cave 13:
Image
Instead of the solution you see in the video and which I explained in episode
18, my intended way to solve the cave was the following:
Image
The trick is to manoever a boulder between the fire- and the butterfly, so that
it blocks off the firefly but not the butterfly. More precisely, the cavescanning
order now works as follows:
1. The firefly is scanned first and, as the boulder blocks its way, it turns right
without moving.
2. The boulder itself is next and falls down.
3. The butterfly can come out now, because the boulder has just moved out of
the way.
4. Rockford moves down to escape the boulder.
So the next frame, we have the following picture:
Image
1. The firefly is first again. It still tries to come out, but now the butterfly is in
the way! So the firefly was blocked off two frames in a row, which
means it turns right again and now faces left, ready to move into its cage
again!
2. The butterfly turns right and thereby moves up from our point of view.
3./4. The boulder falls again and Rockford moves out of its way.
Image
The "cavescan order action" is over - the firefly will now need many seconds
to come out of the cage, so there's enough time to crush the butterfly and exit
before the firefly runs into the (upper) voodoo.
But wait! Won't the butterfly kill the voodoo now? Um... I actually forgot to
clear some dirt in the images... before manoevering the boulder between the
flies, Rockford should have cleared a path for the butterfly in a way that the
bfly will move around the right cage and thereby avoid the voodoo! Then
Rockford has enough time to crush the butterfly, collect the diamonds and exit
before the firefly will touch the upper voodoo.

II Solution to the exercise of episode 19
That was just two days ago, so don't read on if you still want to do it for
yourself ;D
Frame 0
DDDDT
DDDBT
DGRBT
DDDDT
D=Dirt, R=Rockford, B=Boulder, T=Titanium wall, G=Growing wall
Let's see what happens if Rockford moves up two steps:
Frame 1
DDDDT
DDRBT
DGSBT
DDDDT
S=Space
We see again that a growing wall which touched Rockford from left does not
immediately fill the gap that Rockford left behind. Now in the next frame, a lot
will be going on, so let's check the cavescanning order:
1. Rockford moves up.
2. The top boulder sees enough empty space to its left to start falling
sideways from the bottom boulder.
3. The growing wall grows right.
Frame 2
DDRDT
DDBST
DGGBT
DDDDT
So here we see the same thing as discussed in episode 19 - the top boulder
"thought" it could fall sideways, but in the same frame it was blocked by the
growing wall, so it just "magically" moved one step left!
And why doesn't it work the same way if everything is mirrored?
TDDDD
TBDDD
TBRGD
TDDDD
The experienced reader of this thread will know the answer immediately: If
Rockford moves up here, the growing wall (now toucvhing Rockford from
right) will immediatelyfill the gap, so that the next picture looks as
follows:
TDDDD
TBRDD
TBGGD
TDDDD
Now it's clear that the boulder will never start falling sideways anymore, which
means the whole trick doesn't work this time. That's why in cave 13, it was
necessary to "ask" a firefly for help!

III Cave 15 analysis
https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 15 (""Voodoo Shooting") starts at 1:31.
Actually this analysis will be relatively short, because we've seen the same
trick already in episode 18/cave 13. Here's the map:
Image
This cave is highly inspired by an Arno Dash intermission! :D

What do we see?
Rockford must somehow get past the two "voodoo walls" to reach the exit. In
the video, you see that he blasts the flies next to the voodoos and survives, as
if the voodoos were just normal brick walls!

How does it work?
The decisive moment is when a fly hits the voodoos:
Image
The clou is that the boulder is scanned before the fly. So the boulder kills
the fly before the fly kills the voodoo!
This leads visually to the same
thing - the fly is crushed and so are three voodoos - but the strange voodoo
rules state that Rockford only explodes if a fly explodes a voodoo! Here, it was
the boulder that (indirectly) killed the voodoos, and that means that
Rockford is not harmed! :lol:

In the next episode, we'll see how it's even possible to blast through a
bidirectional growing wall using cavescanning order tricks! Don't miss that
one! :D
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Arno
Site Admin
Posts: 2826
Joined: Sat Mar 17, 2007 2:26 pm
Location: netherlands
Contact:

Post by Arno »

Dustin wrote:Actually the trick analyzed in this episode has been seen many times before (the same goes for many other cavescan order tricks as well), but I don't have any concrete videos at hand. Arno (or someone elase), if you have a nice video in mind that fits into this episode, it'd be cool to have the link here! :D
Here are a few caves using the trick of moving a boulder/diamond by activating a g-wall: :)
- https://www.youtube.com/watch?v=S6K0enGlbD0
- https://www.youtube.com/watch?v=eeLWCmOWCok
- https://www.youtube.com/watch?v=lU-jvFXwtbY
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 21 - cave 16 analysis
First of all, thx for the videos Arno! Very nice caves showing also some
variations of the trick! :thumbs_up:

So now let's see how to blast through a bidirectional growing wall! :D
https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 16 ("Unstoppable Beast") starts at 1:56.
Here's the map:
Image

What do we see?
Basically, we see Rockford blasting through a vertical, bidirectonal growing
wall from right to left. It looks dangerous, as he has to let the firefly come
very close so that the wall cannot block the firefly off. After the explosion,
Rockford is just quick enough to slip through before the wall regrows!

How does it work?

There are two independant tasks Rockford has to solve:
1. Blast a hole into the wall. This is a problem because the wall grows
horizontally.
2. Get through the wall before it regrows. This is a problem because the wall
grows vertically.
So this cave combines techniques for horizontally and vertically growing walls!

Part 1 - blasting a hole into the wall
Let's start our investiagtion from this picture:
Frame 0
Image
Note that the lower diamond is irrelevant for the technique, while the upper
one would normally be a boulder. It's essential for the trick to have Rockford
exactly 2 steps below the boulder/diamond at that the fly approaches
Rockford from right as close as possible.
Now (cavescanning order):
1. Rockford moves up. (The wall will not immediately fill the gap because it is
at Rockford's left side. We've seen this before!)
2. The firefly follows.
So in this frame, the wall could not grow at all!

Frame 1
Image
1. Rockford moves right. Again, the wall will not immediately fill the gap.
2. The firefly will not follow this time, because fireflies can't make right turns
immediately!

Frame 2
Image
The decisive moment:
1. The diamond is scanned first, so it falls into the gap (before the wall can
block it!)
2. Now the wall(to the left of the gap) is scanned, but it's too late - it's now
blocked by the falling diamond, so it cannot grow.
3. Rockford moves right, away from the upcoming explosion.
4. The firefly would now be ready to move, but it's also blocked by the
diamond. So it could only move back from where it came, but for a 180° turn,
a firefly needs two pausing frames, so it stays where it is.

Frame 3
Image
So it's done - the diamond will explode the firefly and blast a hole into the
wall!

Part 2 - getting past the wall before it regrows
Rockford now moves down and waits for the smoke to disappear. It starts to
get interesting again a few frames after the last picture, when the smoke is
just about to vanish:
Image
Cavescanning order:
1. The three walls above the smoke are scanned one by one, but they cannot
grow because the smoke is still there.
2. Now the top row of smoke is scanned and vanishes.
3. The wall in the same row can grow left now.
4. Steps 2 and 3 repeat in the middle row of smoke.
5. Now the bottom row of smoke vanishes.
6. Rockford is scanned last, so he can immediately move into the gap that the
smoke just left behind!
The decisive steps are 1 and 6 here. The wall at the top of the smoke is
scanned before the smoke vanishes, so it cannot immediately grow.
Rockford, however, is scanned after the smoke has vanished, so he can
immediately move into the gap!

Unfortunately, I forgot to make a picture of the next frame, but it's clear that
Rockford now has an advantage over the wall that allows him to be quick
enough to get to the exit before it's blocked off! :D
EDIT: Here it is:
Image

In the next episode, we will see another amoeba! Why does it kill three
fireflies but not the fourth? The answer will be given by the cavescanning
order (what a surprise! :D )
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 22 - cave 17 analysis and ten brand new caves!

https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 17 ("Survivor") starts at 2:12.
Here's the map:
Image

What do we see?
There are four fireflies running into amoebas. None of the amoebas grow -
that much luck is necessary for the cave to work - and the cave looks very
symmetric, yet one of the fireflies survives while the others explode. In the
same moment, the remaining amoeba turns into a diamond, obviously
because of the magic wall that was just activated. But why does the lower-
right firefly survive while the other three explode?
BTW, the high time limit isn't intended, I just forgot to lower it :D

How does it work?
To understand what's going on exactly, let's first clarify two BD engine rules
about the amoeba:
Rule #1: Fireflies touching amoebas
Of course fireflies explode when they touch amoebas, but what I want to
clarify is that the explosion always happens when the firefly is scanned. If an
amoeba is scanned and "sees" a firefly next to it, nothing happens!
Rule #2: Magic wall stopping the amoeba
This rule slighty varies from engine to engine, which means that possibly
this cave won't work the same way on different BD clones!

The engine on Krissz's site (where this cave was made) works as follows:
If a magic wall is activated, the engine immediately changes the amoeba
state from "alive" into "trapped", which means that every time the engine
scans an amoeba after the MW activation, it converts it into a diamond.

This cave is designed in a way that everything happens in one frame - the
magic wall activates, the flies explode and the amoeba converts! So,
obviously, we'll analyse this very frame in detail :idea:
This is the picture immediately before the explosion/activation:
Image
EDIT: I just noted that I gave the fireflies in this pic the wrong directions -
they all actually face into the opposite direction as in the picture!
Cavescanning order (just for refreshment or for new readers: the cave is
scanned from top to bottom, each row from left to right, and only the
elements which can move or explode are interesting):
1. The top-left firefly sees an amoeba next to it and explodes due to rule #1
above.
2. The top-left amoeba is no longer there.
3. The top-right amoeba sees the firefly next to it but does not explode due to
rule #1.
4. The top-right firefly does, however.
5. The next "active" element is the falling boulder. It sees the magic wall
below it, activates it and vanishes into it at the same time. So, due
to rule #2, from now on every scanned amoeba will be turned into a
diamond!

6. Rockford is next, but he's irrelevant for the action in this frame. (However,
he must run down as quickly as possible to stop the lower-right firefly from
running into the voodoo some frames later!)
7. The magic wall is scanned, but as it has already been activated, this isn't
relevant either.
8. The bottom-left firefly is next and explodes because of the amoeba next to
it. (So the bottom-left amoeba is gone before it could be scanned!)
9. The bottom-right amoeba is next. As we saw in step 5, it converts into a
diamond!

10. The bottom-right firefly is last - and that's its luck, because the amoeba
to its left side has just converted into a harmless diamond! And that's why
the fly survives!
So, instead of exploding, it moves one step down.
Taking all the action together, the next frame looks as follows:
Image
So to summarize the fate of all four fireflies:
The two top fireflies exploded because the magic wall was not activated yet,
so that the deadly amoebas had no reason to convert.
The bottom-left firefly exploded because it was scanned before the amoeba,
so it exploded before the amoeba could convert.
The bottom-right firefly, however, was scanned after the amoeba, so the
firefly did not "see" a deadly amoeba to its left, but a harmless diamond! :D

Two frames later, we have another interesting picture worth mentioning for
cavescanning order issues:
Image
Here, it's important that Rockford is scanned before the firefly. This way,
Rockford is just in time to snap down and deflect the firefly that was about to
kill the voodoo!

I hope you enjoyed this episode! If you want to see more cavescanning-order-
caves, here's a brand new video from Arno (thanks again for uploading!!):
https://www.youtube.com/watch?v=a0FbalbVy5g
He even uploaded an extra video for the last big cave, showing various
solution methods:
https://www.youtube.com/watch?v=Jc1tlOM8gXo
Have fun watching! :D

In the next episode, we'll see Rockford trying to grab as many diamonds from
a butterfly as possible before they vanish into an absorbing magic wall!
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 23 - cave 18 analysis

https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 18 ("Slippery") starts at 2:30. Here's the map:
Image

What do we see?
Rockford wants to get diamonds from a butterfly, but there's a catch: the
newborn diamonds will inevitably fall down toward a mgic wall which absorbs
them. So basically, the challenge is clear: Rockford must grab as many
diamonds as possible before they start falling! The video shows a way to get 5
out of 9 diamonds, which is probably the maximum. One diamond safely lands
on dirt, the other 4 just have to be collected as quickly as possible!

How does it work?
Finding the solution might be a matter of trail-and-error and/or some
paperwork :D But there's also a new cavescanning order trick involved, so
let's analyse how the four unstable diamonds are collected frame-by-frame
again!
Frame 0
Image
This is the picture directly before Rockford collects his first diamond. The nine
diamonds aren't fully born yet and thus still incollectable. Let's numerate them
as follows:
123
456
789
Here, it is very important that Rockford placed himself below diamond
#7. This way, this diamond will be scanned before Rockford. When the
diamond is scanned, it turns into a "finished" diamond which is finally
collectable. Then, when it's Rockford's turn in the same frame, he can already
collect this diamond!
If, however, Rockford had placed himself to the left side of diamond #7, he
would be scanned before the diamond, so the diamond would still be
incollectable and Rockford could only start collecting diamonds one frame
later!
So this is the next frame's picture:

Frame 1
Image
Diamonds #1, 3, 8 and 9 are all ready to fall, and #1, 3 and 9 will do exactly
that. As for diamond #8, however, Rockford is scanned before this diamond,
so he's just in time to collect it before it would get lost!
Here, we see another important part of Rockford's strategy: He placed himself
under the bottom-left diamond at the beginning because he wants to be
scanned before the diamonds start falling!

Frame 2
Image
The rest is now quite clear: Rockford collects diamond #5 above him next...

Frame 3
Image
...and now diamonds #2 and #3 are free to be collected without any
problems!

Summary - why did Rockford place himself below diamond #7 before the
action started?

He did so because of two cavescanning-order-ideas:
1. In frame 0, he wanted to be scanned after diamond #7, because the
diamond had to turn into a normal, collectable diamond before Rockford could
collect it. This is why he placed himself below one of the diamonds.
2. And why did he place himself below diamond #7 and not 8 or 9? This is
because in frame 1, he wanted to be scanned before diamond #8, so
he could collect the diamond before it would start falling!To achieve this, he
had to be to the diamond's left side!

In the next episode, we will see a firefly helping Rockford in an unusual way -
it does not blast a wall for him, but it slows down a bidirectional growing wall!
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
zsom
Member
Posts: 84
Joined: Sat Apr 10, 2010 5:46 am

Post by zsom »

Dustin.
Your articles are amazing.
The latter made a big impression on me that you can play that way.
Also write something about slime.

I also decided to check something, and I noticed that a stone, or a diamond, falling through a magic wall is twice as fast as a stone falling in space.

Please continue the topic.

best regards
User avatar
Arno
Site Admin
Posts: 2826
Joined: Sat Mar 17, 2007 2:26 pm
Location: netherlands
Contact:

Post by Arno »

zsom wrote:I also decided to check something, and I noticed that a stone, or a diamond, falling through a magic wall is twice as fast as a stone falling in space.
That's true! This also holds for slime instead of magic wall. There are several caves using this effect.

Here's a funny one:
https://www.youtube.com/watch?v=yVVqBM3P19I
And an extreme one:
https://www.youtube.com/watch?v=1-3fA-7k_8w
:D
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Thx for the flowers, zsom! The thread will be continued, promise! :D

In case of slime, this "boulder double speed" is even a kind of cavescanning
order effect! :D Thinking of it, having this effect in the cavescanning order
series would be nice... :D

In case of the magic wall, the double speed effect is rather simple. If a falling
boulder is scanned and "sees" a magic wall below it, it falls through the wall
(and converts, of course). So it was above the magic wall at the start of the
frame and it's below the wall at the end of the frame. So the boulder has
moved by 2 space units in one frame!

In case of slime, this is a little bit more complicated because the rules are
different:
1. If a falling boulder is scanned and "sees" slime below it, it does not
fall through it (even if the slime has maximum liquidity, like in BD2-M). Unlike
a magic wall, slime counts as "stable ground", so the falling boulder will land
on the slime and convert into a non-falling boulder.
2. However, that's not the end of the story for this frame! As the slime is
below the boulder, it is scanned afterwards. Whenever slime is scanned, two
things happen:
I The engine calculates a (pseudo-)random number and then decides whether
the slime is "active" in this frame.
IIa) If the slime isn't active, the slime-scanning is over.
IIb) If the slime is active and sees the non-falling boulder above it (and empty
space below the slime), the slime swallows the boulder and spits out a falling
boulder below the slime.
So at the end of the frame, the same has happened as in case of the magic
wall - the falling boulder has moved by two space units in one frame! :D

Alright, and by explaining this, I also followed your request to write something
about slime! ;D More will come as soon as we analyse some slime caves!
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 23b) - cave 19 analysis plus ten new caves!
https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 19 ("Sunday Driver") starts at 2:42. Here's the map:
Image

What do we see?
Rockford needs one diamond which is free to collect, but (of course) there's a
catch: A bidirectional growing wall chases him wherever he goes, and the
diamond is inside a small "one-way street" where the gwall could easily catch
Rockford. However, Rockford's good old mate Fordrock, the firefly, comes to
help our hero: He passes the gwall so now Fordrock chases Rockford instead,
and as fireflies always make one-frame pauses before making right turns,
Rockford can gain enough advantage to safely collect the diamond and still
get out of the trap! :D

How does it work?
For our topic, the interesting question is how the firefly can get between
Rockford and the Gwall. Let's see:
Frame 0
Image

Frame 6
Image

Um, I just note that when I made the pics, I wanted to make an exercise for
you out of this cave! Also, my original intention was to make one episode out
of this and the previous cave :lol: Well, alright, then this is going to be a
quite short episode, including a little exercise! Improvisation is everything :D

Exercise
Look at the last two pictures. There are six frames between them. If you like,
make a frame-by-frame analysis of these six frames including the movements
of Rockford, the firefly and the Gwall! It's not particularly difficult, and in the
end, we see the firefly having passed the Gwall!
If you have any questions about it, just feel free to ask away! :D

In the next episode, we will see more than one cavescanning-order-trick,
including Rockford snapping a diamond from inside an explosion and a
butterfly trapping an amoeba without exploding! Make sure not to miss that!
:D

EDIT: I almost forgot it - there are ten brand new caves on Arno's channel -
thx again for the upload, Arno!
https://www.youtube.com/watch?v=nvYNjHWnUUo
More open border effects, both scary and helpful fireflies and another blast
through a bidirectional gwall await you there! :D
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 24 - cave 20 analysis

https://www.youtube.com/watch?v=7-3oOxrxLD8
Cave 20 ("Amoeba Arrow") starts at 2:55. Here's the map:
Image
Oops, I just note that the pic is somewhat overwirtten by the "CKit" lettering.
Plug for Krissz's site! :D

What do we see?
The main attraction is an amoeba again. It is trapped together with three flies
inside a big "arrow wall". Rockford blasts a hole into that arrow at a very
certain place, which is quite an effort. One of two diamonds is sacrificed, while
the other seems to get lost in the explosion as well, but actually Rockford
manages to snap it just in time before it gets destroyed! And
afterwards, we see another striking attraction: the butterfly traps the amoeba
without exploding! How is this possible? And why was it necessary to blast the
wall at exactly that spot? Questions over questions, which we will discuss and
answer one by one!

How does it work?
First of all, there are several ways to get 19 diamonds, which is why I
found it funny to add the "19<20" lettering, to remind the player that 19 are
just not enough! :D
So how can we get 20 diamonds? Well, obviously the butterfly should give us
9 diamonds, and there are two basic possibilities to get 11 more:
Possibility A: If we want to collect both visible diamonds, then the
amoeba has to blast the wall from inside. In this case, it would be enough to
get 9 more diamonds from the amoeba.
Possibility B: As A will soon turn out not to work - see below - it's clear
that one of the two diamonds has to be sacrificed to blast the wall from
outside. (Note that the boulder is a heavy one which cannot be pushed!) Now
we need ten diamonds from the amoeba, which means that it must grow at
least to the spot where it would diagonally contact the butterfly and the
bottom firefly.


Question 1: Why doesn't possibility A work?
If Rockford wants to go for this possibility, he must wait until the amoeba
suffocates and explodes into the flies:
Image
Cave scanning order:
1. The butterfly is first and nothing happens.
2. The amoeba is next. Let's assume it grows now.
3. The right firefly is next, sees the amoeba and explodes. This means that
the butterfly will get lost in the explosion - a clear fail which already
rules out this possibility!
So Rockford's main plan is clear: 9 diamonds from the butterfly, collect one of
the two visible diamonds while sacrificing the other, and 10 diamonds must come from the amoeba!

Question 2: Why not just blast away the rightmost piece of wall, releasing
only the right firefly inside the wall?

Let's see what would happen if the right firefly wasn't there:
Image
Cavescanning order:
1. The butterfly - nothing happens.
2. The amoeba grows.
3. The bottom firefly explodes because of the amoeba that has just grown.
So this time the butterfly survives and the amoeba is trapped by the explosion
smoke, immediately turning into diamonds. Looks way better than before,
doesn't it? But there's a catch: The explosion also destroys one piece of
amoeba which we needed
So the amoeba would give us only 9 diamonds,
which leads to 19 in total - not enough!
So we have another clear conclusion: the amoeba must convert without
exploding any flies!

At first sight, we have reached a dead end. It's impossible to blast the
butterfly free from outside, and if we blast one or both fireflies free and then
snap the dirt below the butterfly, it will inevitably run directly into the amoeba.
However, the video shows the solution, which involves two more cavescanning
order tricks! First, Rockford blasts the wall in a way that both fireflies are
freed, and then the butterfly traps the amoeba without exploding!

Question 3: How can Rockford snap the diamond that was about to get lost
in an explosion?

Frame 0
Image
Let's analyse from here, two frames before the explosion happens.
Cavescanning order:
1. The top diamond is first and falls sideways from the bottom diamond.
2. The bottom diamond itself is next but doesn't do anything.
3. Rockford is next and snaps the bottom diamond..
4. Finally, the firefly moves.
Frame 1:
Image
We see that Rockford managed to snap the diamond just one frame before the
explosion!

Next, let's get to the heart of the cave! (Actually, what follows wasn't even
part of the original cave, but a player - I think it was Arno or Nesdori -
discovered the trick, which highly inspired me to make a second version
where this trick is necessary to solve the cave!)
Question 4: How can the butterfly trap the amoeba without exploding?
Frame 0
Image
Rockford has just freed the butterly and moved away. Cavescanning order:
1. The butterfly is first. First, it checks whether it should explode,
which is not the case. Only then, it moves down. (Now it
touches the amoeba, but after moving, it does not make an explosion-check
again, so it's safe for now!)
2. The amoeba is scanned and sees the butterfly blocking its way! However,
as we've already seen in a previous episode, an amoeba does never
actively kill a fly. If an amoeba is scanned and sees a fly touching it, it
simply regards the fly as an obstacle, preventing it from growing. So what
happens in this case? Yes! Instead of harming the butterfly, the amoeba
regards it as an obstacle!
So the engine notes that the ameba had no
possibility to grow in this frame, thus the engine changes the amoeba state
from "alive" into "trapped" and next frame, every piece of amoeba will be
changed into diamonds. However, that's not the end of the story - the amoeba
is still there for one frame and the fly could still explode! So let's analyse
further:
Frame 1
Image
1. Now, the amoeba is scanned first and, one by one, changes into diamonds.
2. Next, it's the butterfly's turn. Does it explode? No! The deadly amoeba
has just changed into harmless diamonds!
So, instead of exploding, the
butterfly chills and moves on!
Image

Note that this fly-traps-amoeba-without-exploding-trick only works if the fly
approaches the amoeba from the top-right side! That's because...
1. ...in frame 0, it was important that the butterfly was scanned before
the amoeba, so the butterfly moved down and blocked the amoeba. If the amoeba had been scanned first, it would still have a
possibility to grow, so there would be no reason to change the amoeba's state
into "trapped"!
2. In frame 1, the butterfly had to be scanned afterthe amoeba.
Otherwise, the butterfly would have been scanned when the amoeba was still
an amoeba, and exploded!

This can also be generalized because several cavescanning order tricks work
similar: We have two BD elements A and B close to each other. In one frame,
we want element A to be scanned before B, but in the next frame, after A
or B has moved/fallen/grown, B shall be scanned before A.
It turns out that the only way this can work with the engine's cavescanning order is as follows:
Frame 0:
XA
BX
Frame 1:
BA
XX
(if B moves up) or
XX
BA
(if A moves down).

The most famous example of this is one that we've discussed already at the
very beginning of this thread, where A=firefly and B=Rockford, when B moves
up. This way, Rockford is able to pass and release a stationary firefly and
survive to tell the story! (BTW, who does Rockford tell stories? Well, according
to one of No1's games, Rockford has a son, so treasure-diving can not be
everything he did in the last 36 years...!!! :D )
In our actual cave, we have A=Amoeba and B=Butterfly (funnily, the letters A and B fit perfectly here!), when B moves down.

This episode ends the second video! Before checking the third one, the next
episode will be a special one. Be surprised! :D
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
zsom
Member
Posts: 84
Joined: Sat Apr 10, 2010 5:46 am

Post by zsom »

Hello
question to everyone.
can Amoeba be made to expand one square per game frame?
For example, its speed would be the same as a moving Rockford.
I guess I saw it somewhere, but I don't remember which BD clone.

Please reply.
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

@zsom GDash is the clone I know best by far, and there it's not possible as far as I know. You can set the amoeba growing probability to 100%, so every piece of amoeba (tries to) grow every frame, but then still the direction in which it (tries to) grow is random. So if you build an amoeba tunnel
WWWWWWWWW...
WA
WWWWWWWWW...
(A=Amoeba, W=Wall), the amoeba will grow only every fourth frame on average, so Rockford will be far quicker!
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
User avatar
Dustin
Member
Posts: 589
Joined: Sun Sep 23, 2007 1:15 am
Location: Erlangen, Germany

Post by Dustin »

Episode 25: Cavescanning order in Boulder Dash 1!

This is an episode I'm especially happy to write! So far, one might think that
almost all cavescanning order tricks only work in caves that were especially
created for those tricks. But in this episode, I'll try to prove the opposite:
most likely you used some effects already more than 30 years ago without
even knowing it! :D

Which boulder falls first? (Cave C/5, L/5)
In cave C, level 5, there's a slightly tricky spot around the exit:
Image
The boulder to Rockford's right side blocks the exit off, so it's necessary to get
it away from there to solve the cave. Of course we know that if Rockford
moves left now, the right boulder will fall first and free the exit. But why?
Let's check the cavescanning order in this frame:
1. The boulder on top of Rockford is scanned before our hero, so
Rockford is still in the way.
2. When Rockford himself is scanned, he moves left.
3. The right boulder is scanned directly after Rockford moved out of the
way, so it can fall sideways from the wall!

A similar situation occurs at the end of cave L, also on level 5:
Image
Here, however, using the trick is not as essential as previously, as Rockford
could theoretically also push away the top two boulders, or even use a firefly
to blast the boulders away (if he managed to get all diamonds using only two
fireflies).

The cavescanning-order-speedrun (cave F)
Of course, freeing the fireflies out of their dens and then collecting the
unguarded diamonds is quite simple. But it's soooooo slow! :D
What if Rockford just runs into the dens without caring about the "hosts" at
all? Well, if he does so without thinking, there's a 50/50 chance to survive
every time he passes a firefly in its den. Doing it 8 times in a complete run
would give a chance of success of 0.4%. But of course, our speedrun isn't
based on insane luck!
Let's check the four left dens first. Rockford enters them at the bottom, while
the firefly wants to leave the den from the top. How can they pass each other
without a "double knockout"?
Image
If Rockford moves left here, he can safely pass the firefly. How is that?
1. The firefly is scanned before Rockford. First it checks whether it should
explode - no, Rockford is still far enough. Now it moves right. Now it touches
Rockford but after moving, it does not make an explosion check again!
2. Now it's Rockford's turn. As we know from the very first episodes, Rockford
himself never makes explosion checks, so he can safely move left, passing the
firefly.
However, we should not move in this situation:
Image
If Rockford starts moving here, then one frame later, the firefly will touch him
from above, which, as we know, is always deadly. (The fly is scanned first and
explodes immediately.) So here, Rockford should wait for one frame and only
then move on!

How about the four right dens? This time, Rockford is above the firefly, so the
cavescanning order changes and so does the right strategy:
Image
This time, it' fine to move if Rockford is 2-1 steps away from the firefly. Next
frame, the firefly will touch Rockford from below, but that's ok because
Rockford is scanned first and escapes!
However, we should not move if our distance is 1-1:
Image
If Rockford moved here, the firefly would be scanned afterwards and make a
positive explosion check. So in this case, Rockford should again wait for one
frame before moving on!

Through the rain (cave I)
After opening the drains, it makes sense to try and grab as many diamonds as
possible before some of them would get entombed by boulders! Have you
ever tried to switch sides while the boulders and diamonds are still falling, so
you can collect diamonds on both sides?
Image[/b]
If Rockford presses left here, he can immediately move because the boulder is
scanned before him and falls out of the way. The next frame will look as
follosw:
Image
If Rockford quickly moves on now, he can safely get to the left side! However,
the same trick is not possible vice versa - can you see why?


Fire-/Butterfly chains (cave J and M)
To me, it was a striking effect as a child that the firefly stack at the left could
move up a lot quicker than down! (I needed months and my mother's help to
finally beat the cave - and be confronted with another "unsolvable" cave K -
but this firefly effect was funny!! :D ) This is another effect due to the
cavescanning order! Let's check the next picture to see why:
Image
According to the basic cavescanning order rule, the fireflies are scanned from
top to bottom. This means that after the topmost firefly moved up, the second
one can immediately fill the gap, and so on. Consequently, all fireflies can
move one step up in just one frame and it looks as though the piece of empty
space has "warped" from the very top to the very bottom!
Image
Note, however, that this effect can only be seen so clearly if all fireflies in the
second-last picture face either right or up, which is only very rarely the case.
How about moving down again? Let's see:
Image
This time, the cavescanning order slows down the fireflies! The only movable
firefly is the bottom one, but all the other fireflies are scanned before, so
they're all blocked and cannot move in this frame. This means that on their
way downwards, the fireflies can only move one by one!

Even more striking is how the butterflies come out in cave M - if Rockford
releases them via the left side! Also here, the cavescanning order - from left
to right - works in a way that all butterflies can move in the same frame and
stay together until they leave their "home"! The next pictures show three
consecutive frames to illustrate this:
1
Image
2
Image
3
Image
Note that here, unlike in cave J, the butterflies always stay together
when coming out because, unlike the fireflies in cave J, they were
completely trapped so they always have the same facing direction
relative to each other!


That's it for this special episode! In the next episodes, we will... hm, actually
I'm not quite sure what to do next. We could of course continue analyzing the
mini caves, but on the other hand, I think it could also be time to make some
general episodes about how exactly the BD engine works (as far as I
understand it after all my experiments - hopefully the programmers won't cut
these episodes into pieces! :D ) and see how the exact engine rules can be
used to create and do cavescanning order tricks in general!
Boulder Dash X Rock, Paper, Scissors:
ROCKFORD collects DIAMOND, digs DIRT
DIAMOND outvalues DIRT & BOULDER
DIRT carries BOULDER, blocks FIREFLY
BOULDER kills FIREFLY & ROCKFORD
FIREFLY kills ROCKFORD, guards DIAMOND
Post Reply