- Scoring mechanics in Dodonpachi are relatively simple if one compares them to more recent games. The points given by the chain, the maximum bonus, the no-miss bonus, the boss hit, the stars can be calculated precisely.
- However, one scoring aspect remains widely not understood : the points given by bullet cancelling; and particularly in stages 1-3 and 2-3.
We are now going to explain in detail this mechanics; giving a focus on stage 1-3. It's not difficult to conjecture that stage 2-3 works similarly; although it would be good to check it to avoid any doubts.
First, how did I figure out the bullet cancelling scoring ? I used a TAS emulator, namely FBA-rr, which allowed me to play frame-by-frame. With such a tool, I can simply count the number of bullets on the screen before the cancel and count -- frame after frame -- how many points I get from it.
The theoretical results I got are not very complicated and could be summarized in one sentence: unlike what people used to think; the number of points obtained by cancelling does NOT grow exponentially with the number of cancelled bullets.
In both stage 1-3 and 2-3; bullet cancelling is triggered by destroying the center of some big flying ships. At this time, you usually have some enemies which fire some 'spiky bullets' (see: picture http://imgur.com/a/QbaiT). In addition; many turrets on the big flying ship can fire 'normal bullets' (see, picture http://imgur.com/a/1LXS1) . When the big flying ship is destroyed; ALL the bullets on the screen are cancelled and give a number of points. The bullets that are no longer on the screen when the cancel is triggered do NOT give points.
As you may have noted while playing DDP, when a cancel is triggered, the score progressively increases during a few time and the bullets fired by the enemies immediately after the cancel are still getting cancelled. This is already a known fact : the cancel 'lasts a few time'.
The exact time is 69 frames (which is 1.15 second); meaning that -- during 69 frames -- all the additional bullets that are fired by the enemies will be immediately cancelled, and will give points.
In fact; the cancel can be divided into two phases which work differently. The first phase lasts 12 frames and the second phase 57 frames. We're now explaining in detail how these two phases work.
- The first phase begins when the cancel is triggered.
At this time, the number of points obtained is n*500 where n is the total number of bullets on the screen. It doesn't matter whether the bullets are spiky bullets or round bullets. All of them are worth 500 points. During 12 frames, there is an accumulation phase, meaning that, at every frame, the score increases by (n+p)*500 where n is still the number of bullets cancelled initially and p is the number of additional bullets fired after the cancel.
For example, if you cancel n = 100 bullets; at frame 0 and if an enemy fires two bullets at frame 5 and two more bullets at frame 9, then then the 12 frames will give you, in total, 500*( (n+0) + (n+0) + (n+0) + (n+0) + (n+2) + (n+2) + (n+2) + (n+2) + (n+4) + (n+4) + (n+4) + (n+4) ) points. As you can see; when you cancel, you have a 'guaranteed' minimal score bump of 500*n*12 = 6000*n. In order to score more than 6000*n during this 12 frames first phase, you need to keep the enemies on screen alive so that they can fire additional bullets. Notice that, during this first 12 frame phase, the value of p can only grow : p is the total number of bullets fired between the cancel (frame 0) and 'now' (a latter frame).
- When the first phase of 12 frames is over; the bullets are still going to get cancelled during an additional 57 frames. However, during this second phase, the calculation of the score is no longer the same.
First, the number n of bullets that you cancelled initially does no longer matter. It will no longer come into play to calculate the score. During the second phase, you get -- at each frame -- 500 points per bullet fired by the enemies (which are immediately cancelled). It seems that, during this phase, the bullets that are fired by the enemies and cancelled give points every frame, during 4 or 5 frames. For example, if an enemy fires one bullet at frame 20, then one more bullet at frame 30, your score will increase by 500*1*4 + 500*1*4; where the '4' could possibly be a '5'. There is no stacking effect here : we only count, at every frame, how many bullets are on the screen; and you get 500 times this number at every frame. To maximize your score during the second phase, you then need to keep as many enemies alive as possible and keep these enemies on the screen (I recall that only the bullets on the screen give points).
So how many points does this phase roughly give overall ? The enemies which fire spiky bullets will give roughly 100,000 points in total (during the 57 frames) if they are kept alive and on the screen. This corresponds to a bit let than 4 bullets (2000 points) per frame.
In addition, the big flying ships that trigger the cancel have turrets which can fire a large number of bullets (see: the detailed explanation of SOF-WTN's strategy).
A few examples of cancelling, with the first big flying ship
Here are the scores I get when triggering a cancel with the first big flying ship in 1-3.
- example 1 : very very bad cancel.
In this example, I destroy the ship very early. There are only 8 bullets on the screen when the cancel is triggered and there is one additional enemy firing spiky bullets. I let this enemy live and give points all the way. No further enemy appear during phase 2. Here is the score bump I get frame by frame, expressed in thousands. Phase 1 (12 frames): (4,4,4,5,5,5,5,5,5,5,6,6). Phase 2 (57 frames):(2,2,2,2,1,2,2,2,2,2,1,1,2,2,2,2,2,2,1,2,2,2,2,2,1,1,2,2,2,2,2,2,1,2,2,2,2,2,1,1,2,2,2). Total for phase 1: 59k. Total for phase 2: 102k. Grand total: 161k.
- example 2: bad cancel but good phase 2.
In this example; the cancel is triggered later. There are 40 bullets on the screen when the cancel is triggered and there are 4 additional enemy firing spiky bullets. All are kept alive. In addition, many new enemy come during phase 2 and fire bullets that give points. Phase 1 (12 frames): (20,20,20,21,23,23,24,24,24,24,25,27). Phase 2 (57 frames): (7,8,9,8,5,6,6,6,7,7,5,5,5,6,5,6,6,6,4,5,5,5,7,7,9,9,10,11,10,11,12,15,13,14,14,14,12,12,14,14,14,15,11,12,12,15,13,14,14,14,12,12,14,14,13,14,11). Total for phase 1: 275k. Total for phase 2: 564k. Grand total: 839k.
- example 3: good cancel and good phase 2.
Here I reproduced something which is closer to what WTN does. About 161 bullets are cancelled. Six enemies are on the screen when the cancel is triggered; and many more appear after and give points during phase 2. Also, the next big flying ship gives a noticeable quantity of points during the 30-35 last frames of phase 2. Phase 1 (12 frames): (80.5,83.5,83.5,84.5,85.5,86.5,87.5,87.5,90.5,90.5,91.5,91.5). Phase 2 (57 frames): (9,10.5,10.5,13.5,10.5,11.5,10.5,11.5,9.5,9.5,11.5,11.5,12,12,9,10,10,13,12,14,13,14,13,13,14,14,16,16,13,14,13,16,14.5,17,16,17,15,15,17,16,17,17,16,17,16,19,19,21,20,21,20,21,22,22,22,22,18). Total for phase 1: 1'043k. Total for phase 2: 848k. Grand total: 1.891 million.
- Remark: when comparing examples 2 and 3, you see that example 3 cancels 4 times as much bullets compared to example 2 and gets --roughly -- 4 times as much points in phase 1. Phase 1 scoring is essentially linear. Phase 2 scoring is completely different and does not depend on how much bullets you cancelled initially. In example 3, phase 2 is slightly better than in example 2 because the cancel is triggered later; which allows the next big flying ship to fire bullets and give more points.
In both stage 1-3 and 2-3, there are a total of 4 big flying ships to destroy; i.e. 4 cancels to optimize.
- First cancel. The first cancel can be seen on the picture http://imgur.com/a/ERCLA
Notice that the next flying ship has already fired 16 bullets (circled on the picture). Besides, the 3 circled turrets on the picture are going to fire bullets after the cancel (see: http://imgur.com/a/93t4o), which give an important number of points in phase 2 and maybe also in phase 1. Notice also, that WTN spares the two enemies immediately on top of him after the cancel in order to let them fire bullets.
- Second cancel. The timing of the cancel can be seen on http://imgur.com/a/gNhOz
Notice that the next flying ship has already fired a batch of 16 bullets (circled) and is about to give another 16. Those 32 extra bullets, alone, are worth 16k points per frame during 12 frames (phase 1), i.e. 192k points in total. After the cancel, WTN goes left while trying to spare as many enemies as possible.
- Third cancel. See the picture http://imgur.com/a/yH7Mz
Again, the bullets fired by the next flying ship are crucial. The bottom turret can fire bullets which will go left if you are well placed. Then, you can have the left turret firing 2 batches of 16 bullets. That is 48 extra bullets in total before the cancel, i.e. 48*500*12 = 288k points only from these extra bullets. Besides, phase 2 can be optimized by going slightly on the right to have the points from the right turret of the next flying ship. See: http://imgur.com/a/vp6vw
When the cancel is over, the turrets and enemies need to be destroyed quickly without triggering the next cancel in order to survive : http://imgur.com/a/TJR6r .
- Fourth and last cancel. The last cancel seems to be triggered as late as possible (see: http://imgur.com/a/3NbqZ and http://imgur.com/a/ARTk2 ) in order to have points in phase 1 and 2 from the extra enemies which appear and fire after the cancel.
In particular, notice the 2 enemies at the top-right of the screen. The phase 2 is somewhat tricky to optimize. It would be tempting to quickly make a small corridor on the right of screen to get through. Instead, WTN goes slightly on the left to maximize the number of visible enemies on screen and to manipulate the direction of the bullets when the cancel will be over.
See: http://imgur.com/a/pHxVP and http://imgur.com/a/JD45W
The small corridor on the right is created only after the cancel; see: http://imgur.com/a/yssvm . If phase 2 is handled correctly, there is no need for crazy dodging to get through this small corridor in the end.
In the end it's not a big surprise to see that WTN manages to optimize perfectly both phase 1 and phase 2 of each of the four cancels; while remaining relatively safe. GG sir !
Even if stages 1-3 and 2-3 are by far the most important when bullet cancelling comes into play; there exist other small cancels in other stages. I shortly investigated the cancel of the 1-1 boss which is triggered when you attack (for quite a long time) its side turrets. I will not give detailed results; but in short; the number of points is proportional to the number of bullets that are cancelled. The only trick compared to stage 1-3 and 2-3 is that
- You get all the points in one frame, and not progressively, frame by frame)
- Some bullets are worth 500 points (the big round bullets) and some bullets are worth 1000 points (the small round bullets and the small 'dash' bullets).
There exist another bullet cancel in stage 2, and one more in stage 6. I did not study them yet; but the mechanic is probably similar to the one of the 1-1 boss.