Build a GameCreating Pacific Wings

Appendix D — Tuning Tables

The numbers that make Pacific Wings play the way it does. Change them to remix the game: the game’s Logic reads them from here. Try one change at a time, and run the game after each. If something stops working, put the old number back.

D.1 Data Tables

D.1.1 Enemy Types

One row per enemy kind. speed: how fast it flies south once it is in view, in meters per second. health: how many hits shoot it down. points: the score for shooting it down. firstShotSeconds: seconds from coming into view to its first shot. shotSecondsMin and shotSecondsMax: the shortest and longest wait between later shots. weaveSpeed, weaveSeconds and weaveAngle: how fast it slides sideways, how often it turns, and how far it banks (0 = it does not weave). tracerSpeed: how fast its tracers fly (meters per second). aimConeDegrees: how far from straight south it may aim at the Fighter (0 = it always fires straight south). wingCannonsDropChance and repairCrateDropChance: the chance (0 to 1) that it drops that pickup when it is shot down.

Data TableEnemy TypesData Structure: Enemy Stats
Row 0Enemy Fighter
speed3.7
health1
points100
firstShotSeconds1.15
shotSecondsMin1.4
shotSecondsMax2.5
weaveSpeed0
weaveSeconds0
weaveAngle0
tracerSpeed7.7
aimConeDegrees0
wingCannonsDropChance0.08
repairCrateDropChance0.035
Row 1Enemy Ace
speed4.25
health2
points250
firstShotSeconds1
shotSecondsMin0.9
shotSecondsMax1.7
weaveSpeed3.5
weaveSeconds0.68
weaveAngle6
tracerSpeed8.9
aimConeDegrees65
wingCannonsDropChance0.08
repairCrateDropChance0.035
Row 2Heavy Bomber
speed2.1
health5
points600
firstShotSeconds2.15
shotSecondsMin0.78
shotSecondsMax1.25
weaveSpeed1.5
weaveSeconds1.45
weaveAngle6
tracerSpeed8.9
aimConeDegrees65
wingCannonsDropChance0.22
repairCrateDropChance0.12

D.1.2 Reinforcement Orders

One row per enemy kind sent as reinforcements (the row name is the enemy kind, as in Enemy Types). fromStage: the stage at which they start. firstSeconds: the wait before the first group. secondsMin and secondsMax: the shortest and longest wait between groups. cap: no more are sent while this many of that kind are alive. perWave: how many come at once. xMin and xMax: where across the route (meters) the first one may appear; laneStepMeters: how far right each next one’s lane is.

Data TableReinforcement OrdersData Structure: Reinforcement Orders Entry
Row 0Enemy Fighter
fromStage1
firstSeconds0.75
secondsMin3.8
secondsMax5
cap14
perWave2
xMin2.5
xMax8.1
laneStepMeters9.4
Row 1Enemy Ace
fromStage2
firstSeconds0.35
secondsMin7.2
secondsMax9
cap10
perWave1
xMin2.8
xMax17.2
laneStepMeters0
Row 2Heavy Bomber
fromStage3
firstSeconds0.45
secondsMin10
secondsMax13
cap5
perWave1
xMin3.75
xMax16.25
laneStepMeters0

D.1.3 Weapon Levels

One row per weapon level, in order (row 0 is weapon level 0). centerGun: the Center Muzzle fires. wingCannons: the Left and Right Muzzles fire. fireRateSeconds: the time between volleys.

Data TableWeapon LevelsData Structure: Weapon Levels Entry
Row 0Center Gun
centerGunYes
wingCannonsNo
fireRateSeconds0.14
Row 1Wing Cannons
centerGunNo
wingCannonsYes
fireRateSeconds0.15
Row 2Wing Cannons and Center Gun
centerGunYes
wingCannonsYes
fireRateSeconds0.15

D.1.4 Kill Chain Multipliers

One row per step of the kill chain, in order; a chain starts at the first row and moves one row down with each shoot-down, up to the last. multiplier: the points multiplier at that step. scoreColor: the color of the score text then.

Data TableKill Chain MultipliersData Structure: Kill Chain Multipliers Entry
Row 0x1
multiplier1
scoreColor#fff4cf
Row 1x2
multiplier2
scoreColor#ffe066
Row 2x3
multiplier3
scoreColor#ffab40
Row 3x4
multiplier4
scoreColor#ff6a3d

D.1.5 Command Bomber Phases

