Notes:Bubble Symphony (Arcade)
This page contains notes for the game Bubble Symphony (Arcade).
Contents
Difficulty
Difficulty is based on three variables.
- Rank (40ED3C) is the master variable of the dynamic difficulty system. Ranges from 0 to 30.
- CooldownVar (40ED3E) will either add to or subtract from Rank depending on how long it's been since a new game was started. Ranges from 0 to 31.
- RankFloor (40ED40) is the lowest possible value that Rank can be set to. Note that this is only checked when subtracting from Rank; the game can add to Rank and still have it be under this value. Ranges from 0 to 30.
What Affects Difficulty
When the machine boots...
- CooldownVar is set to 10.
In attract mode...
- The game adds 1 to CooldownVar every time the high score screen is viewed.
- For game demos, Rank is set to 7, RankFloor is set to 0, and all of the adjustments listed below are skipped.
At the start of the game...
- Rank is set to one of four values based on the game's difficulty setting: Easy is 4, Normal is 7, Hard is 10, and Very Hard is 13.
- RankFloor is also set according to difficulty: Easy is 0, Normal is 2, Hard is 4, and Very Hard is 6.
- A value based on CooldownVar is either added to or subtracted from Rank:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+4 | +3 | +2 | +1 | 0 | |||||||||||
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
0 | -1 | -2 | -3 | +3 | -4 |
At the start of each stage, if Rank is 15 or less:
- The game checks the number of rounds that the player has completed without dying. If the value is even, the game adds 1 to Rank.
- In a two-player game, the game does this check for both players.
- The game then compares this deathless round variable with a value in the first column of the table below. If it's equal to or greater than that value, the following occurs:
- If RankFloor is less than the value in the second column, RankFloor will be set to that value.
- If Rank is less than the value in the third column, RankFloor will be set to that value.
Deathless Rounds |
RankFloor Value |
Rank Value |
---|---|---|
5 | 8 | 8 |
10 | 15 | 7 |
15 | 20 | 7 |
20 | 25 | 7 |
30 | 30 | 7 |
- In the case of a two-player game, the game will use the lower of both players' deathless round values for this check.
At the start of each stage, if Rank is 16 or higher:
- The game checks how long the player has been playing on their current credit. If the value exceeds the value in the first column, then RankFloor will be set to the value in the second column unless it's already greater than or equal to that value:
Game Time | RankFloor Value |
---|---|
600 Seconds | 15 |
1200 Seconds | 20 |
1800 Seconds | 25 |
2400 Seconds | 30 |
- In the case of a two-player game, the game will use the longer of both players' timers for this check.
After getting a Game Over and reaching the high score screen...
- CooldownVar is set to either 0 if a player got a high score or 1 if they didn't.
The following events immediately affect Rank:
- Starting a two-player game adds 3.
- A second player joining a one-player game adds 3.
- Losing a life subtracts 1.
- Either player continuing from a game over in a two-player game adds 3.
- Spelling out "EXTEND" adds 1.
- Collecting any key adds 1.
- Entering any secret room adds 3.
What Difficulty Affects
- Special Item Requirements: See next section.
- "Hurry Up!" Timer Adjustment: If the value of Rank is 16 or higher, the amount of time that the player has before the "Hurry Up!" sequence starts is shortened by up to 7 seconds:
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-3 Sec | -4 Sec | -5 Sec | -6 Sec | -7 Sec |
- Skel-Monsta Timer Adjustment : If the value of Rank is 16 or higher, the amount of time that the player has before Skel-Monsta appears is shortened by up to 7 seconds:
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-2 Sec | -3 Sec | -4 Sec | -5 Sec | -6 Sec | -7 Sec |
- Monster Speed Adjustment: If the value of Rank is 16 or higher, the speed of Monsters is increased.
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+1 | +2 | +3 | +4 | +5 |
- (The meaning of this value depends on each monster's movement code.)
Special Item Conditions
Each special item has four different thresholds that the game checks to determine whether or not it should spawn. For example, for a Cross of Thunder to appear, the player has to collect either 10 (D1), 12 (D2), 14 (D3), or 16 (D4) point items. The threshold that the game checks depends on the value of Rank at the start of the stage:
- D1: 0 to 3.
- D2: 4 to 7.
- D3: 8 to 11
- D4: 12 to 30.
The table below is checked from top to bottom, and the game will select the first item it finds that has its requirements met. When an item is selected to spawn, its counter is cleared. Counters otherwise keep their values from game-to-game and are only reset when the cabinet is reset.
Glossary
- Point items: These items spawn in a stage's point item slot two seconds after the stage starts.
- Special items: These items spawn in a stage's special item slot seven seconds after the stage starts.
- Big point items: Includes the items that drop down at the end of a stage after collecting a Top Hat, Treasure Chest, or Magic Cane, and the Big Diamonds that appear after collecting three Notes when the player already has a key of the same color.
The Big Diamonds that pop out of treasure chests do not count as big point items. - Monster drops: Any item that spawns from the body of a defeated monster. The lone exceptions to this are the Gold Crowns created by the Holy Grail item, which are counted as point items.
- Treasure items: Includes all items that pop out of treasure chests and the Diamonds that appear in secret rooms.
Counter Anomalies
- Items that share the same conditions share the same counter, except for the Taito Coin and the Magic Necklace. Both check the number of stages started, but they use different counters: The Magic Necklace counter is at 40EA6A in RAM, and the Taito Coin counter is at 40EA6C.
- The requirements for item 0CE make it nigh-impossible to get without credit feeding. For reference, 24,576 frames is equal to about 6 minutes and 50 seconds of walking. They'd also have to avoid having the Shoes spawn, which would reset the counter.
- The counter for the Cross of Fire is bugged. Instead of increasing by 1 every time an enemy is defeated by a Water Bubble, it instead increases by 1 every frame a burst Water Bubble comes into contact with a bubbled enemy.
- Hippopo's water bombs count as Water Bubbles for the purposes of the Cross of Fire and Pink Heart / Scroll counters.
- The Big Candy item adds 1 to each candy collection counter.
- The game keeps track of how many keys have been collected at 40EA8A in RAM, but no special item uses this as a spawn condition.
Miscellaneous
When the game is generating ceiling / pit bubbles, there's a small chance that a Special Bubble will spawn. The Special Bubble gives sixteen uses of fire breath for five stages. In Bubble Symphony, the chance of one spawning is even rarer than in the original Bubble Bobble: 1 in 16,384. The code for this starts at 0x44B02 in the main CPU.