Sanctum | Strategy, Sorcery, Subterfuge
download
rules and faq

create account
edit account

buy cards
trade cards

news

top players
cabals
forums
maillist
links

world

Sanctum | Strategy, Sorcery, SubterfugeSanctum | Strategy, Sorcery, Subterfuge
 

 

 

The Movement Pipeline


The Two-Pass Movement Algorithm

The Movement Pipeline

Questions

How do movement-changing spell effects interact with each other?

Moonwalks

Why is it called a moonwalk?

Why do moonwalks happen?

Show me an easy diagram of a moonwalk!

How can I create a moonwalk in general?

The Flying Leap Deck


The Two-Pass Movement Algorithm. Sanctum uses a two-pass movement algorithm.

  1. Overstacking. All groups “move” without regard to the normal stacking limit of 1 group per square. Each square can have any number of groups, friendly or enemy. This pass is not animated, so you can't see it.
  2. Unstacking (overstack resolution). All groups in a square “vote” for exactly 1 winner. That group “wins” the square. All other groups join it, if they can, or bounce back, if they can't. Each group animates its result.

At the end of movement execution, the stacking limit is restored for all squares.


The Movement Pipeline. This pipeline is applied to all groups, in the following order:

  • All of the initiative player's player-controlled groups.
  • All of the initiative player's computer-controlled groups.
  • All of the non-initiative player's player-controlled groups.
  • All of the non-initiative player's computer-controlled groups.
  • All of the neutral player's groups. (These are all computer-controlled.)

#

Sub-Phase

Effect

i

Checking

For each group with a move order, check all of the following.

  1. If it can “move”. Some spells prevent moving.
  2. If it can “exit” its current square.
  3. If it can “enter” its destination square.
  4. The destination square must be empty, or have a friendly group (of any type).

If any of these fail, the group bounces (stands still).

ii

Overstacking

All groups “move” into their destination squares, ignoring the normal stacking limit. This is not animated.

iii

Voting

For each square, all groups in the square “vote” for exactly 1 winner. (If there is only 1 group in the square, it “wins” the square trivially.) Ties are broken in the following order:

  1. Stationary group. A group that started the turn in this square, and didn't move, beats everybody.
  2. Initiative. The groups belonging to the player with higher initiative wins. (So the neutral player's groups beat all of the non-initiative player's groups.)
  3. Largest group. The group with the most minions wins.
  4. First group to move. The group whose movement order was issued first wins.

iv

Unstacking

For every group in a square except the winning group:

  • If this group is hostile to the winning group, it bounces back to its starting square. This is animated.
  • If this group is friendly to the winning group, but cannot join it, it also bounces back. This is animated.