One row per Command Bomber phase, in order; the phases split its health equally. damageTint: its color after each hit. startShake and startShakeSeconds: how strong and how long the camera shakes as the phase begins; startFlakParticles: how big the Flak Burst is then; dropsWingCannons: whether it drops a Wing Cannons then. gunFirstSeconds: the wait before the phase’s first burst of straight fire; gunSeconds: the time between bursts; gunNose: whether the nose gun fires too (the wing guns always do); gunFlashParticles: how big each muzzle flash is. aimedFirstSeconds: the wait before the phase’s first warning of an aimed volley; aimedSeconds: the time between warnings; aimedWarningSeconds: the time from a warning to its volley; aimedNose and aimedWings: which guns fire the volley; aimedWarningParticles and aimedFlashParticles: how big the warning flash and each muzzle flash are. flakTracers: how many tracers a flak fan has (0: this phase has no flak); flakFirstSeconds: the wait before the phase’s first flak warning; flakSeconds: the time between warnings; flakWarningSeconds: the time from a warning to its fan; flakArcDegrees: how wide the fan is, in degrees; flakSpeed: how fast its tracers fly, in meters per second; flakWarningParticles and flakFlashParticles: how big the warning flash and the flash as the fan fires are; flakWarningShake: how strong the warning’s camera shake is (0: no shake).

Data TableCommand Bomber PhasesData Structure: Command Bomber Phases Entry
Row 0Phase 1
damageTint#ffd0b8
startShake0
startShakeSeconds0
startFlakParticles0
dropsWingCannonsNo
gunSeconds0.78
gunFirstSeconds0.45
gunNoseNo
gunFlashParticles5
aimedSeconds1.75
aimedFirstSeconds0.8
aimedWarningSeconds0.48
aimedNoseYes
aimedWingsNo
aimedWarningParticles10
aimedFlashParticles8
flakTracers0
flakSeconds0
flakFirstSeconds0
flakWarningSeconds0
flakArcDegrees0
flakSpeed0
flakWarningParticles0
flakFlashParticles0
flakWarningShake0
Row 1Phase 2
damageTint#ffd6a0
startShake0.018
startShakeSeconds0.32
startFlakParticles36
dropsWingCannonsYes
gunSeconds0.6
gunFirstSeconds0.25
gunNoseNo
gunFlashParticles5
aimedSeconds1.35
aimedFirstSeconds0.5
aimedWarningSeconds0.5
aimedNoseNo
aimedWingsYes
aimedWarningParticles7
aimedFlashParticles5
flakTracers5
flakSeconds3.2
flakFirstSeconds0.7
flakWarningSeconds0.5
flakArcDegrees70
flakSpeed6.9
flakWarningParticles20
flakFlashParticles14
flakWarningShake0
Row 2Phase 3
damageTint#ff9c8f
startShake0.028
startShakeSeconds0.45
startFlakParticles52
dropsWingCannonsYes
gunSeconds0.46
gunFirstSeconds0.2
gunNoseYes
gunFlashParticles4
aimedSeconds1.05
aimedFirstSeconds0.35
aimedWarningSeconds0.38
aimedNoseYes
aimedWingsYes
aimedWarningParticles6
aimedFlashParticles4
flakTracers7
flakSeconds2.25
flakFirstSeconds0.45
flakWarningSeconds0.38
flakArcDegrees112
flakSpeed8
flakWarningParticles28
flakFlashParticles18
flakWarningShake0.012

D.1.6 Round Settings

One row per round of a mission, in order (row 0 is round 1); a mission has as many rounds as rows. commandBomberHealthScale: the Command Bomber’s health times this. enemyPace: enemy fire and reinforcement waits times this. enemySpeed: enemy flight speed times this. skyTint and skyAlpha: the sky’s color for the round.

Data TableRound SettingsData Structure: Round Settings Entry
Row 0Round 1
commandBomberHealthScale . 1
enemyPace1
enemySpeed1
skyTint#07123d
skyAlpha0
Row 1Round 2
commandBomberHealthScale . 1.25
enemyPace0.85
enemySpeed1.1
skyTint#ff7a36
skyAlpha0.18
Row 2Round 3
commandBomberHealthScale . 1.5
enemyPace0.7
enemySpeed1.2
skyTint#07123d
skyAlpha0.42

D.2 Logic Numbers

