This is a second version of my Bombliss Contest Mode TAS. It saves 1797 frames over version 1 (
https://tasvideos.org/9176S ), which I'm withdrawing in favor of this one.
Bombliss, also known as Tetris Blast in the US, is a Tetris variant where some blocks have bombs in them, and clearing a row containing a bomb causes it to explode, erasing blocks in the explosion and causing any connected components in midair to cascade down, potentially creating a chain reaction. The objective is to clear all the blocks on the screen.
Contest Mode consists of 30 levels, each of which starts with a preset board. The objective is to clear all the blocks on the board.
Note that there is already a published movie for the sequel, but it has completely different levels, so I believe this is worthy of a separate movie.
Tetris Mechanics
DAS is 1G, but DAS charge resets on rotation, making it a couple frames slower to move a piece after rotating it. For pieces I place against the wall, I try to manipulate pieces I don't have to rotate.
If left or right is held on the frame a piece spawns, DAS charges instantly.
Soft drop appears to be about 9/8ths rows per frame and causes instant locking upon landing. Note that the piece is still highlighted for a couple frames after locking. There is no hard drop.
Explosion Mechanics
The power of the explosion is (number of lines formed simultaneously) + (number of previous hits in the chain reaction). The higher the power, the bigger the explosion, with high powers giving a score bonus:
Power | Rows | Columns | Score |
---|
1 | 1 | 7 | 0 |
2 | 3 | 7 | 0 |
3 | 5 | 7 | 0 |
4 | 7 | 7 | +2 |
5 | 9 | 9 | +4 |
6 | 9 | 9 | +10 |
7 | 11 | 11 | +20 |
8 | 11 | 11 | +30 |
9 | 13 | 13 | +50 |
10 | 13 | 13 | +100 |
Explosions are always centered at the bomb.
Putting 4 bombs in a 2x2 square causes them to fuse together into a big bomb, which always explodes in a 10x10 square. However, the game checks for fusions after checking for detonation, so creating a 2x2 square while simultaneously completing either of the lines it occupies won't get you a big bomb before it blows up. If there are multiple possibilities for a 2x2 big bomb (e.g. a 3x2 rectangle of small bombs) then the game fuses the highest 2x2 possible, with ties within the same rows broken in favor of the leftmost square. Creating a big bomb also adds 1 point to your score for the level.
Other Mechanics
The results screen at the end of each level takes 2 frame per point -- 1 frame per point to tally up your score for the level, then another 1 frame per point to add it to your total score. This is the source of several speed/entertainment tradeoffs throughout the run, where I use a more impressive-looking strat that scores higher due to the score bonus for high-power explosions, losing time at the results screen.
Note that beating the game unlocks a new set of levels, numbered 31-60, but these are identical to 1-30 except all bombs on the intial boards are replaced with regular blocks, the blocks seem to fall faster, and the RNG appears to be more biased towards pentominoes. Since the strats to clear these boards would be mostly identical to 1-30, and the ending appears to be identical, there is probably not much entertainment value in TASing the second set of levels.
Luck Manipulation
The RNG appears to pick up entropy through controller input on every non-lag frame, so extraneous button pushes that do nothing or cause a failed rotation are used to manipulate luck, as well as holding buttons longer than necessary.
Comparison with V1
Splits are frame numbers, timed at the frame where I press A to trigger the fadeout.
Level | V1 | V2 | Frames Saved (Segment) | Frames Saved (Running Total) |
---|
Title | 746 | 72 | 674 | 674 |
Menu | 1131 | 455 | 2 | 676 |
1 | 1901 | 1121 | 104 | 780 |
2 | 2667 | 1882 | 5 | 785 |
3 | 3427 | 2641 | 1 | 786 |
4 | 4167 | 3382 | -1 | 785 |
5 | 4903 | 4118 | 0 | 785 |
6 | 5654 | 4868 | 1 | 786 |
7 | 6439 | 5578 | 75 | 861 |
8 | 7255 | 6392 | 2 | 863 |
9 | 8115 | 7214 | 38 | 901 |
10 | 9123 | 8205 | 17 | 918 |
11 | 9885 | 8949 | 18 | 936 |
12 | 10738 | 9796 | 6 | 942 |
13 | 11636 | 10688 | 6 | 948 |
14 | 12740 | 11776 | 16 | 964 |
15 | 13948 | 12969 | 15 | 979 |
16 | 14790 | 13812 | -1 | 978 |
17 | 15716 | 14738 | 0 | 978 |
18 | 16597 | 15618 | 1 | 979 |
19 | 17417 | 16421 | 17 | 996 |
20 | 18548 | 17484 | 68 | 1064 |
21 | 19643 | 18571 | 8 | 1072 |
22 | 20747 | 19673 | 2 | 1074 |
23 | 22159 | 21063 | 22 | 1096 |
24 | 23612 | 22263 | 253 | 1349 |
25 | 25046 | 23658 | 39 | 1388 |
26 | 26126 | 24732 | 6 | 1394 |
27 | 27353 | 25621 | 338 | 1732 |
28 | 28414 | 26680 | 2 | 1734 |
29 | 29828 | 28073 | 21 | 1755 |
30 | 31460 | 29663 | 42 | 1797 |
The 1 frame lost on level 4 is due to an added lag frame fading out from level 3, and the 1 frame lost on level 16 is due to not being able to luck-manipulate the same pieces as before.
I'll skip writing comments with no time differences from V1 and don't have anything particularly cool, fun, non-obvious, or frustrating to optimize behind the scenes.
I input A + B + Select + Start on the first frame possible to skip straight to the title screen, saving 674 frames compared to V1.
The first speed/entertainment trade-off here is inputting "TAS" as the initials instead of "A" or "AAA". The menu has an 11-frame cooldown after each processed input before it'll accept another input, so this loses about 2 seconds.
Level 1
Came up with a faster solve than V1, which completes the level 106 frames faster, but loses 2 frames at the results screen due to scoring 1 point higher, for a net gain of 104.
Level 2
It's possible to clear this level in 3 pieces with a score of 97 by putting an O in the center with the bomb on the bottom, and an L or J on each side to clear row 4, causing the O to cascade down and make a power 2 explosion that hits the big bomb. But the cascade animation is slower than the bomb fusion animation, so I went with the faster strat.
I also save 5 frames over V1 by manipulating a third piece that doesn't require rotation.
Level 3
I save 1 frame over V1 by adjusting the setup slightly to allow a T for the final piece, which requires 1 frame less movement. But somehow I get 1 added lag frame during the fadeout, which cancels it out.
Level 6
I again save 1 frame over V1 by using a J for the 3rd piece, which only needs to be moved left 1 block instead of 2.
Level 7
The probably dev-intended strat is to complete the big bomb, then put a bomb in row 5 column 5, detonate it, and let the 3 blocks on the left cascade down to detonate the big bomb. But the cascade animation is slower than just creating our own big bomb above it.
I save 5 frames by using pieces that can be put in place a tiny bit faster, and another 70 frames by fixing the input error at the results screen.
Level 8
Another 2 frames saved by using pieces that can be placed faster.
Level 9
Saved 38 frames by using pieces that don't have to be rotated, especially since having to move after rotation loses several frames.
Level 10
This is the first speed/entertainment trade-off in the actual gameplay itself, menus notwithstanding. It's possible to do this level a couple seconds faster by leaving holes in the rectangle I build in the top center, but this strat is much more impressive, despite losing a couple seconds.
I also save 17 frames over V1, again by using pieces that don't have to be moved after rotation.
Level 11
This was a royal pain to luck-manipulate, since there are exactly 2 pieces that allow this 2-drop strat, and they both need a pentomino with the bomb in a specific spot.
Saved 18 frames over V1 by putting the bomb in row 4 on the 2nd piece, thereby detonating it immediately.
Level 12
Saved 6 frames over V1, again by using pieces that don't have to be moved after rotation.
Level 13
Another 6 frames saved over V1 via pieces that are faster to dropped into place.
Level 14
Saved 16 frames by using a solution that takes 1 less piece.
Level 15
Speed/entertainment trade-off #2: This level also has some leeway for holes, but the perfect 9-by-10 rectangle looks so much cooler.
Saved 15 frames over V1 by reducing rotations.
Level 16
I actually lose 1 frame over V1 since I couldn't manage to luck-manipulate the same last 2 pieces, so I went with another 2 pieces that still work but take 1 extra frame to get there.
Level 18
Speed/entertainment trade-off #3: Filling in row 8 is slower by about a second but looks more impressive.
Saved 1 frame over V1 by using a P pentomino instead of a trimino on the top left, which is 1 frame quicker to move over there.
Level 19
Saved 17 frames by using a different 2nd piece that's easier and quicker to move into place.
Level 20
Saved 74 frames via more efficient building during the level itself, while scoring 3 points higher which loses 6 frames at the results screen, for a net improvement of 68 frames.
Level 21
Saved 8 frames by doing a single line instead of a double to detonate the big bomb, which saves time on the animation to count up the lines.
Level 22
Saved 2 frames with a slightly faster setup to clear out the middle section.
Level 23
22 frames saved due to a slightly faster setup including saving 1 rotation when building the big bomb, then also immediately detonating the bomb in the piece used to detonate the big bomb instead of letting the big bomb's explosion detonate it in a chain reaction.
Level 24
A completely new strat saves 287 frames on this level, scoring 17 ponits higher and losing 34 frames on the results screen for a net improvement of 253 frames.
Level 25
Speed/entertainment trade-off #4: Pre-building the second explosion isn't necessary, but looks cooler. It finishes the level only a couple frames slower, but it scores 50 points higher and thus loses 100 frames at the results screen.
I save 39 frames over V1, primarily by detonating the top left bomb simultaneously with the first explosion.
Level 26
6 frames saved by using pieces that are a tiny bit faster to move into place.
Level 27
Saved 338 frames (342 frames minus 4 frames lost at results screen) using a completely different strat.
Level 28
Another 2 frames saved by using pieces that are faster to move into place.
Level 29
Saved 21 frames, primarily by putting the 2 small bombs at the end in the completed row so they detonate immediately.
Level 30
78 frames saved, again mainly through simultaneous detonations.
nymx: Claiming for judging.
nymx: Changing the ROM being used to match what the TAS was made against.
nymx: This run totally destroys the WR run by more than half the time! It is definitely a rock solid run. There is one thing that bothers me about this run...it doesn't do all 60 screens. Just note Just note, any future submissions that include all 60...will obsolete this TAS. It is weird though, how this game provides a credit screen after 30 rounds.
Anyway, good job on this and congratulations!
Accepting as a new branch for "Contest Mode".