swarm-0.4: data/scenarios/Testing/201-require/201-require-device.yaml
version: 1
name: Require device
description: |
Require a device using the 'require' command.
https://github.com/swarm-game/swarm/issues/201
objectives:
- condition: |
try {
r <- robotNumbered 1;
p <- as r {whereami};
boatEquipped <- as r {equipped "boat"};
b1 <- as r {count "boat"};
b0 <- as base {count "boat"};
return (p == (2,0) && b0 == 0 && boatEquipped && b1 == 0);
} { return false }
solution: |
build {require "boat"; move; require "boat"; move}
robots:
- name: base
loc: [0,0]
dir: [1,0]
devices:
- 3D printer
- logger
inventory:
- [1, boat]
- [1, solar panel]
- [1, treads]
known: [water]
world:
palette:
'.': [grass]
'~': [dirt, water]
'┌': [stone, upper left corner]
'┐': [stone, upper right corner]
'└': [stone, lower left corner]
'┘': [stone, lower right corner]
'─': [stone, horizontal wall]
'│': [stone, vertical wall]
upperleft: [-1, 1]
map: |
┌───┐
│.~.│
└───┘