City Control
Control all 7 cities for 7 days to win, or control the most cities by Week 8.
Leaderboard (Top 4)
Click on a sector to view details. Red = Allied Black = Axis
Controlled Cities
Recent Games
Campaign Overview
This is a flexible, map-based campaign where players fight for control of Normandy over 8 weeks. Players schedule games at their convenience, fight for sectors on the campaign map, and earn raffle coins for recognition and potential prizes.
The campaign is designed to specifically accommodate any level of participation - play one game or twenty!
Core Principles
- Play as much or as little as you want
- Bring whatever forces you want (within reason)
- Change your army between games freely
- Everyone has a fair shot at recognition and prizes
- Earn bonus coins by supporting the store
Scoring System
Coins track your contribution and serve as raffle entries at campaign end.
How to Earn Coins
| Action | Coins |
|---|---|
| Play game + post pics on Discord | +1 |
| Share pics online & tag Waterloo Games | +1 |
| Every $30 spent at store (per receipt)* | +1 |
| Paint/assemble models in store | +1 per session |
| Use newly purchased model in game | +2 (one-time) |
| Bring new player for first HoF game | +2 |
| If that new player joins campaign | +2 additional |
*$93 receipt = 3 coins. Smaller receipts can't be combined.
Coins also grant in-game rerolls! See Campaign Veterancy below.
Joining the Campaign
To Join
- Declare your forces: Axis or Allied
- Add your name to the campaign roster (Discord/store)
- Start scheduling games!
Your declared side determines: Which raffle you're eligible for at campaign end. That's it. If need be, you can still play games representing either side during the campaign.
Scheduling & Playing Games
Step 1: Schedule a Game
- Contact another campaign participant (Discord/in-store)
- Agree on date/time to play
- Determine who will play Allied and who will play Axis for this game
Step 2: Allied Player Chooses Battlefield
- Allied player declares which friendly sector will be attacking which adjacent enemy sector (paradrops excepted)
Step 3: Build Your Forces
Build any force you want. You can use the Force Parity Procedure to balance the scenario.
Step 4: Share Forces
- Show each other your forces
- Count vehicle teams (tanks, half-tracks, armored cars, etc.)
- Player with more vehicles = Scenario Attacker
- If tied, Allied player chooses
- Check coin totals: Each player announces how many rerolls they have (coins ÷ 4)
Step 5: Calculate Modifiers
See "Break Limit Modifiers" section below
Step 6: Play the Game
Standard Hail of Fire game using chosen forces
Step 7: Resolve Sector Control
- Allied win: Allies capture the target sector
- Axis win: No territory changes (Allied attack repelled). The target sector receives a Reinforcement marker — the next Allied attack against it gets +2 BL. This stacks with each consecutive failed attack (+2, +4, +6, etc.) and is cleared when Allies capture the sector
- Update store map immediately (move pins)
Step 8: Report Results
Both players post to Discord:
- [SECTOR NAME/CODE] - [Winner] defeats [Loser]
- Attack: [Sector attacked] FROM [Sector attacked from]
- Result: [Which sector changed hands, if any]
- Modifiers: [list adjacency/supply/terrain]
- @opponent (confirm with 👍 emoji)
Map Mechanics
Sector Control - Starting Positions
- Allied starting sectors: Utah, Omaha, Gold, Juno, Sword (5 landing sectors)
- German starting sectors: All other sectors on the map
- Most of the map begins under German control
Adjacency Bonuses (Attacker Only)
- +1 Break Limit for each additional friendly sector bordering the target after the first (the sector you're attacking from)
- Maximum +4 Break Limit (even if you control more sectors)
Example: Allies attack Caen from E2. Caen has 6 bordering sectors total. Allies control E1, E2, E3, E4, E6, and D5 (5 additional sectors). Allied adjacency bonus would be +5, capped at +4 BL. German adjacency bonus: 0 BL (defender never receives adjacency bonus).
Strategic Note: Controlling 4+ sectors around a target maximizes your adjacency bonus. Beyond that, additional sectors don't increase BL but may serve other strategic purposes (cutting supply, opening new attack routes).
Supply Lines
A sector is supplied if the shortest path to a supply source uses only friendly sectors.
Supply Sources:
- Allied: Utah, Omaha, Gold, Juno, Sword, or captured paradrop sectors
- Axis: C7, D8, or E9
How to Check:
- Count sectors to your nearest supply source
- If multiple paths tie for shortest, you only need ONE of them to be all friendly
- That shortest route must be all friendly sectors - longer routes don't count
Unsupplied Penalty: Reduce the Morale of all units by 1
Landing Sectors
- Landing sectors: Utah, Omaha, Gold, Juno, Sword (the 5 Allied starting positions)
- Landing sectors always count as Allied supply sources
- If Axis win a battle where the Allied attack originated from a landing sector, the landing sector remains Allied
- Allies get +2 Break Limit when fighting in landing sectors (attacking or defending)
- Landing sectors represent the permanent Allied beachhead and overwhelming naval/air superiority
Flooded Sectors
If paradropping into flooded sector: -1 BL additional penalty
Terrain (Farmland, Bocage, City, Flooded)
- Suggested terrain for your table setup, but not at all required
- Players may agree to house rules if desired
Paradrop Rules
Allied players may conduct paradrops:
Requirements
- Choose any German sector NOT adjacent to Allied sectors
- Choose an enemy-adjacent, non-landing Allied sector the attack originates from
Restrictions
No Vehicles - Infantry and light guns only
Flooded Sector Paradrop
-1 Break Limit penalty to Allies (difficult landing conditions)
Results
- Allied victory: Sector becomes Allied-controlled AND becomes an Allied supply source (like landing sectors)
- German victory: No territory changes (Allied attack repelled)
Break Limit Modifiers
- Attacker (Allies): +1 BL per additional friendly sector bordering the target (beyond sector attacking from), maximum +2 BL
- Allies Only: Flat +2 BL if fighting from a landing sector (Utah, Omaha, Gold, Juno, Sword)
- Flooded Sector Paradrop: -1 BL penalty to Allies (difficult landing conditions)
- Reinforcement Bonus: +2 BL per consecutive failed Allied attack on a sector (stacks: +2, +4, +6, etc.). Cleared when Allies capture the sector
Scoring System
Coins track your campaign contribution and determine awards and prizes.
Coins (How to Earn)
Playing Games:
- Play a game and report it and post pictures on Discord: +1 coin
- Share pictures of your game online and tag Waterloo Games: +1 coin
Store Patronage Bonuses:
| Action | Coins |
|---|---|
| Every $30 spent at store during campaign (per receipt) | +1 (repeatable) |
| Paint/assemble models in store | +1 per session |
| Use newly purchased model in campaign game | +2 (one-time) |
| Bring a new player for their first Hail of Fire game | +2 |
| If that new player joins campaign | +2 additional (4 total) |
Note on store purchases: Coins are calculated per receipt. A $93 receipt = 3 coins. However, multiple smaller receipts cannot be combined (e.g., three $20 receipts do not equal $60).
Bonus: Coins also grant in-game rerolls! See Campaign Veterancy below.
Campaign Veteran Status
As you participate in the campaign, your accumulated experience translates into in-game advantages.
How It Works
For every 4 coins you've earned, you gain 1 reroll to use during a game.
- Calculate: Total coins ÷ 4 (round down)
- Example: 10 coins = 2 rerolls available
- Example: 16 coins = 4 rerolls available
Using Rerolls
- Rerolls can be used at any point during the game
- Apply to any single die roll (to-hit, damage, morale, etc.)
- You choose when to spend them
- All rerolls refresh each game (don't carry between games)
Announce your reroll count to your opponent before the game starts.
Victory Conditions & Map Resets
Campaign Victory Occurs When
- Allies control all 7 city sectors for 7 consecutive days, OR
- Week 8 is reached (whoever controls more city sectors wins)
When Victory Happens
- Winning side announced
- Final map photo posted with narrative conclusion
Map Reset (if needed before Week 8)
- Keep all earned coins (they carry forward!)
- Reset map to starting positions
- Continue as "Season 2"
- Final raffle uses coins from ALL seasons
Quick Reference
Game Sequence Checklist
- ☐ Schedule with opponent, determine who plays which side
- ☐ Allied player picks which sector is attacking which sector
- ☐ Determine scenario attacker (vehicle count)
- ☐ Check coin totals and announce rerolls (coins ÷ 4)
- ☐ Calculate BL modifiers
- ☐ Play game
- ☐ Allied win = capture target; Axis win = no change + reinforcement stacks (+2 BL per failed attack)
- ☐ Update map, post to Discord with photos
Break Limit Modifiers Summary
- Attacker: +1 BL per additional friendly sector bordering target (max +2)
- Allies: +2 BL in landing sectors (Utah, Omaha, Gold, Juno, Sword)
- Paradrops: Allies -1 BL if flooded
- Reinforcement: +2 BL per failed Allied attack (stacks, cleared on capture)
- Landing sectors cannot be captured by Axis
Unsupplied Penalty
Reduce Morale by 1
Scoring Quick Math
- Play game: +1 coin
- Purchase $30 at store: +1 coin (repeatable)
- Paint in store: +1 coin per session (max 3)
- Use new purchased unit: +2 coins (one-time)
- Bring new player: +2 coins (+2 more if they join)
Player Roster
| Rank | Player | Side | Coins | Rerolls | Games | Wins | Actions |
|---|
Game History
| # | Date | Allied Player | Axis Player | Battle | Winner | Result | Actions |
|---|
Coin Transactions
| # | Date | Player | Coins | Reason | Notes | Actions |
|---|
Coin Earning Reference
| Play a game (report with photos) | +1 coin |
| Store purchase ($30+) | +1 coin (repeatable) |
| Paint/assemble in store | +1 coin per session |
| Use newly purchased unit | +2 coins (one-time) |
| Bring a new player | +2 coins |
| New player joins campaign | +2 coins (additional) |
Export Data
Download all campaign data as a JSON file for backup or sharing.
Import Data
Load campaign data from a previously exported JSON file.
Discord Integration
Connect to Discord to post game results and campaign updates to your server.
To get a webhook URL: Server Settings → Integrations → Webhooks → New Webhook
Reset Campaign
Reset the map to starting positions (keeps players and coins for Season 2).
Submit Game Result
Submit your game result for admin approval. Your submission will be reviewed before updating the campaign map.
Campaign Map Reference
Red = Allied Black = Axis
Pending Submissions
No pending submissions.
Admin Login
Enter the admin password to access campaign management features.