packages feed

swarm-0.7.0.0: data/scenarios/Testing/1575-structure-recognizer/2115-encroaching-upon-exterior-transparent-cells.yaml

version: 1
name: Structure recognition - exterior transparency
description: |
  Incursion of an entity of a foreign type
  upon a "transparent" cell within the bounding box
  of a recognizable structure shall not prevent
  the structure from being recognized.

  If the incurring entity is the *same* type as
  a participating entity in that structure, however,
  it will prevent recognition.
creative: false
objectives:
  - teaser: Recognize structure
    goal:
      - |
        `chevron`{=structure} structure should be recognized upon completion,
        even with an extraneous entity within its bounds.
    condition: |
      def isRight = \x. case x (\_. false) (\_. true); end;

      foundBoxes <- structures "chevron";
      pure $ isRight foundBoxes;
robots:
  - name: base
    dir: east
    devices:
      - ADT calculator
      - blueprint
      - fast grabber
      - logger
      - treads
    inventory:
      - [1, board]
  - name: judge
    dir: east
    system: true
    display:
      invisible: true
solution: |
  move; move; move;
  swap "board";
structures:
  - name: chevron
    recognize: [north]
    structure:
      palette:
        'b': [stone, board]
      mask: '.'
      map: |
        .b
        bb
  - name: stripe
    recognize: [north]
    structure:
      palette:
        't': [grass, tree]
        'b': [grass, board]
      map: |
        btb
known: [board, mountain, tree]
world:
  dsl: |
    {blank}
  palette:
    '.': [grass, erase]
    'B': [grass, erase, base]
    'j': [grass, erase, judge]
    't': [grass, tree]
    'b': [grass, board]
  upperleft: [-7, 3]
  map: |
    j.....
    ......
    .B.ttt
    ...bb.
    ......