description: "Standard location deck." # This field is ignored, but it's a useful place to put some action definitions # we can reference later. _action_definitions: # No-colour actions. - &SET-BITS-DEFAULT action_class: 'LoseHealthOrMSBAndSetBits' required_bits: [] - &GAIN-HEALTH-DEFAULT action_class: 'GainHealthAndClearBitsOrMSB' required_bits: [] - &TOGGLE-BITS-DEFAULT action_class: 'ToggleBits' required_bits: [] - &TOGGLE-BITS-HARM-DEFAULT action_class: 'ToggleBitsAndHarm' required_bits: [] - &BAD-DEFAULT action_class: 'LoseHealthOrMSB' required_bits: [] - &SET-MSB-DEFAULT action_class: 'GainMSB' required_bits: [] - &KNIGHT-MSB-DEFAULT action_class: 'AllowChessMoveIfMSB' required_bits: [] data: {'chesspiece': KNIGHT} - &CASTLE-MSB-DEFAULT action_class: 'AllowChessMoveIfMSB' required_bits: [] data: {'chesspiece': CASTLE} - &BISHOP-MSB-DEFAULT action_class: 'AllowChessMoveIfMSB' required_bits: [] data: {'chesspiece': BISHOP} # One-colour actions. - &SET-BITS-R action_class: 'SetBits' required_bits: [RED] - &SET-BITS-G action_class: 'SetBits' required_bits: [GREEN] - &SET-BITS-B action_class: 'SetBits' required_bits: [BLUE] - &SHIFT-N action_class: 'ShiftLocations' required_bits: [BLUE] data: {'direction': NORTH} - &SHIFT-S action_class: 'ShiftLocations' required_bits: [BLUE] data: {'direction': SOUTH} - &SHIFT-E action_class: 'ShiftLocations' required_bits: [GREEN] data: {'direction': EAST} - &SHIFT-W action_class: 'ShiftLocations' required_bits: [GREEN] data: {'direction': WEST} - &ROT-CW action_class: 'RotateLocations' required_bits: [RED] data: {'rot_direction': CLOCKWISE} - &ROT-CCW action_class: 'RotateLocations' required_bits: [RED] data: {'rot_direction': ANTICLOCKWISE} # Two-colour actions. - &KNIGHT-MOVE action_class: 'AllowChessMove' required_bits: [RED, GREEN] data: {'chesspiece': KNIGHT} - &CASTLE-MOVE action_class: 'AllowChessMove' required_bits: [RED, BLUE] data: {'chesspiece': CASTLE} - &BISHOP-MOVE action_class: 'AllowChessMove' required_bits: [GREEN, BLUE] data: {'chesspiece': BISHOP} - &HEAL-RG action_class: 'GainHealth' required_bits: [RED, GREEN] - &HEAL-RB action_class: 'GainHealth' required_bits: [RED, BLUE] - &BITSHIFT-L action_class: 'ShiftBits' required_bits: [RED, BLUE] data: { 'direction': 'left', 'shift': 1, } - &BITSHIFT-R action_class: 'ShiftBits' required_bits: [GREEN, BLUE] data: { 'direction': 'right', 'shift': 1, } # Three-colour actions. - &ACQUIRE-WIN-TOKEN action_class: 'AcquireWinToken' required_bits: [RED, GREEN, BLUE] # Three-colour actions. - &ACQUIRE-WIN-TOKEN-AND-LOSE-HEALTH action_class: 'AcquireWinTokenAndLoseHealth' required_bits: [RED, GREEN, BLUE] # This field is ignored, but it's a useful place to put some card definitions # we can reference later. _card_definitions: - &WIN-CARD-1 card_name: 'win1' max_number: 1 actions: - *BAD-DEFAULT - *ACQUIRE-WIN-TOKEN - &WIN-CARD-2 card_name: 'win2' max_number: 2 actions: - *BAD-DEFAULT - *ACQUIRE-WIN-TOKEN-AND-LOSE-HEALTH - &WIN-CARD-3 card_name: 'win3' max_number: 1 actions: - *SET-BITS-DEFAULT - *ACQUIRE-WIN-TOKEN - &KNIGHT-AND-SET card_name: 'knight_set' actions: - *SET-MSB-DEFAULT - *SET-BITS-B - *KNIGHT-MOVE - &CASTLE-AND-SET card_name: 'castle_set' actions: - *SET-MSB-DEFAULT - *SET-BITS-G - *CASTLE-MOVE - &BISHOP-AND-SET card_name: 'bishop_set' actions: - *SET-MSB-DEFAULT - *SET-BITS-R - *BISHOP-MOVE - &BISHOP-SET-KNIGHT card_name: 'bishop_set_knight' actions: - *BISHOP-MSB-DEFAULT - *SET-BITS-B - *KNIGHT-MOVE - &KNIGHT-SET-CASTLE card_name: 'knight_set_castle' actions: - *KNIGHT-MSB-DEFAULT - *SET-BITS-G - *CASTLE-MOVE - &CASTLE-SET-BISHOP card_name: 'castle_set_bishop' actions: - *CASTLE-MSB-DEFAULT - *SET-BITS-R - *BISHOP-MOVE - &TOGGLE-RG-R card_name: 'toggle-rg-r' bits: [RED, GREEN] # Colour-blind robot! actions: - *GAIN-HEALTH-DEFAULT - action_class: 'ToggleBits' required_bits: [RED] - action_class: 'SetBits' required_bits: [GREEN, BLUE] - &TOGGLE-RG-G card_name: 'toggle-rg-g' bits: [RED, GREEN] # Colour-blind robot! actions: - *GAIN-HEALTH-DEFAULT - action_class: 'ToggleBits' required_bits: [GREEN] - action_class: 'SetBits' required_bits: [RED, BLUE] - &SHIFT-N-AND-HEAL card_name: 'shift-n-heal' actions: - *TOGGLE-BITS-DEFAULT - *SHIFT-N - *HEAL-RG - &SHIFT-S-AND-HEAL card_name: 'shift-s-heal' actions: - *TOGGLE-BITS-DEFAULT - *SHIFT-S - *HEAL-RG - &SHIFT-E-AND-HEAL card_name: 'shift-e-heal' actions: - *TOGGLE-BITS-DEFAULT - *SHIFT-E - *HEAL-RB - &SHIFT-W-AND-HEAL card_name: 'shift-w-heal' actions: - *TOGGLE-BITS-DEFAULT - *SHIFT-W - *HEAL-RB - &SHIFT-N-AND-HARM card_name: 'shift-n-harm' actions: - *TOGGLE-BITS-HARM-DEFAULT - *SHIFT-N - *HEAL-RG - &SHIFT-S-AND-HARM card_name: 'shift-s-harm' actions: - *TOGGLE-BITS-HARM-DEFAULT - *SHIFT-S - *HEAL-RG - &SHIFT-E-AND-HARM card_name: 'shift-e-harm' actions: - *TOGGLE-BITS-HARM-DEFAULT - *SHIFT-E - *HEAL-RB - &SHIFT-W-AND-HARM card_name: 'shift-w-harm' actions: - *TOGGLE-BITS-HARM-DEFAULT - *SHIFT-W - *HEAL-RB - &ROT-CW-AND-SET card_name: 'rot-cw-set' actions: - *TOGGLE-BITS-DEFAULT - *ROT-CW - *SET-BITS-B - &ROT-CCW-AND-SET card_name: 'rot-ccw-set' actions: - *TOGGLE-BITS-DEFAULT - *ROT-CCW - *SET-BITS-G - &SHIFT-E-BITSHIFT card_name: 'shift-e-bitshift' actions: - *SHIFT-E - *BITSHIFT-R - &SHIFT-W-BITSHIFT card_name: 'shift-w-bitshift' actions: - *SHIFT-W - *BITSHIFT-L - &MEAN-CARD card_name: 'mean-card' actions: - *BAD-DEFAULT - &REALLY-MEAN-CARD card_name: 'mean-card' actions: - action_class: 'ClearBitsAndHealth' required_bits: [] - action_class: 'LoseHealthOrMSB' required_bits: [RED] cards: - *WIN-CARD-1 - *WIN-CARD-2 - *WIN-CARD-3 - *KNIGHT-AND-SET - *CASTLE-AND-SET - *BISHOP-AND-SET - *BISHOP-SET-KNIGHT - *KNIGHT-SET-CASTLE - *CASTLE-SET-BISHOP - *TOGGLE-RG-R - *TOGGLE-RG-G - *SHIFT-N-AND-HEAL - *SHIFT-S-AND-HEAL - *SHIFT-E-AND-HEAL - *SHIFT-W-AND-HEAL - *SHIFT-N-AND-HARM - *SHIFT-S-AND-HARM - *SHIFT-E-AND-HARM - *SHIFT-W-AND-HARM - *SHIFT-E-BITSHIFT - *SHIFT-W-BITSHIFT - *ROT-CW-AND-SET - *ROT-CCW-AND-SET - *MEAN-CARD - *REALLY-MEAN-CARD replacement_params: chance: 0.2 min: 4 max: 8