packages feed

swarm-0.7.0.0: data/scenarios/Testing/1341-command-count.yaml

version: 1
name: Count commands
creative: true
description: |
  Count commands and demonstrate various "duty cycles"
  with system robots. The four robots should have duty
  cycles of 100%, 50%, 33%, and 25% based on the number
  of ticks that they `wait`.
objectives:
  - goal:
      - |
        `grab` the "tree".
    condition: |
      as base {has "tree"}
solution: |
  move;
  move;
  wait 10;
  x <- harvest;
  if (x == "flower") {
    turn right;
    move;
    grab;
  } {
    pure "";
  };
robots:
  - name: base
    dir: east
    devices:
      - treads
      - grabber
      - harvester
      - logger
      - comparator
      - hourglass
      - branch predictor
  - name: idler1
    dir: east
    system: true
    devices:
      - dictionary
      - strange loop
      - hourglass
    program: |
      def go =
          wait 1;
          go;
          end;
      go;
  - name: idler2
    dir: east
    system: true
    devices:
      - dictionary
      - strange loop
      - hourglass
    program: |
      def go =
          wait 2;
          go;
          end;
      go;
  - name: idler3
    dir: east
    system: true
    devices:
      - dictionary
      - strange loop
      - hourglass
    program: |
      def go =
          wait 3;
          go;
          end;
      go;
  - name: idler4
    dir: east
    system: true
    devices:
      - dictionary
      - strange loop
      - hourglass
    program: |
      def go =
          wait 4;
          go;
          end;
      go;
known: [flower, tree]
world:
  default: [blank]
  palette:
    '.': [grass]
    'f': [grass, flower]
    'T': [grass, tree]
    'B': [grass, null, base]
    '1': [grass, null, idler1]
    '2': [grass, null, idler2]
    '3': [grass, null, idler3]
    '4': [grass, null, idler4]
  upperleft: [-1, 1]
  map: |
    ........1
    .B.fff..2
    ...T....3
    ........4