- Learn
- Build a Game
- Sky Ace
- Appendices
- B Message Map
Appendix B — Message Map
Sky Ace is built on messages (Custom Events): one piece of the game announces something, and the pieces that care listen. This map shows every message in the game: who sends it, who it goes to, and who hears it. A message must be spelled exactly the same where it is sent and where it is heard; this is the place to check.
Two ways to send. Trigger Custom Event goes to everyone who listens (a broadcast). Trigger Custom Event on Object goes to one Object only; in this game almost always the sender’s own Object, so that one Logic can tell the next Logic on the same Object that its part is done.
B.1 Chains to Follow
Read each line left to right: a message, the Logic (in bold) that hears it and sends the next message, and at the end the Logic that hears the last one.
- roundHit → Takes Hits → changeMeter → Meter with Thresholds
- roundHit → Takes Hits → hitCounted → Sky Fortress Battle → fortressDamaged → Fortress Health Fill
- bombDropped → Takes Hits → changeMeter → Meter with Thresholds
- bombDropped → Takes Hits → hitCounted → Sky Fortress Battle → fortressDamaged → Fortress Health Fill
- fortressDown → Takes Hits → changeMeter → Meter with Thresholds
- fortressDown → Takes Hits → hitCounted → Sky Fortress Battle → fortressDamaged → Fortress Health Fill
- spreadShotCollected → Weapon Pickups → rapidGunsEnded → Show Rapid Time
- rapidGunsCollected → Weapon Pickups → rapidGunsStarted → Show Rapid Time
- quitMission → Pause → missionQuit → High Score
- quitMission → Pause → hidePauseOverlay → Pause Overlay Lifecycle
B.2 All Messages, in the Order the Build Adds Them
| Message | Sent by | Goes to | Heard by | Chapter |
|---|---|---|---|---|
| changeMeter | Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress) | its own Object only | Meter with Thresholds (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress) | 3 |
| enemyShotDown | Shot Down (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber); Sky Fortress Battle (on Sky Fortress) | everyone who listens | Add Points (on Game Rules) | 3 |
| roundHit | Breaks on Hit (on MG Round, Spread Round, Rapid Round) | the Object it touched (the Other of its Event) | Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress) | 3 |
| fighterHit | Hurt the Fighter | everyone who listens | Lose a Medkit (on Game Rules); Lose a Gun Level (on Game Rules) | 4 |
| protectionStarted | Start Protection | its own Object only | Protection Blink (on Fighter) | 4 |
| showResults | Mission Over (on Game Rules) | everyone who listens | Show With Results (on Result Veil, Game Over Banner, Final Score, Result High Score, Fly Again Key, Fly Again Prompt, Mission Complete Banner, Return Key, Return Prompt, Main Menu Key, Main Menu Prompt) | 4 |
| waveStarted | Run Waves (on Game Rules) | everyone who listens | Show Banner (on Banner Strip, Banner Text) | 6 |
| bombCrateCollected | Collected by Fighter (on Bomb Crate Pickup) | everyone who listens | Pickup Rewards (on Game Rules) | 8 |
| bombDropped | Drops Bombs (on Fighter) | everyone who listens | Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress); Spend a Bomb (on Game Rules); Breaks on Bomb (on Enemy Round, Fortress Shell) | 8 |
| medkitCollected | Collected by Fighter (on Medkit Pickup) | everyone who listens | Pickup Rewards (on Game Rules) | 8 |
| powerUpCollected | Collected by Fighter (on Power Up Pickup) | everyone who listens | Pickup Rewards (on Game Rules) | 8 |
| rapidGunsCollected | Collected by Fighter (on Rapid Guns Pickup) | everyone who listens | Weapon Pickups (on Fighter) | 8 |
| rapidGunsEnded | Weapon Pickups (on Fighter) | everyone who listens | Show Rapid Time (on Rapid Meter) | 8 |
| rapidGunsStarted | Weapon Pickups (on Fighter) | everyone who listens | Show Rapid Time (on Rapid Meter) | 8 |
| shotDown | Shot Down (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber) | its own Object only | Drops a Pickup (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber) | 8 |
| spreadShotCollected | Collected by Fighter (on Spread Shot Pickup) | everyone who listens | Weapon Pickups (on Fighter) | 8 |
| fortressArrived | Sky Fortress Battle (on Sky Fortress) | everyone who listens | Show With Fortress (on Health Bar Frame, Health Bar Fill, Health Bar Name) | 9 |
| fortressDamaged | Sky Fortress Battle (on Sky Fortress) | everyone who listens | Fortress Health Fill (on Health Bar Fill) | 9 |
| fortressDown | Sky Fortress Battle (on Sky Fortress) | everyone who listens | Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress); Breaks on Bomb (on Enemy Round, Fortress Shell); Sinks When Shot Down (on Sky Fortress) | 9 |
| fortressEnraged | Sky Fortress Battle (on Sky Fortress) | everyone who listens | Show Banner (on Banner Strip, Banner Text); Calls Escorts (on Sky Fortress) | 9 |
| fortressSunk | Sinks When Shot Down (on Sky Fortress) | everyone who listens | Show With Fortress (on Health Bar Frame, Health Bar Fill, Health Bar Name); Mission Complete (on Game Rules) | 9 |
| fortressWarning | Run Waves (on Game Rules) | everyone who listens | Mission Music (on Game Rules); Blink Warning (on Warning Banner) | 9 |
| hitCounted | Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress) | its own Object only | Sky Fortress Battle (on Sky Fortress) | 9 |
| hidePauseOverlay | Pause (on Game Rules) | everyone who listens | Pause Overlay Lifecycle (on Game Rules) | 10 |
| howToPlayClosed | Close How to Play | everyone who listens | Main Menu Keys (on Menu Controls); Menu Choice (on Menu Button); Show With How to Play (on How to Play Veil, How to Play Panel, How to Play Text, How to Play Strip, How to Play Key, How to Play Pickup) | 10 |
| howToPlayOpened | Open How to Play | everyone who listens | Main Menu Keys (on Menu Controls); Menu Choice (on Menu Button); Show With How to Play (on How to Play Veil, How to Play Panel, How to Play Text, How to Play Strip, How to Play Key, How to Play Pickup) | 10 |
| menuConfirmed | Main Menu Keys (on Menu Controls) | everyone who listens | Menu Choice (on Menu Button) | 10 |
| missionQuit | Pause (on Game Rules) | everyone who listens | High Score (on Game Rules, Title Controls, Menu Controls) | 10 |
| quitMission | the PAUSED menu (Pause Overlay Lifecycle on Game Rules) | everyone who listens | Pause (on Game Rules) | 10 |
| resumePauseOverlay | the PAUSED menu (Pause Overlay Lifecycle on Game Rules) | everyone who listens | Pause Overlay Lifecycle (on Game Rules); Pause (on Game Rules) | 10 |
| showPauseOverlay | Pause (on Game Rules) | everyone who listens | Pause Overlay Lifecycle (on Game Rules) | 10 |
From here on, each message has a list of its own, under the chapter that adds it. The name in quotes is the Mode that sends or hears it. An Event with only one Mode has it under its Logic Component’s name, and a Function sends “when called”.
B.3 Chapter 3: Enemy Fighters
B.3.1 changeMeter
- Sent by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress), in “Take a Hit”, to its own Object only.
- Sent by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress), in “Take the Blast”, to its own Object only.
- Heard by Meter with Thresholds (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress): “Meter with Thresholds”.
B.3.2 enemyShotDown
- Sent by Shot Down (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber), in “Shot Down”, to everyone who listens.
- Sent by Sky Fortress Battle (on Sky Fortress), in “Go Down”, to everyone who listens.
- Heard by Add Points (on Game Rules): “Add Its Points”.
B.3.3 roundHit
- Sent by Breaks on Hit (on MG Round, Spread Round, Rapid Round), in “Break”, to the Object it touched (the Other of its Event).
- Heard by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress): “Take a Hit”.
B.4 Chapter 4: Mission Failed
B.4.1 fighterHit
- Sent by Hurt the Fighter, in “when called”, to everyone who listens.
- Heard by Lose a Medkit (on Game Rules): “Lose a Medkit”.
- Heard by Lose a Gun Level (on Game Rules): “Lose a Gun Level”.
B.4.2 protectionStarted
- Sent by Start Protection, in “when called”, to its own Object only.
- Heard by Protection Blink (on Fighter): “Start Blinking”.
B.4.3 showResults
- Sent by Mission Over (on Game Rules), in “Show the Results”, to everyone who listens.
- Heard by Show With Results (on Result Veil, Game Over Banner, Final Score, Result High Score, Fly Again Key, Fly Again Prompt, Mission Complete Banner, Return Key, Return Prompt, Main Menu Key, Main Menu Prompt): “Show Me”.
B.5 Chapter 6: Mission Timeline
B.5.1 waveStarted
- Sent by Run Waves (on Game Rules), in “Start the Wave”, to everyone who listens.
- Heard by Show Banner (on Banner Strip, Banner Text): “Raise the Banner”.
B.6 Chapter 8: Pickups, Weapons and Bombs
B.6.1 bombCrateCollected
- Sent by Collected by Fighter (on Bomb Crate Pickup), in “Be Collected”, to everyone who listens.
- Heard by Pickup Rewards (on Game Rules): “Reward the Bomb Crate”.
B.6.2 bombDropped
- Sent by Drops Bombs (on Fighter), in “Set Off a Bomb”, to everyone who listens.
- Heard by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress): “Take the Blast”.
- Heard by Spend a Bomb (on Game Rules): “Take a Bomb”.
- Heard by Breaks on Bomb (on Enemy Round, Fortress Shell): “Break”.
B.6.3 medkitCollected
- Sent by Collected by Fighter (on Medkit Pickup), in “Be Collected”, to everyone who listens.
- Heard by Pickup Rewards (on Game Rules): “Reward the Medkit”.
B.6.4 powerUpCollected
- Sent by Collected by Fighter (on Power Up Pickup), in “Be Collected”, to everyone who listens.
- Heard by Pickup Rewards (on Game Rules): “Reward the Power Up”.
B.6.5 rapidGunsCollected
- Sent by Collected by Fighter (on Rapid Guns Pickup), in “Be Collected”, to everyone who listens.
- Heard by Weapon Pickups (on Fighter): “Switch to Rapid Guns”.
B.6.6 rapidGunsEnded
- Sent by Weapon Pickups (on Fighter), in “Switch to Spread Shot”, to everyone who listens.
- Sent by Weapon Pickups (on Fighter), in “Back to Machine Guns”, to everyone who listens.
- Heard by Show Rapid Time (on Rapid Meter): “Hide”.
B.6.7 rapidGunsStarted
- Sent by Weapon Pickups (on Fighter), in “Switch to Rapid Guns”, to everyone who listens.
- Heard by Show Rapid Time (on Rapid Meter): “Fill and Run Down”.
B.6.8 shotDown
- Sent by Shot Down (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber), in “Shot Down”, to its own Object only.
- Heard by Drops a Pickup (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber): “Maybe Drop”.
B.6.9 spreadShotCollected
- Sent by Collected by Fighter (on Spread Shot Pickup), in “Be Collected”, to everyone who listens.
- Heard by Weapon Pickups (on Fighter): “Switch to Spread Shot”.
B.7 Chapter 9: The Sky Fortress
B.7.1 fortressArrived
- Sent by Sky Fortress Battle (on Sky Fortress), in “Come Down”, to everyone who listens.
- Heard by Show With Fortress (on Health Bar Frame, Health Bar Fill, Health Bar Name): “Show”.
B.7.2 fortressDamaged
- Sent by Sky Fortress Battle (on Sky Fortress), in “Show the Damage”, to everyone who listens.
- Heard by Fortress Health Fill (on Health Bar Fill): “Shrink”.
B.7.3 fortressDown
- Sent by Sky Fortress Battle (on Sky Fortress), in “Go Down”, to everyone who listens.
- Heard by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress): “Take the Blast”.
- Heard by Breaks on Bomb (on Enemy Round, Fortress Shell): “Break”.
- Heard by Sinks When Shot Down (on Sky Fortress): “Start Sinking”.
B.7.4 fortressEnraged
- Sent by Sky Fortress Battle (on Sky Fortress), in “Enraged”, to everyone who listens.
- Heard by Show Banner (on Banner Strip, Banner Text): “Raise the Banner”.
- Heard by Calls Escorts (on Sky Fortress): “Call Them”.
B.7.5 fortressSunk
- Sent by Sinks When Shot Down (on Sky Fortress), in “Burst”, to everyone who listens.
- Heard by Show With Fortress (on Health Bar Frame, Health Bar Fill, Health Bar Name): “Hide”.
- Heard by Mission Complete (on Game Rules): “Win the Mission”.
B.7.6 fortressWarning
- Sent by Run Waves (on Game Rules), in “Start the Wave”, to everyone who listens.
- Heard by Mission Music (on Game Rules): “Boss Theme”.
- Heard by Blink Warning (on Warning Banner): “Start Blinking”.
B.7.7 hitCounted
- Sent by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress), in “Take a Hit”, to its own Object only.
- Sent by Takes Hits (on Zero Fighter, Red Ace, Dive Bomber, Heavy Bomber, Sky Fortress), in “Take the Blast”, to its own Object only.
- Heard by Sky Fortress Battle (on Sky Fortress): “Show the Damage”.
B.9 Game State Changes (Sent by the Engine)
Set Game State makes the engine send Game State Changed to everyone who listens.
- Lose a Medkit sets Mission Failed in “Lose a Medkit”.
- Mission Start sets Playing in “A Fresh Mission”.
- Mission Complete sets Mission Complete in “Win the Mission”.
- Heard by: High Score, Mission Music, Mission Over, Lost With the Last Medkit, Show Banner, Stops When the Mission Is Won.
