Complete Command List (Printable)
Symbols [Observer, Turtle]
number1
+, -, *, / number2
Basic math functions. Be sure to put a space between the numbers and the symbol.
number1
^ number2
Power function. Number1 ^ Number2 is equal to Number1 to the power of Number2
Symbols [Observer, Turtle]
number1
=, !=, <, >, <=, >= number2
Equivalency operators. Again, a space is needed between the numbers and the symbol.
; [Observer, Turtle]
;
is the comment character. Placing ;
either on a line by itself or at the end of a line in a procedure causes StarLogo to ignore everything it see until it reaches the next carriage return.
abs number
[Observer, Turtle]
Reports the absolute value of number.
acos
number
[Observer, Turtle]
Trigonometric function. Returns
the arccosine of the specified number. All angles returned are in degrees.
age [Turtle]
Returns the value of the caller's age
variable.
age-at xcor ycor
[Observer, Turtle]
Returns the value of the variable age
of the turtles at xcor
ycor
relative to the caller.
age-of turtle id number
[Observer, Turtle]
Returns the value of the variable age
of the turtle with who
number turtle id number
.
age-towards angle distance
[Observer, Turtle]
Returns a list of all the turtles and the values of their age
variables which are at the patch distance
away at angle angle
.
condition1
and condition2
[Observer,
Turtle]
Reports true if condition1
and condition2
report
true.
alive? [Observer,
Turtle]
Returns a boolean. If the
turtle is alive, it returns true. If the turtle is not alive it returns false.
alive?-of number
[Observer, Turtle]
Returns a boolean. If the
turtle with the given who number is alive, it returns true. If the turtle with
the given who number is not alive it returns false.
asin
number
[Observer, Turtle]
Trigonometric function. Returns
the arcsine of the specifiednumber
. All angles returned are in degrees.
ask-frogs ilist
[Observer]
Asks all turtles of breed frogs
to run ilist
.
The observer will wait for all of the turtles to finish before continuing.
ask-list-of-turtles list-of-turtle-ids ilist
[Observer,
Turtle]
Turtles whose who
numbers (ID numbers) are in list-of-turtle-ids
run ilist
. The caller of this command waits for it to finish before
continuing. If some invalid who
numbers make up list-of-turtle-ids
,
they are ignored.
ask-patches ilist
[Observer]
This observer command asks all of the patches to run the ilist
.
The observer will wait for the patches to finish before moving on.
ask-patch-at xcor ycor ilist
[Observer, Turtle]
This command asks the patch which is xcor
units in the x direction
and ycor
units in the y direction away from the caller to run the
ilist
. The caller of this command
will wait for the patch to finish before moving on. The observer is considered
to be located at 0 0.
ask-turtle number ilist
[Observer]
Asks turtle with ID number number
to perform ilist
.
The observer will wait for all of the turtles to finish before continuing.
ask-turtles ilist
[Observer]
Asks all turtles to run ilist
.
The observer will wait for all of the turtles to finish before continuing.
atan numerator denominator
[Observer, Turtle]
Trigonometry function. Returns the arctangent of the specified angle numerator
/denominator
.
All angles are in degrees
average-of-list list
[Observer, Turtle]
Returns the numerical average of the given list.
average-of-patches [list of commands]
[Observer, Turtle]
Returns the numerical average of the [list of commands] when evaluated accross all the patches.
average-of-turtles [list of commands]
[Observer, Turtle]
Returns the numerical average of the [list of commands] when evaluated accross all the turtles.
bf (butfirst) dlist
[Observer, Turtle]
Returns the value of dlist
with the first item removed.
condition1
bitand condition2
[Observer,
Turtle]
Reports the value of bitwise and on the inputs.
bitnot condition1
[Observer, Turtle]
Reports the bitwise negation of its input.
condition1
bitor condition2
[Observer,
Turtle]
Reports the value of bitwise or on the inputs.
input1
bitxor input2
[Observer, Turtle]
Reports the value of bitwise xor on the inputs.
bk, back number
[Turtle]
Turtles move number
steps backward
bl (butlast) dlist
[Observer, Turtle]
Returns the value of dlist
with the last item removed.
black color
[Observer, Turtle]
black reports the number of its particular hue in the color table.
Its reference number is 0.
blue color
[Observer, Turtle]
blue reports the number of its particular hue in the color table.
Its reference number is 105.
breed [Turtle]
Returns the turtle's breed.
breed-at xcor ycor
[Observer, Turtle]
Reports the breed of the turtle xcor
units in the x direction
and ycor
units in the y direction away from the caller.
breed-of number
[Observer, Turtle]
Reports the breed of the turtle with ID Number number
.
breed-towards angle distance
[Observer, Turtle]
Reports the breed of the turtle distance
away at an angle of
angle
.
brown color
[Observer, Turtle]
brown reports the number of its particular hue in the color table.
Its reference number is 35.
ca, clearall [Observer]
Kills all turtles, sets all patches to black, and resets all patch variables.
case variable
[anything1 ilist1
anything2
ilist2]
[Observer, Turtle]
Checks if the first argument variable
is equal to any of the
anythings
in the list. If it is equal, the corresponding ilist
is executed and control skips to the end of the case
statement.
If nothing matches, no ilists
are executed and control skips to
the end of the case
statement.
Sample usage:
case temperature
[
"cold" [show "boy, it's cold!"]
"warm" [show "mmmm. nice."]
"hot" ["wow, it's hot!"]
]
cc, clear-command-center [Observer, Turtle]
Clears the command center.
cct,
create-custom-turtles breed number
[Observer]
Creates number
turtles of type breed.
NOTE: Most users will use create-foxes directly rather than using create-custom-turtles.
cct-and-do, create-custom-turtles-and-do breed number [list of commands]
[Observer]
Creates number
turtles of
type breed and tells them to do [list of
commands]
.
cg, cleargraphics [Observer]
Sets all patches to black
clearinfo, clear-info [Observer]
Clears the Information Window.
clearplot, clear-plot [Observer, Turtle]
Clears everything drawn by all plot pens, and resets all pens to (0, 0).
clearplots
[Observer, Turtle]
Resets the title of all of the graphs to "Plot Window". Resets the axis labels to each span 0 to 1000. Clears everything drawn by all plot pens, and resets all pens to (0, 0) and their original colors.
co, clear-output [Observer]
Clears all the text in the output window.
color [Turtle]
Returns the color of the turtle.
color-at xcor ycor
[Observer, Turtle]
Reports the color of the turtle xcor
units in the x direction
and ycor
units in the y direction away from the caller .
color-of number
[Observer, Turtle]
Reports the color of the turtle with ID Number number
.
color-towards angle distance
[Observer, Turtle]
Reports the color of the turtle distance
away at an angle of angle
.
cos number
[Observer, Turtle]
Trigonometry function. Returns the cosine of the specified angle. All angles are in degrees.
count-color color
[Observer, Turtle]
Returns the number of turtles that are the color color
.
count-frogs [Observer, Turtle]
Returns the number of turtles whose breed
is frogs.
count-frogs-at xcor ycor
[Observer, Turtle]
Returns the number of turtles whose breed
is frogs which are xcor
units in the x direction and ycor
units in the y direction away from the caller .
count-frogs-here [Turtle]
Returns the number of turtles whose breed
is frogs which are on the current patch.
count-frogs-towards angle distance
[Observer, Turtle]
Returns the number of turtles whose breed
is frogs which are located at the patch distance
away at angle
angle
.
count-frogs-with [ilist]
[Observer, Turtle]
Returns the number of turtles whose breed
is frogs and satisfy the conditions (must return a boolean of true or false)
specified by the ilist
.
Sample usage:
count-frogs-with [color = blue
]
count-patches-with ilist
[Observer, Turtle]
Returns the number of patches whose ilist
is true.
Sample usage:
show count-patches-with [(distance 0 0) < 5]
This gives the number of patches inside a circle of radius 5 centered at the
origin.
count-pc color
[Observer, Turtle]
Returns the number of patches that are the color color
.
count-turtles [Observer, Turtle]
Returns the number of turtles.
count-turtles-at xcor ycor
[Observer, Turtle]
Returns the number of turtles xcor
units in the x direction and
ycor
units in the y direction away from the caller .
count-turtles-here [Turtle]
Returns the number of turtles sitting on the caller's patch
count-turtles-towards angle distance
[Observer, Turtle]
Returns the number of turtles distance
away at angle angle
.
count-turtles-with [ilist]
[Observer, Turtle]
Returns the number of turtles whose ilist
is true.
Sample usage: show count-turtles-with [(distance 0 0) < 5]
This gives thenumber of turtles inside a circle of radius 5 centered at the
origin.
cp, clearpatches [Observer]
Sets all patches to black and resets all patch variables.
create-and-do, create-turtles-and do number ilist
[Observer]
Creates number
turtles and tells them to do ilist
.
create-frogs number
[Observer]
Creates number
of turtles and assigns frog as their breed
.
create-frogs-and-do number list to run
[Observer]
Creates number
of turtles and assigns frogs as their breed
.
The turtles then execute list to run
.
crt, create-turtles number
[Observer]
Creates number
turtles.
ct, clear-turtles [Observer]
Clears (kills) all of the turtles.
cyan color
[Observer, Turtle]
cyan reports the number of its particular hue in the color table.
Its reference number is 85.
die [Turtle]
Turtles die, meaning that they stop running all code and disappear forever.
diffuse variable percentage
[Observer]
Makes each patch give 1/8 of percentage
of variable
to each neighboring patch.
Note:percentage should be expressed as a number between 0 and 1.
diffuse4 variable percentage
[Observer]
Makes each patch give 1/4 of percentage
of variable
to each neighboring patch to the N, S, E and W.
Note:percentage should be expressed as a number between 0 and 1.
distance xcor ycor
[Observer, Turtle]
Returns the distance from the caller to (xcor,ycor
).
distance-nowrap xcor ycor
[Observer, Turtle]
Returns the distance from the caller to xcor ycor
without wrapping.
number1
div number2
[Observer, Turtle]
Returns the integer part of the answer to number1 / number2
.
dlist [Observer, Turtle]
A list of data elements. This is not a command to type into StarLogo, rather,
it is a convention used in this documentation. See the list
command.
dx [Turtle]
Returns the x-coordinate one step forward from the turtle's current position.
dy [Turtle]
Returns the y-coordinate one step forward from the turtle's current position.
e [Observer, Turtle]
Returns the value of e.
empty? dlist
[Observer, Turtle]
Returns true if dlist
is empty.
end [Observer, Turtle]
This command must be placed at the end of every procedure.
every number list to run
[Observer, Turtle]
every
is just like loop
,
in that it runs its list to run
forever, but it waits number
seconds between each iteration.
exp number
[Observer, Turtle]
e raised to the power of number
.
fd, forward number
[Turtle]
Turtles move number
steps forward.
first dlist
[Observer, Turtle]
Returns the first item of dlist
.
food [Observer, Turtle]
Returns the value of the patch variable food
.
NOTE: This is a patch command. It must be called from within an ask-patches
statement.
food-at xcor ycor
[Observer, Turtle]
Returns the value of the variable food
of the patch at xcor
ycor
relative to the caller.
food-towards angle distance
[Observer, Turtle]
Returns the value of thefood
variable of the patch distance
away at angle angle
.
fput item dlist
[Observer, Turtle]
Returns the value of dlist
with item
as its first
element.
get-random-seed [Observer, Turtle]
Returns the current random seed.
globals [variable-list]
[Observer]
Creates global variables. The variable-list
contains one or more
names.
grab number ilist
[Observer, Turtle]
Caller instructs turtles with who
number(s) number(s)
to execute ilist
. The who
number of the turtles being
grab
bed are stored in partner
, if there is one, or
partners
, if there are many. A turtle cannot grab
itself.
Example: grab one-of-turtles-here [setc red setc-of partner blue]
This turns the caller red and the grab
bed turtle blue. If there
are no other turtles on the caller's patch, the ilist
does not
get executed and no turtles change color.
gray, grey color
[Observer, Turtle]
gray reports the number of its particular hue in the color table.
Its reference number is 5.
green color
[Observer, Turtle]
green reports the number of its particular hue in the color table.
Its reference number is 55.
hatch ilist
[Turtle]
Turtles make exact copy of themselves, tell them to run ilist
.
Note: Turtles will not run forever buttons while running ilist
.
heading [Turtle]
Returns the direction that the turtle is facing.
heading-at xcor ycor
[Observer, Turtle]
Reports the heading of the turtle xcor
units in the x direction
and ycor
units in the y direction away from the caller.
heading-of number
[Observer, Turtle]
Reports the heading of the turtle with ID Number number
.
heading-towards angle distance
[Observer, Turtle]
Reports the heading of the turtle distance
away at an angle of
angle
.
home [Turtle]
Turtles go to coordinates (0,0). This is the same as using setxy 0 0.
ht, hideturtle [Turtle]
Turtles make themselves invisible.
if condition ilist
[Observer, Turtle]
Do ilist
if condition
reports true.
if breed = frogs [Turtle]
Returns true
if the breed
of the turtle invoking this command is frogs.
ifelse condition ilist1 ilist2
[Observer, Turtle]
Do ilist1
if condition
reports true, otherwise do ilist2
.
ignore whatever
[Observer, Turtle]
Ignores the statement immediately following it.
ilist [Observer, Turtle]
An instruction list: any list of valid instructions for whichever character
is going to be executing them. This is not a command to type into StarLogo,
rather, it is a convention used in this documentation.
Example: fd 2 rt 90 fd 6
is a valid ilist
for a turtle.
import-picture [Observer, Turtle]
Opens up a dialog box asking you to select a picture to import onto the Graphics Canvas. You must have a current version of QuickTime installed on your computer in order for this command to work.
import-picture-name string
[Observer, Turtle]
Imports onto the Graphics Canvas the picture in the file specified by string
.
You must have a current version of QuickTime installed on your computer in order
for this command to work.
info-name [Observer]
Returns the current filename of the information window. Returns false if no filename has been set yet.
insert index list element
[Observer, Turtle]
Returns a modified [list of data] with element
inserted into the index
position.
inspect-turtle number
[Observer]
Brings up the turtle monitor of the turtle whose who number is number
.
int number
[Observer, Turtle]
Reports the largest integer less than or equal to number
.
item number list
[Observer, Turtle]
Returns the element of list
at the number
'th position.
jump number
[Turtle]
Turtles move number
steps in the time it takes to make one normal
step. For example, jump 15 and fd 1 both take the same amount of time to perform.
fd 15, however, would take 15 times as long as jump 15.
kill number
[Observer, Turtle]
Kills turtle with ID number number
.
last dlist
[Observer, Turtle]
Returns the last item of dlist
.
leap number
[Turtle]
Turtles jump number
steps only if no other turtle is currently
on the patch they will land on.
length dlist
[Observer, Turtle]
Returns the length of dlist
.
let variable value
[Observer, Turtle]
Declares variable
as a local variable and assigns value
to it. All variables must have names which begin with a colon. See the Variables
page for more information on local variables.
Example:
let [:myvar 6]
lime color
[Observer, Turtle]
lime reports the number of its particular hue in the color table.
Its reference number is 65.
list item1 item2
[Observer, Turtle]
Returns a new dlist with item1
as its first element, and item2
as its second.
list? thing
[Observer, Turtle]
Returns true if thing
is a list.
list-of-frogs [Observer, Turtle]
Returns a list of turtles of breed frogs
.
list-of-frogs-at xcor ycor
[Observer, Turtle]
Returns a list of turtles of breed frogs
xcor
units
in the x direction and ycor
units in the y direction away from
the caller.
list-of-frogs-here [Turtle]
Returns a list of turtles of breeds frogs
on the caller's patch.
list-of-frogs-towards angle distance
[Observer, Turtle]
Returns a list of turtles of breed frogs
at the patch distance
away at angle angle
.
list-of-frogs-with condition
[Observer, Turtle]
Returns a list of turtles of breed frogs
satisfying condition
.
list-of-turtles [Observer, Turtle]
Returns a list of turtles.
list-of-turtles-at xcor ycor
[Observer, Turtle]
Returns a list of turtles xcor
units in the x direction and ycor
units in the y direction away from the caller.
list-of-turtles-here [Turtle]
Returns a list of turtles on the caller's patch.
list-of-turtles-towards angle distance
[Observer,
Turtle]
Returns a list of turtles at the patch distance
away at angle
angle
.
list-of-turtles-with condition [Observer, Turtle]
Returns a list of turtles satisfying condition
.
ln number
[Observer, Turtle]
Natural logarithm of number
.
log number
base [Observer, Turtle]
Math function. Returns the log of number according to specified base.
loop ilist
[Observer, Turtle]
Do ilist
forever.
lput item dlist
[Observer, Turtle]
Returns the value of dlist
with item
as its last
element.
lt, left number
[Turtle]
Turtles turn left by number
degrees.
magenta color
[Observer, Turtle]
magenta reports the number of its particular hue in the color table.
Its reference number is 125.
max number1 number2
[Observer, Turtle]
Reports the larger value of the two numbers.
maxnum [Observer, Turtle]
Returns the largest number possible without going into positive infinity.
max-of-frogs-with pred-ilist ilist
[Observer, Turtle]
Reports the highest value of ilist
when run over the turtles
of breed frogs
that satisfy pred-ilist
. If there are
no frogs
in which pred-ilist
is true, returns minnum
,
the smallest number possible without going into negative infinity. Note: This
command can also be executed by patches, for example within an ask-patches
statement.
max-of-list list [Observer,
Turtle]
Returns the greatest value in the given list.
max-of-patches-with pred-ilist ilist
[Observer, Turtle]
Reports the highest value of ilist
when run over the turtles
that statisfy pred-ilist
. If there are no patches in which pred-ilist
is true, reports minnum
, the smallest number possible without going
into negative infinity. Note: This command can also be executed by patches,
for example within an ask-patches
statement.
max-of-turtles-with pred-ilist ilist
[Observer, Turtle]
Reports the highest value of ilist
when run over the turtles
that satisfy pred-ilist
. If there are no turtles in which pred-ilist
is true, returns minnum
, the smallest number possible without going
into negative infinity. Note: This command can also be executed by patches,
for example within an ask-patches
statement.
median-of-list list
[Observer, Turtle]
Returns the median of the given list.
median-of-patches [list of commands]
[Observer, Turtle]
Returns the median of the [list of commands] when [list of
commands] is evaluated by all patches.
median-of-turtles [list of commands]
[Observer, Turtle]
Returns the median [list of commands]
when [list of commands]is evaluated for all turtles
.
member? item dlist
[Observer, Turtle]
Returns true if item
is a member of dlist
.
min number1 number2
[Observer, Turtle]
Reports the smaller value of the two numbers.
minnum [Observer, Turtle]
Returns the smallest number possible without going into negative infinity.
min-of-frogs-with pred-ilist ilist
[Observer, Turtle]
Reports the lowest value of ilist
when run over the turtles of
breed frogs
that satisfy pred-ilist
. If there are
no frogs
in which pred-ilist
is true, returns maxnum
,
the largest number possible without going into positive infinity. Note: This
command can also be executed by patches, for example within an ask-patches
statement.
min-of-list list [Observer,
Turtle]
Returns the least value in the given list.
min-of-patches-with pred-ilist ilist
[Observer, Turtle]
Reports the lowest value of ilist
when run over the turtles that
statisfy pred-ilist
. If there are no patches in which pred-ilist
is true, reports maxnum
, the largest number possible without going
into positive infinity. Note: This command can also be executed by patches,
for example within an ask-patches
statement.
min-of-turtles-with pred-ilist ilist
[Observer, Turtle]
Reports the lowest value of ilist
when run over the turtles that
satisfy pred-ilist
. If there are no turtles in which pred-ilist
is true, returns maxnum
, the largest number possible without going
into positive infinity. Note: This command can also be executed by patches,
for example within an ask-patches
statement.
number1
mod number2
[Observer, Turtle]
Modulo function. Number1 mod Number2 is equal to the remainder when Number1 is divided by Number2. The answer to mod is always positive.
mode-of-list list
[Observer, Turtle]
Returns the mode of the given list.
mode-of-patches [list of commands]
[Observer, Turtle]
Returns the mode of the given [list of commands] when evaluated accross all the patches.
mode-of-turtles [list of commands]
[Observer, Turtle]
Returns the mode of the given [list of commands] when run over all the turtles.
mouse-down? [Observer,
Turtle]
Returns a boolean. If the mouse button is clicked, it returns true. If the mouse buttons is not clicked, it returns false.
mouse-xcor [Observer, Turtle]
Returns the value of the xcor where the mouse was most recently.
Example: run this code in a forever button:
seth towards mouse-xcor mouse-ycor fd .5
Turtles will follow the mouse (pointer tool) around the graphics canvas.
mouse-ycor [Observer, Turtle]
Returns the value of the ycor where the mouse was most recently.
Example: run this code in a forever button:
seth towards mouse-xcor mouse-ycor fd .5
Turtles will follow the mouse (pointer tool) around the graphics canvas.
myself [Turtle]
During a count-turtles-with
command, myself
reports
the who number of the turtle which called it.
Example: count-turtles-with
[(distance xcor-of myself ycor-of myself) < 5]
counts all turtles
within a radius of 5 units of the caller.
nobody [Observer, Turtle]
An alias for -1
not condition1
[Observer, Turtle]
Reports true if condition1
reports false.
nsum variable1 variable2
[Observer]
For each patch, takes the sum of variable1
from all neighboring
patches and places it in variable2
nsum4 variable1 variable2
[Observer]
For each patch, takes the sum of variable1
from the non-diagonal
(N,E,S,W) neighboring patches and places it in variable2
number? thing
[Observer, Turtle]
Returns true if thing
is a number.
one-of-frogs [Observer, Turtle]
Returns a random turtle of breed frogs
.
one-of-frogs-at xcor ycor
[Observer, Turtle]
Returns a random turtle of breed frogs
xcor
units
in the x direction and ycor
units in the y direction away from
the caller.
one-of-frogs-here [Turtle]
Returns a random turtle of breed frogs
on the caller's patch
other than the caller.
one-of-frogs-towards angle distance
[Observer, Turtle]
Returns a random turtle of breed frogs
at the patch distance
away at angle angle
.
one-of-turtles [Observer, Turtle]
Returns a random turtle.
one-of-turtles-at xcor ycor
[Observer, Turtle]
Returns a random turtle xcor
units in the x direction and ycor
units in the y direction away from the caller.
one-of-turtles-here [Turtle]
Returns a random turtle on the caller's patch other than the caller.
one-of-turtles-towards angle distance
[Observer, Turtle]
Returns a random turtle at the patch distance
away at angle angle
.
condition1
or condition2
[Observer, Turtle]
Reports true if either condition1
or condition2
reports true.
one-of-turtles-with [condition] [list of commands]
[Observer,
Turtle]
Chooses a turtle based on the following [condition]
and runs the commands specified in [list of commands]
orange color
[Observer, Turtle]
orange reports the number of its particular hue in the color table.
Its reference number is 25.
output something
[Observer, Turtle]
Exits the current procedure and returns something
output-name [Observer]
Returns the current filename of the output window. Returns false if no filename has been set yet.
partner [Observer, Turtle]
Returns the ID number of the turtle being grabbed, or -1 if no turtle is being grabbed.
partners [Observer, Turtle]
Returns a dlist of the turtles being grabbed, or [ ] if no turtles are being grabbed.
patches-own [variable list]
[Observer, Turtle]
Defines a set of variables to be properties of patches. The variable
list
contains one or more names.
pc, patchcolor [Turtle]
Reports the color of the patch the turtle is on.
Please see the color reference for more
info on colors.
pc-ahead [Turtle]
Reports the color of the patch one space ahead in the direction that the turtle
is facing.
Please see the color reference for more
info on colors.
pc-at xcor ycor
[Observer, Turtle]
Reports the color of the patch xcor
units in the x direction
and ycor
units in the y direction away from the caller.
Please see the color reference for more
info on colors.
pc-towards angle distance
[Observer, Turtle]
Reports the color of the patch distance
away at a relative heading
of angle
.
Please see the color reference for more
info on colors.
pd, pendown [Turtle]
Turtles put down their "pens," meaning that they draw when they move, leaving
a trail behind them. The color of the pen is that of the turtle. Note: Only
fd
and bk
will draw a line.
pendown? [Turtle]
Returns true if the turtle's pen is down, otherwise false.
pendown?-at xcor ycor
[Observer, Turtle]
Reports whether the pen of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller is down.
pendown?-of number
[Observer, Turtle]
Reports whether the pen of the turtle with ID Number number
is
down.
pendown?-towards angle distance
[Observer, Turtle]
Reports whether the pen of a turtle distance
away at an angle
of angle
is down.
pi [Observer, Turtle]
Returns the value of pi.
pick list
[Observer, Turtle]
Returns a random element of the list
. Returns false
if the list is empty.
pink color
[Observer, Turtle]
pink reports the number of its particular hue in the color table.
Its reference number is 135.
play-sound string_of_sound_file
[Observer, Turtle]
Plays the .au sound specified in string_of_sound_file
. Note:
The sound file must be in the Sounds folder, and the string should not contain
the .au extension.
plot y-value
[Observer, Turtle]
Plots a point at y-value
, then increments the x-value
of the plot pen by 1. The pen will rescale itself when it reaches plot-xmax
.
plot-title [Observer, Turtle]
Returns the title of the plot.
plot-xlabel [Observer, Turtle]
Returns the value of the label of the x-axis of the graph.
plot-xmax [Observer, Turtle]
Returns the maximum x-value of the plot.
plot-xmin [Observer, Turtle]
Returns the minimum x-value of the plot.
plotxy
x-value y-value
[Observer,
Turtle]
Plots a point at the location (x-value, y-value).
This procedure is used for X-Y plots and scatterplots.
plot-ylabel [Observer, Turtle]
Returns the value of the label of the y-axis of the graph.
plot-ymax [Observer, Turtle]
Returns the maximum y-value of the plot.
plot-ymin [Observer, Turtle]
Returns the minimum y-value of the plot.
position item dlist
[Observer, Turtle]
Returns the position of item
in the dlist
.
pp integer
[Observer, Turtle]
Selects a plot pen (e.g. pp 1
). Subsequent plotting commands
are executed by the selected plot pen. There are ten plot pens, numbered 1 through
10.
ppc [Observer, Turtle]
Returns the current plot pen color.
ppd [Observer, Turtle]
Puts the plot pen down, so that it draws connected graphs.
ppreset [Observer, Turtle]
Clears everything this plot pen has drawn and resets its position to (0, 0).
ppu [Observer, Turtle]
Lifts up the plot pen, so that it plots points individually (not connected).
ppxcor [Observer, Turtle]
Returns the x-value of the current plot pen.
ppycor [Observer, Turtle]
Returns the y-value of the current plot pen.
pred-list [Observer, Turtle]
Any group of commands which can return a boolean value. This is not a command
to type into StarLogo, rather, it is a convention used in this documentation.
Example: sum-of-turtles-with (color = red) [age]
Here, color
= red
is the pred-ilist
.
print text or variables
[Observer]
Prints the text or variables
in the output window followed by
a carriage return.
print-status text or variables
[Observer, Turtle]
Prints the text or variables
to the status bar.
project-name [Observer]
Returns the current filename of the project. Returns false if no filename has been set yet.
pstamp color
[Observer]
Allows patches to set the color of the turtle that is on it to color.
pstamp-at xcor ycor color
[Observer]
Allows patches to set the color of the turtle xcor
patches
in the x-direction and ycor
patches in the y-direction away
to color.
pstamp-towards radius angle color
[Observer]
Allows patches to set the color of the turtle radius
units
away at an angle of angle
to color.
pu, penup [Turtle]
Turtles pick up their "pens," meaning that they no longer draw when they move.
random number
[Observer, Turtle]
Returns a random number between 0 and number
, including 0 but
not number
, based on a uniform distribution.
random-gaussian number
[Observer, Turtle]
Returns a random number with mean 0 and standard deviation number
.
red color
[Observer, Turtle]
red reports the number of its particular hue in the color table.
Its reference number is 15.
remove index list
[Observer, Turtle]
Removes the element in the index
position from the specified list
.
remove-element element list
[Observer, Turtle]
Removes the specified
element
from list
.
repeat number ilist
[Observer, Turtle]
Do ilist
number
times.
resett, reset-timer[Observer, Turtle]
Resets the timer.
reverse list
[Observer, Turtle]
Reverses the order of the elements in list.
round number
[Observer, Turtle]
Reports the integer closest to number
.
rt, right number
[Turtle]
Turtles turn right by number
degrees.
save-info [Observer]
Saves the information window.
save-info-as [Observer]
Saves the information window using a different name than presently specified. A dialog box will appear to ask for the new file name.
save-next-version [Observer]
Saves the current project using the same name as the previous version except with a number at the end, incremented by one each time
a new version is saved.
save-output [Observer]
Saves output window to a file.
save-output-as [Observer]
Saves output window to a file. A dialog box will appear to ask for the new file name.
save-project [Observer]
Saves the current project to a file.
save-project-as [Observer]
Saves the current project using a different name than presently specified. A dialog box will appear to ask for the new file name
scale-color color variable limit1 limit2
[Turtle]
Turtles set their color to a shade of color
based on their value
of variable
. limit1
and limit2
determine
the amount of gradation.
Example:
scale-color blue energy 0 20
Turtles turn one of twenty shades of blue. Turtles with lower energy turn darker
blue.
scale-color blue energy 20 0
Turtles turn one of twenty shades of blue. Turtles with lower energy turn lighter
blue.
scale-pc color variable limit1 limit2
[Observer]
Patches set their color to a shade of color
based on their value
of variable
. limit1
and limit2
determine
the amount of gradation.
Example:
scale-color green density 0 20
Patches turn one of twenty shades of green. Patches with lower density turn
darker green.
scale-color blue energy 20 0
Patches turn one of twenty shades of green. Patches with lower density turn
lighter green.
NOTE: This is a patch command. It must be called from within an ask-patches
or ask-patch-at
statement
screen-half-height [Observer, Turtle]
Returns the half the width of the screen.
screen-half-width [Observer, Turtle]
Returns half of the width of the screen.
screen-height [Observer, Turtle]
Returns the height of the screen. The heights is always an odd number, and
the lowest possible value is 3. To change the screen-height
, drag
the mouse over the patchcancas and use the handles to resize it with the mouse.
screen-width [Observer, Turtle]
Returns width of the screen. The width is always an odd number, and the lowest
possible value is 3. To change the screen-width
, drag the mouse
over the patchcancas and use the handles to resize it with the mouse.
sdev-of-list list
[Observer, Turtle]
Returns the standard deviation of the given list.
sdev-of-patches [list
of commands]
[Observer, Turtle]
Returns the standard deviation of the given [list of commands] when evaluated
accross all the patches.
sdev-of-turtles [list
of commands]
[Observer, Turtle]
Returns the standard deviation of the [list of commands] when evaluated accross all the turtles.
se, sentence anything1 anything2
[Observer, Turtle]
Returns a list. If anything1
and anything2
are lists,
it appends the two lists. If anything1
is a list and anything2
is not, it puts anything2
at the end of the first list. If anything1
is not a list and anything2
is a list, it puts anything1
at the front of the second list. If neither anything1
nor
anything2
are lists, it creates a new list containing both anything1
and anything2
.
set variable value
[Observer, Turtle]
Assigns value
to variable
, where variable
is a local variable which has already been declared. For more information on
local variables, see the Variables page.
setage anything
[Turtle]
Sets the turtle's age
variable to anything
.
setage-at xcor ycor anything
[Observer, Turtle]
Sets the variable age
of turtles at xcor ycor
relative
to the caller to anything
.
setage-of turtle id number anything
[Observer, Turtle]
Sets the variable age
of turtle with who number turtle
id number
to anything
.
setage-towards angle distance anything
[Observer,
Turtle]
Sets the variable age
of turtles distance
away at
angle angle
relative to the caller to anything
.
setbreed breedname
[Turtle]
Turtles set their breed to breedname
.
setbreed-at xcor ycor breedname
[Observer, Turtle]
Sets the breed of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to breedname
.
See the breeds reference for more information.
setbreed-of number breedname
[Observer, Turtle]
Sets the breed of the turtle with ID Number number
to breedname
.
See the breeds reference for more information.
setbreed-towards angle distance breedname
[Observer,
Turtle]
Sets the breed of the turtle distance
away in the direction angle
to breedname
.
See the breeds reference for more information.
setc, setcolor colorname (or colornumber)
[Turtle]
Turtles set their color to colorname (or color number)
.
setc-at xcor ycor number
[Observer, Turtle]
Sets the color of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to number
.
setc-of number1 number2
[Observer, Turtle]
Sets the color of the turtle with ID number1
to color number2
.
setc-towards angle distance number
[Observer, Turtle]
Sets the color of the turtle distance
away if the heading was
angle
to number
.
setfood anything
[Observer, Turtle]
Sets the variable food
of patches to anything
.
NOTE: This is a patch command. It must be called from within an ask-patches
statement
setfood-at xcor ycor anything
[Observer, Turtle]
Sets the variable food
of the patch at xcor ycor
relative to the caller to anything
.
setfood-towards angle distance anything
[Observer,
Turtle]
Sets the variable food
of the patch distance
away
at angle angle
relative to the caller to anything
.
seth, setheading direction
[Turtle]
Turtles set their heading to a direction
from 0 to 359 degrees.
seth-at xcor ycor number
[Observer, Turtle]
Sets the heading of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to number
.
seth-of number1 number2
[Observer, Turtle]
Sets the heading of the turtle with ID number1
to number2
.
seth-towards angle distance number
[Observer, Turtle]
Sets the heading of the turtle distance
away if the heading was
angle
to number
.
set-info-name name
[Observer]
Sets the name of the information window to name
.
setitem number list elt
[Observer, Turtle]
Sets the element at the number
'th position in list
to elt
.
set-output-name name
[Observer]
Sets the name of the output window to name
.
setpc, setpatchcolor color
[Observer, Turtle]
This command has two different uses. It can be run as a turtle command, in
which case it will set the color of the patches which are underneath turtles
to color
. It can also be run as a patch command, inside either
an ask-patches
or ask-patch-at
statement. In these
cases, the patches being asked will set their color to color
.
setpendown?-at xcor ycor boolean
[Observer, Turtle]
Sets the pendown state of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to boolean
.
setpendown?-of number boolean
[Observer, Turtle]
Sets the pendown state of the turtle with ID Number number
to
boolean
.
setpendown?-towards angle distance boolean
[Observer,
Turtle]
Sets the pendown state of a turtle distance
away at an angle of
angle
to boolean
.
setplot-title name
[Observer, Turtle]
Sets the title of the plot to be name
.
setplot-xlabel label
[Observer, Turtle]
Sets the label of the x-axis of the graph to label
.
setplot-xmax value
[Observer, Turtle]
Sets the maximum value of the x-axis to be value
.
setplot-xmin value
[Observer, Turtle]
Sets the minimum value of the x-axis to be value
.
setplot-xrange value1 value2
[Observer, Turtle]
Sets the minimum value of the xy-axis to be value1
, and the maximum
value of the x-axis to be value2
.
setplot-ylabel label
[Observer, Turtle]
Sets the label of the y-axis of the graph to label
.
setplot-ymax value
[Observer, Turtle]
Sets the maximum value of the y-axis to be value
.
setplot-ymin value
[Observer, Turtle]
Sets the minimum value of the y-axis to be value
.
setplot-yrange value1 value2
[Observer, Turtle]
Sets the minimum value of the y-axis to be value1
, and the maximum
value of the y-axis to be value2
.
setppc color (or number)
[Observer, Turtle]
Sets the color of the current plot pen to be color
.
setshape
shape
-name [Turtle]
Turtles set their shape to shape-name
.
Note: shape-name can be the number of the shape as well.
setshown?-at xcor ycor boolean
[Observer, Turtle]
Sets the visibility of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to boolean
.
setshown?-of number boolean
[Observer, Turtle]
Sets the visibility of the turtle with ID Number number
to boolean
.
setshown?-towards angle distance boolean
[Observer,
Turtle]
Sets the visibility of a turtle distance
away at an angle of angle
to boolean
.
settime anything
[Observer]
Sets the value of the globals
variable time
to anything
.
setx, setxcor number
[Turtle]
Turtles set their x-coordinate to number
.
setxcor-at xcor ycor number
[Observer, Turtle]
Sets the x-coordinate of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to number
.
setxcor-of number1 number2
[Observer, Turtle]
Sets the x-coordinate of the turtle with ID number1
to number2
.
setxcor-towards angle distance number
[Observer, Turtle]
Sets the x-coordinate of the turtle distance
away if the heading
was angle
to number
.
setxy number1 number2
[Turtle]
Turtles set their x-coordinate to number1
and y-coordinate to
number2
.
sety, setycor number
[Turtle]
Turtles set their y-coordinate to number
.
setycor-at xcor ycor number
[Observer, Turtle]
Sets the y-coordinate of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller to number
.
setycor-of number1 number2
[Observer, Turtle]
Sets the y-coordinate of the turtle with ID Number number1
to
number2
.
setycor-towards angle distance number
[Observer, Turtle]
Sets the y-coordinate of the turtle distance
away if the heading
was angle
to number
.
set-count-plot-pens number
[Observer]
Sets the number of plot pens to number
.
set-info-name name
[Observer]
Sets the name of the information window to name
.
set-output-name name
[Observer]
Sets the name of the output window to name
.
set-project-name name
[Observer]
Set the name of the current project to name
.
set-random-seed integer
[Observer]
Sets the random see to integer
. Integers allowed are in the range
-(2^31) to (2^31 -1).
show anything
[Observer, Turtle]
Types anything
in the command center.
shown? [Observer, Turtle]
Returns true if the turtle is currently visible, otherwise false.
shown?-at xcor ycor
[Observer, Turtle]
Reports whether the turtle at (xcor ycor
) is visible.
shown?-of number
[Observer, Turtle]
Reports whether the turtle with ID number
is visible.
shown?-towards angle distance
[Observer, Turtle]
Reports whether the turtle distance
away at an angle of angle
is visible.
sin number
[Observer, Turtle]
Trigonometry functions. Returns the sine of the specified angle. All angles are in degrees
sky color
[Observer, Turtle]
sky reports the number of its particular hue in the color table.
Its reference number is 95.
sprout list to run
[Observer, Turtle]
Each patch creates a turtle, which then executes list to run
.
NOTE: This is a patch command. It must be called from within an ask-patches
or ask-patch-at
statement.
sqrt number
[Observer, Turtle]
Finds the square root of number
.
st, showturtle [Turtle]
Hidden turtles make themselves visible.
stamp color
[Observer, Turtle]
Sets color of patch under turtle to color
stamp-at xcor ycor color
[Observer, Turtle]
Sets the color of the patch xcor
units in the x direction and ycor
units in the
y direction away from the caller to color
.
stamp-towards angle distance color
[Turtle]
Sets the color of the patch distance
away, if the heading were
angle
, to color
.
startup [Observer]
This is a reserved observer procedure name. Anything within the startup
procedure will be executed each time the project is opened.
step [Turtle]
A synonym for fd 1
.
stop [Observer, Turtle]
Tells the current procedure to stop running.
stopall [Observer, Turtle]
Tells all everything to stop running, including procedures, buttons, monitors, and command centers.
sum-of-frogs ilist
[Observer, Turtle]
Reports the total of evaluating ilist
in every frog and adding
it up.
sum-of-frogs-with pred-ilist ilist
[Observer, Turtle]
Reports the total value of ilist
when run over the turtles of
breed frogs
that satisfy pred-ilist
. If there are
no frogs
in which pred-ilist
is true, returns 0. Note:
This command can also be executed by patches, for example within an ask-patches
statement.
Example: sum-of-frogs-with (color = green) [age]
returns the sum
of all of the ages of the green frogs
.
sum-of-patches ilist
[Observer, Turtle]
Reports the total of evaluating ilist
in every patch and adding
it up.
Example usage: show sum-of-patches [food]
This gives the total amount of food in the world.
sum-of-patches-with pred-ilist ilist
[Observer, Turtle]
Reports the total value of ilist
when run over the turtles that
statisfy pred-ilist
. If there are no patches in which pred-ilist
is true, reports 0. Note: This command can also be executed by patches, for
example within an ask-patches
statement.
Example: sum-of-patches-with (pc = green or pc = blue) [density]
returns the sum of the densities of all patches which are blue or green.
sum-of-turtles ilist
[Observer, Turtle]
Reports the total of evaluating ilist
in every turtle and adding
it up.
Example usage:
show sum-of-turtles [weight * weight]
This gives the sum of every turtle's (weight squared).
sum-of-turtles-with pred-ilist ilist
Reports the total value of ilist
when run over the turtles that
satisfy pred-ilist
. If there are no turtles in which pred-ilist
is true, returns 0. Note: This command can also be executed by patches, for
example within an ask-patches
statement.
Example: sum-of-turtles-with (color = red) [age]
returns the sum
of the ages of all the red turtles.
tan number
[Observer, Turtle]
Trigonometry functions. Returns the tangent of the specified angle. All angles are in degrees.
time [Observer]
Returns the value of the globals
variable time
.
timer [Observer, Turtle]
Reports the curent value of the timer.
to [Observer, Turtle]
When you create a procedure, the first line of the procedure must be to procedureName
where procedureName
is a one-word title for your procedure. procedureName
cannot be any command already recognized by StarLogo (this includes both built-in commands and the procedure names of other procedures you may already have written).For example:
to go fd 1 rt 90 end
towards xcor ycor
[Observer, Turtle]
Returns the angle from the callers xcor and ycor to the specified absolute
position specified by xcor
and ycor
.
towards-nowrap xcor ycor
[Observer, Turtle]
Returns the angle from the callers xcor and ycor to the specified absolute
position specified by xcor
and ycor
without wrapping.
to-delimited-string ilist
[Observer, Turtle]
Takes a list of instructions (variables, reporters, strings) and separates
them with commas and then concatenates them, returning the concatenated string.
Example:
globals [mystring one]
The value of
setone "abc"
setmystring to-string [one "two"]
mystring
is now "abc,two
".
to-string ilist
[Observer, Turtle]
Takes a list of instructions (variables, reporters, strings) and concatenates
them, returning the concatenated string. Example:
globals [mystring one]
The value of
setone "abc"
setmystring to-string [one "two"]
mystring
is now "abctwo
".
turquoise color
[Observer, Turtle]
turquoise reports the number of its particular hue in the color table.
Its reference number is 75.
turtles-own [variable list]
[Observer, Turtle]
Defines a set of variables to be properites of turtles. The variable
list
contains one or more names.
type text or variables
[Observer, Turtle]
Prints the text or variables
in the output window. No carriage
return is printed.
variance-of-list list
[Observer, Turtle]
Returns the variance of the given list.
variance-of-patches [list of commands]
[Observer, Turtle]
Returns the variance [list of commands] amongst all the patches.
variance-of-turtles [list of commands]
[Observer, Turtle]
Returns the variance of [list of commands] amongst all the turtles.
viewplot, view-plot [Observer, Turtle]
Opens the Plot Window.
violet, purple color
[Observer, Turtle]
violet
reports the number of its particular hue in the color table.
Its reference number is 115.
wait number
[Observer, Turtle]
Caller waits number
seconds before continuing.
wait-until predicate
[Observer, Turtle]
Caller waits until predicate
is true.
white color
[Observer, Turtle]
white reports the number of its particular hue in the color table.
Its reference number is 9.
who [Turtle]
Returns the ID number of the turtle.
who-max-of-frogs [list of commands]
[Observer, Turtle]
Returns a list with the who number of the turtle of
breed frogs corresponding to the highest value of [list of commands] along with
the highest value of [list of commands].
who-max-of-frogs-with [condition] [list of commands]
[Observer,
Turtle]
Returns a list with the who number of the turtle of
breed frogs which satifies the [condition] and has
the highest value of [list of commands] along with the highest value of [list
of commands].
who-max-of-turtles [list of commands]
[Observer, Turtle]
Returns a list with the who number of the turtle corresponding
to the highest value of [list of commands] along with the highest value of [list
of commands].
who-max-of-turtles-with [condition] [list of commands]
[Observer,
Turtle]
Returns a list with the who number of the turtle which
satifies the [condition] and has the highest value
of [list of commands] along with the highest value of [list of commands].
who-min-of-frogs [list of commands]
[Observer, Turtle]
Returns a list with the who number of the turtle of
breed frogs corresponding to the smallest value of [list of commands] along
with the smallest value of [list of commands].
who-min-of-frogs-with [condition] [list of commands]
[Observer,
Turtle]
Returns a list with the who number of the turtle of
breed frogs which satifies the [condition] and has
the least value of [list of commands] along with the smallest value of [list
of commands].
who-min-of-turtles [list of commands]
[Observer, Turtle]
Returns a list with the who number of the turtle corresponding
to the smallest value of [list of commands] along with the smallest value of
[list of commands].
who-min-of-turtles-with [condition] [list of commands]
[Observer,
Turtle]
Returns a list with the who number of the turtlewhich satifies the [condition]
and has the least value of [list of commands] along with the smallest value
of [list of commands].
word? thing
[Observer, Turtle]
Returns true if thing
is a word or a string.
xcor [Turtle]
Returns the x-coordinate of the turtle
xcor-at xcor ycor
[Observer, Turtle]
Reports the x-coordinate of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller.
xcor-of number
[Observer, Turtle]
Reports the x-coordinate of the turtle with ID number
.
xcor-towards angle distance
[Observer, Turtle]
Reports the x-coordinate of the turtle distance
away if the heading
was angle
.
condition1
xor condition2
[Observer,
Turtle]
Reports the value of condition1
xor condition2
.
ycor [Turtle]
Returns the y-coordinate of the turtle
ycor-at xcor ycor
[Observer, Turtle]
Reports the y-coordinate of the turtle xcor
units in the x direction and ycor
units in the
y direction away from the caller.
ycor-of number
[Observer, Turtle]
Reports the y-coordinate of the turtle with ID number
.
ycor-towards angle distance
[Observer, Turtle]
Reports the y-coordinate of the turtle distance
away if the heading
was angle
.
yellow color
[Observer, Turtle]
yellow reports the number of its particular hue in the color table.
Its reference number is 45.