A new version of Calypso is available for pre-release testing: version 0.9.01. We have now moved from "early beta" to "late beta"!
New Language Features
- Move by fixed distance: you can now add distance modifiers to the "DO move ahead" and "DO move backward" actions to move by a fixed distance, e.g., "DO move ahead 50 mm".
- Turn by fixed angle: you can how add angle modifiers to the "DO turn" action to turn by a fixed fraction of a circle, e.g., "DO turn left quarter" makes a 90 degree left turn. If the left/right direction is left off, the the choice is random.
- We now permit "it" on the left hand side of an indented rule to reference the binding of "it" in the parent rule. For example, the following code plays a sound if the cube closest to the robot is a red cube:
WHEN see cube DO
WHEN see it red DO play "beeprobo"
- Better control of action sequencing with the new "and then..." tile. Add an "and then..." tile to a "say", "play", or "express" action, and that rule will suspend and only complete when the action finishes. Rules indented beneath that rule will not run until the parent rule completes. Thus, the following sequence says "start", then drives forward by 50 mm, then says "stop", and then switches to page 2 when the robot finishes speaking.
WHEN DO say "start" and then...
WHEN DO move ahead 50 mm
WHEN DO say "stop" and then...
WHEN DO switch to page 2
Without the "and then..." tile the robot would say "start" and move forward at the same time, and after moving it would begin to say "stop" and switch to page 2 at the same time. Note that the "move ahead 50 mm" action always suspends, so it does not require (or accept) an "and then..." modifier.
- Rooms: you can now define named regions called "rooms" in the world map; see the Map Editor section below. The "WHEN visiting" predicate will be true if the robot is currently located within a room, and the "DO visit" action will navigate to a room.
User Interface Improvements
- Rule scrolling: when a page has more rules than can fit on the screen, you can now use the right stick or the mouse scroll wheel to scroll up and down.
- Adjustable font size: in the rule editor, the size of tile label and button help text is now adjustable. Go to Home > Settings > Font size to change it.
- World map improvements: the world map now shows more realistic cube and charger images using the actual markers on those objects.
- A new drag-and-drop Map Editor allows you to define world maps by specifying the initial locations of cubes and custom markers, and defining named rooms. (See the discussion of the "visit" and "visiting" tiles above.)
- You can also use the map editor to set initial colors of the light cubes. Right click on a light cube in the map to set its color.
- Maps can be used both in simulator mode and with the real robot.
- Enter the map editor by pressing the D-Pad down button or pressing Control-downarrow on the keyboard (or fn-Downarrow on the Mac).
- Maps can be exported and imported as .calypsomap files.
- A future version of the map editor will add walls with doorways, allowing you to define the floor plan of a house with named rooms.