The numbers and colors each Logic Component keeps in its Shared Variables and Per Instance Variables, with the Starting Value its card gives. A value set on its Object, under Variables in the Properties, or on a placement in the Scene, wins over the value here.

FIGHTER GUNS
  tracerSpeed ................ 17.5
  centerFlashParticles ....... 5
  wingFlashParticles ......... 4
FLY SOUTH WHEN SEEN
  speed ...................... 3.7
TAKES HITS
  flashColor ................. #ffffff
  damageTint ................. #ffd0b8
  flashSeconds ............... 0.07
  hitParticles ............... 10
SHOT DOWN
  explosionParticles ......... 42
SCORE
  wingCannonsPoints .......... 250
  repairCratePoints .......... 100
  commandBomberHitPoints ..... 10
  commandBomberPoints ........ 2000
CRASHES INTO FIGHTER
  crashParticles ............. 30
FIRE WHEN SEEN
  tracerSpeed ................ 7.7
  firstShotSeconds ........... 1.15
  shotSecondsMin ............. 1.4
  shotSecondsMax ............. 2.5
  muzzleFlashParticles ....... 5
  aimConeDegrees ............. 0
  minimumForwardMeters ....... 2.8
LOST ON HIT
  explosionParticles ......... 88
  shakeIntensity ............. 0.032
  shakeSeconds ............... 0.48
  flashColor ................. #fff1bd
  flashSeconds ............... 0.16
  flashBeforeStage ........... 4
RETURN FLIGHT
  returnSeconds .............. 1.2
  protectionSeconds .......... 2
  belowLaneMeters ............ 2.5
  blinkSeconds ............... 0.1
  dimAlpha ................... 0.25
PLANES
  startingPlanes ............. 3
  reserveDelaySeconds ........ 2
  reserveStartBelowMiddle .... 17.5
  maximumPlanes .............. 6
SHOW WHILE IN RESERVE
  slot ....................... 1
WEAVE
  weaveSpeed ................. 3.5
  weaveSeconds ............... 0.68
  weaveAngle ................. 6
STAGES
  shakeIntensity ............. 0.012
  shakeSeconds ............... 0.35
REINFORCEMENTS
  aboveCameraMeters .......... 11.25
MOVE AHEAD WHEN PASSED
  leadMeters ................. 17.5
  gapMin ..................... 10.6
  gapMax ..................... 13.1
  xMin ....................... 4.4
  xMax ....................... 15.6
DRIFT SIDEWAYS
  driftSpeed ................. 0.4
  leftX ...................... 3.1
  rightX ..................... 16.9
COLLECTED BY FIGHTER
  sparkleParticles ........... 42
SPIN
  spinDegreesPerSecond ....... -96
DROPS PICKUPS
  wingCannonsChance .......... 0
  repairCrateChance .......... 0
SUPPLY DROPS
  firstSeconds ............... 9.5
  secondsMin ................. 10
  secondsMax ................. 14
  wingCannonsChance .......... 0.7
  repairCrateChance .......... 0.32
  wingCannonsAheadMeters ..... 8.4
  repairCrateAheadMeters ..... 8.9
  xMin ....................... 3.1
  xMax ....................... 16.9
KILL CHAIN
  chainSeconds ............... 1.5
FOCUS
  normalSpeed ................ 7.8
  focusSpeedFactor ........... 0.45
  moveSpeed .................. 7.8
COMMAND BOMBER ARRIVAL
  laneMeters ................. 6.9
  formationAboveMiddleMeters . 3.4
COMMAND BOMBER HEALTH
  startingHealth ............. 240
  shotDownParticles .......... 132
  shotDownShake .............. 0.045
  shotDownShakeSeconds ....... 0.8
COMMAND BOMBER HITS
  flashColor ................. #ffffff
  flashSeconds ............... 0.07
  hitParticles ............... 10
  phaseRow ................... 0
COMMAND BOMBER GUNS
  tracerSpeed ................ 7.7
  phaseRow ................... 0
COMMAND BOMBER AIMED VOLLEYS
  aimedTracerSpeed ........... 8.9
  minimumForwardMeters ....... 2.8
  aimConeDegrees ............. 65
  phaseRow ................... 0
COMMAND BOMBER FLAK
  warningShakeSeconds ........ 0.2
  phaseRow ................... 0
ROUNDS
  breatherSeconds ............ 3.5
  fadeSeconds ................ 0.8
SHOW AT GAME STATE
  delaySeconds ............... 1