Cross-side composite
Bulwark
Independent · 10 damage, 35 shield, staggers 3 s
An Evane Repel flowing into a Facet Seal: light and shard working together, the strongest kind of composite. Pushes the enemy back and raises a large shield.
The chain
Drawn as Repel then Facet Seal, one continuous stroke per thumb: each spell is drawn at its own size and the second starts where the first ends, as SpellComposer joins them in the game.
Strokes
Independent: each thumb draws its own shape, at its own pace, starting and ending together.
| Thumb | Size | Sharp corners | Vertices |
|---|---|---|---|
| Left thumb | 60 mm (33 × 60 mm) | 23% along, 90° | 27 |
| Right thumb | 60 mm (47 × 60 mm) | 20% along, 90° 49% along, 90° 66% along, 90° 83% along, 90° | 7 |
Size is the longer side of the drawn shape. Corner positions are the share of the stroke's length drawn before reaching them.
Casting
- Breath window
- 1190 ms
- Fizzles
- below 45% overall, or under 30% shape on either thumb
- Thumb sync
- about 80 ms allowed between the thumbs' start and end times
- Casting
- Both spells must be learned; the composite needs no learning of its own
Score weights (defaults)
Effect
10 damage, 35 shield, staggers 3 s. The enemy's next attack is delayed by 3 s.
| Weakest cast | Base | Perfect cast | |
|---|---|---|---|
| Damage | 6.0 | 10 | 15.0 |
| Shield | 21.0 | 35 | 52.5 |
Cast quality scales power from 0.6x just over the fizzle line to 1.5x for a perfect cast.
Against monsters
| Monster | HP | Casts at best | Casts at worst |
|---|---|---|---|
| Training Golem | 120 | 8 | 20 |
| Sallow Glint | 14 | 1 | 3 |
Casts needed with this spell alone, at a perfect cast (1.5x) and at one just over the fizzle line (0.6x).
In the Codex
- Spell
- Bulwark (
bulwark, in data) - Kind
- Thread: Repel into Facet Seal
- Where
- Lanternfall, Rook shows it once Facet Seal is whole
- Main line or optional
- Optional
Elsewhere in the Codex
- Composite
- Bulwark
- Chain
- Repel, then Facet Seal (Evane and Facet together)
- Effect
- 35 shield, 3 s stagger, 10 damage
- Breath window
- 1,190 ms
From Mobile RPG Codex › Spellcasting › Composite Spells (Prototype)
The spell roadmap (VEL-60) places all the optional spells above in Act 2 and decides which ship first. The Story Bible's example threads (section 7) are both here: Gale into Coil is Tempest, and Coil into Facet Seal is Thornshield, the first cross-side thread most players find on their own. Tempest and Bulwark already exist as data.
How is Repel into Gale named in data? The Story Bible names threads by their parts; the Codex has named composites (Tempest, Bulwark). Recommend: a one-word name, like Tempest and Bulwark: id
headwind, shown as Headwind, flagcomposite.known.headwind. The Spell Book can still show its parts, "Repel into Gale". (VEL-63)
The Crack (60% to 25%). Its chest plates crack and show the warp inside. Hits to the chest during a stagger do double damage: stagger it with Repel or Bulwark (Repel into Facet Seal), then Bevel Lash or Toll. Every 12 s a Warp Pulse does 20 damage that ignores shields; Hush stops it (if learned in Act 2).
From Walkthrough: Act 3 › Chapter 4: The glint colossus › The glint colossus
Lore: the door-mark is older than the Wardens (Story Bible section 2). Threaded into a Facet glyph it becomes the thing a mirrored seal can't reflect. It mixes the sides like Bulwark (Repel into Facet Seal) and Thornshield (Coil into Facet Seal), and it is the first thread anyone has used to mend rather than fight. Repel is the Evane half because it can never be sealed and every player has it.
From Walkthrough: Act 3 › Spells gained › Thaw, Repel into Pavilion Wake **(Idea)**
Data (
thaw): parts["repel", "pavilion_wake"]; colour#FFE08A, the cross-side pale gold Bulwark has; breath 0.85 × (600 + 1,000) = 1,360 ms. Hasten's +40% for 12 s gives about 1,904 ms (see open question 5).From Walkthrough: Act 3 › Spells gained › Thaw, Repel into Pavilion Wake **(Idea)**
Bulwark (Repel into Facet Seal): already a named composite; Aske suggests it for the colossus's second phase, where its stagger opens the cracked chest.
From Walkthrough: Act 3 › Spells gained › Other cross-side threads to point players at
- Encounter
corran_colossus- Enemy (id)
- glint colossus (
glint_colossus) + glint adds- HP
- 1,400 (The Mass, The Crack, The Pull)
- Attack
- 24 every 7 s, every 5 s in The Pull; sheds glints in The Mass; Warp Pulse 20 every 12 s, ignoring shields, in The Crack; a 40 s timer in The Pull
- Counters
- Repel or Bulwark (stagger cancels the sweep and opens the chest), Bevel Lash or Toll (the open chest), Gale (clears adds), Hush (stops the Warp Pulse, if learned in Act 2), Linger (halves The Pull's timer), Hasten
- Difficulty
- Act boss
- Encounter
undermere_duel_1–3- Enemy (id)
- outlaw caster (
undermere_outlaw)- HP
- 200, 250, 300 (bestiary scaling)
- Attack
- Every 6 s a thread: Bulwark (10 damage, 35 shield, 3 s stagger) or Tempest (55 damage, 1 s stagger), told by its colours over 1.5 s
- Counters
- Read the glyph: Brace or Facet Seal before Tempest, a burst after Bulwark's shield; Hush stops threads (if learned in Act 2); Prism Snare in the tell
- Difficulty
- Medium to hard
(Idea) Code needs from these encounters: several enemies per encounter (glint packs, colossus adds); enemy shields (the outlaws' Bulwark); enemies that flee (glyph-hunters); a delayed enemy attack (the sentinel's toll); phase changes at health thresholds; a timer aimed at scenery (The Pull).
[ ] 26. Threads have names. Settled for now by VEL-63, confirm. Story Bible § 7 says a thread is named by its parts ("Repel into Gale"). Game data already has Bulwark and Tempest, and the tabs name every thread: Headwind, Tempest, Bulwark, Thornshield, Wellspring, Blight, Thaw, Rebound, Deep Cut and the First Pair. Recommendation: one-word names in data and the Spell Book (Repel into Gale is
headwind, flagcomposite.known.headwind), with the parts shown underneath. Update § 7 to match. Sources:story-bible.md § 7 Composites;walkthrough-act-2.md Q5;spell-roadmap.md Composites: named threads.From Walkthrough: Act 4 › Open questions for Ray, all tabs › Spells and casting
Game data in
Assets/StreamingAssets/Datawins over the Codex. That is why threads have names (Bulwark and Tempest are named composites in data).From Walkthrough: Act 4 › Continuity notes › How conflicts were settled
Data: Assets/StreamingAssets/Data/Composites/bulwark.json