Assumes the following:
- Left Control will open Stratagem menu (Hold/Press)
- Stratagem directions use either the arrow keys or W/A/S/D, selectable in the plugin settings
Simply install the plugin from the StreamController store and configure your Stream Deck buttons with your favorite stratagems.
Access settings via Settings → Plugins → HELLDIVERS 2 → ⚙️
| Setting | Description | Default |
|---|---|---|
| Key Delay | Delay between key presses. Increase if stratagems fail to register. | 0.03s |
| Modifier Key | Key to open stratagem menu (Left/Right Ctrl, Alt, or Shift) | Left Ctrl |
| Direction Keys | Keys used for Up, Down, Left, and Right stratagem inputs (Arrow keys or WASD) | Arrow keys |
| Hold Modifier Key | Hold modifier during sequence vs press-and-release | ON |
| Show Labels | Display text labels on buttons (OFF for icon-only look) | ON |
net_jslay_helldivers_2/
├── main.py # Plugin entry point
├── manifest.json # Plugin metadata
├── VERSION # Version number
├── assets/
│ ├── data/
│ │ └── stratagems.json # Stratagem key sequences (generated)
│ └── icons/
│ └── *.png # Stratagem icons (generated)
├── locales/
│ └── en_US.json # Locale strings (generated)
└── update/ # Asset generation module
├── config.py # Stratagem mappings (source of truth)
├── cli.py # CLI commands
└── ...
The update/ module automates asset generation. It scrapes stratagem data from the wiki, downloads SVG icons, and generates all required files.
Create a virtual environment and install dependencies:
cd /path/to/net_jslay_helldivers_2
# Create virtual environment
python -m venv .venv
# Activate it
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
# Install dependencies
pip install -r update/requirements.txtNote: The
.venvdirectory is already in.gitignore.
When new stratagems are added to the game:
1. Discover new stratagems
cd /path/to/net_jslay_helldivers_2
source .venv/bin/activate
python -m update discoverThis compares wiki.gg and the SVG repository against config.py and shows:
- New stratagems found on wiki
- New SVG icons without mappings
- Suggested config entries to add
2. Update config.py
Copy the suggested mappings from the discover output and add them to update/config.py:
STRATAGEM_MAPPINGS = {
# ... existing entries ...
# Add new entries:
"NewStratagem": {"wiki": "Wiki Name", "svg": "SVG Name", "name": "Display Name"},
}The mapping fields:
- key: Internal plugin key (used in action IDs, icon filenames, locale keys)
- wiki: Exact name as it appears on helldivers.wiki.gg (for scraping sequences)
- svg: Exact name as it appears in the SVG repository (for icon generation)
- name: Human-readable display name (for locale strings)
3. Generate assets
# Dry run first to preview
python -m update generate-all --dry-run
# Generate everything
python -m update generate-allThis generates:
assets/data/stratagems.json- Key sequences from wikilocales/en_US.json- Locale strings with labelsassets/icons/*.png- Icons from SVGs with corner borders
python -m update discover # Find new stratagems from wiki/SVGs
python -m update generate-all # Generate all assets
python -m update icons # Generate only icons
python -m update locales # Generate only locale file
python -m update stratagems # Generate only stratagems.json
python -m update validate # Validate current configuration
python -m update list # List all mapped stratagemsAdd --dry-run to any command to preview without writing files.
Add --verbose for detailed output.
If you prefer to add stratagems manually:
- Add a new key to
assets/data/stratagems.jsonwith the key combination - Add icon with matching
keyname.pngtoassets/icons - Add matching
actions.keyname.nametolocales/en_US.json - Add matching
actions.keyname.labels.*tolocales/en_US.json
- Add "custom button" option where a user can define the stratagem itself
- Package the icon set
- Test all the buttons