A friendly group that could join the winning group now does the following. (If the winning group isn't stationary, then it also does the following.)

  • All “on exit” effects from its starting square.
  • Animates walking in.
  • All “on move” effects.
  • All “on enter” effects for this square.

If the group survives these effects, it joins the winning group.

v

Moonwalking

It is possible for a group G to (ii) “move” away during overstacking, (iii) lose its starting square to another group H, and then (iv) bounce back to its starting square. This is resolved as another overstack between G and H in G's starting square.

If group G cannot join with H, and must “bounce back” again, then G moonwalks instead. G moves to:

  • an empty, unoccupied square
  • that is closest by straight-line distance
  • that group G can legally “enter”

If no such square exists on the board, group G is removed from the game!

Otherwise, group G moves from its starting square directly to the moonwalk landing square, ignoring all intervening squares. G still suffers all “on exit” effects for its starting square, “on move” effects, and “on enter” effects for the moonwalk landing square.


Questions

How do movement-changing spell effects interact with each other? The key concept is: Movement orders can be overwritten, but this happens in a specific sequence. The last movement order assigned to a group “wins”, and that's how the group will move.

#

Phase

Effect

2

Player Control

The player assigns an order to a player-controlled group.

3

Spell Execution

Targeted spells overwrite movement orders immediately.

  • “moves in a random legal direction”: Amok, Disorient.
  • “movement orders are cancelled”: Binding Cube, Complacency, Fear, Lienna's Steed, Possession, Sandstorm, Sentinel.

4

Movement

Any “before movement” effects overwrite movement orders now.

  • “attracts”: Mirage, Siren Song.
  • “moves in a random legal direction”: Fingle, Zurzavar.

Finally, each computer-controlled group calls its AI, which overwrites its movement order.


Moonwalks

Why is it called a moonwalk? The group doesn't change its facing prior to moonwalking, so it may appear to move sideways on the board, or even backward.

Why do moonwalks happen? Step (iii) of the Movement Pipeline is a deliberately simplified explanation. In reality, the “voting” is done between only two groups at a time. A square with N groups actually votes -  1 times. These votes are interleaved with all the other squares, in parallel. Thus, if square A has 4 groups and square B has 1 group, then square B will finish its “voting” before 2 of the groups in square A have even been considered!

Show me an easy diagram of a moonwalk! Here's a simple diagram for one specific moonwalk solution. Group A will moonwalk.

B1

2.A4<

3.C5^

1.D5^

  • First, order group D with 5 recruits “upward” (into A's square).
  • Second, order group A with 4 recruits “leftward” (into B's square).
  • Third, order group C with 5 recruits “upward” (into B's square).
  • Have group B, with 1 recruit, stand still.

How can I create a moonwalk in general? Here, we give a more verbose description for the general solution. First, some nomenclature:

  • Upper-case letters A, B, C, D are groups.
  • Lower-case letters a, b, c, d are squares.
  • + denotes two groups joining.
  • > compares two groups' sizes.

To force group A in square a to moonwalk, do this:

  • Have group B in b next to a.
  • Have group C in c next to b.
  • Have group D in d next to a.

Requirements:

  1. A+B looks like a legal joining, and C+B looks legal. (In the above example, A+B = 5, and C+B = 6.)
    This is what allows you to order both A and C to move into b.
  2. C is “faster than” A. Simplest method: C > A. (In the above example, C = 5 and A = 4.)
    This creates the race condition that puts A into “limbo”, giving D time to sneak in behind it and steal its square away.
  3. A+B+C isn't legal.
    This is what makes A bounce back. (In the above example, A+B+C = 10, which violates the maximum group size.)
  4. A+D isn't legal.
    Simplest method: A+D > 8. Or, Ostracize D. This is what forces A to moonwalk. (In the above example, A+D = 9.)

Assign the following movement orders, in exactly this sequence:

  1. D to a.
  2. A to b.
  3. C to b.
  4. (Have B stand still in b.)

Here's how it will execute.

  • (ii) Overstack.
    • D can move to a.
    • A can move to b, and A+B looks legal.
    • C can move to b, and C+B looks legal.
    • Now D is alone in a, and A, B, C are overstacked in b.
  • (iii) Voting.
    • D is alone in a. D “wins”, and now owns a. (This is why you issue D's movement order before A's.)
    • 3 groups vie for square b. Unstacking processes 2 groups at a time. (This is why you use 3 groups.)
    • A group that didn't move is automatically fastest. That's B.
    • C is faster than A, by construction in (j). So C is the second-fastest group.
  • (iv) Unstacking.
    • B and C are chosen, in that order. B+C looks legal, by (i). So they join.
    • Now BC + A is checked. It is not a legal joining, by (k).
    • A bounces back to a.
  • (v) Moonwalking.
    • D already owns a, from step (iii).
    • D+A is not a legal joining, by (l).
    • A moonwalks.

The Flying Leap Deck. This deck demonstrates the spectacular effect of a controlled moonwalk. It is not recommended that you try this deck in ranked play, due to the sheer difficulty of its winning combination.

00

01

02

03

04

05

06

07

08

09

10

11

ne

0

nw

*

se

1

sw

2

f

3

4

5

6

7

8

B
A<

9

C^ D^

10

11

  1. Play in Badlands (so that there are no forest squares).
  2. Cast a forest at f, diagonally adjacent to enemy Sanctum.
  3. Cast two forests at A and B.
  4. Terrain-Bind group A (into forest).
  5. If your opponent inconveniently creates any other forest squares, you'll have to change their terrain to something else.
  6. Force group A to moonwalk, as described above.

Group A must moonwalk. As a corollary, we've already determined that A can't legally enter either squares A or B (which is why it's moonwalking). Because of the Terrain-Bind, the only other square on the board that group A can legally enter is f. Hence, A teleports directly to f.

  1. Somehow ensure that your opponent has no novices left in her Sanctum.
  2. Cast Lienna's Steed for the win. (Alternatively, if you make group A big enough, then you can just fight your way in.)

v2.10.00 Last updated 2005/08/05

 

 

 

Copyright © 1997 - 2007, Nioga, LLC. All Rights Resrved.
Usage Agreement | Privacy Policy | FAQ | Contact Nioga | Mailling Lists | Forums