Bluebles1
No preview image
Model was written in NetLogo 5.0RC7
•
Viewed 319 times
•
Downloaded 22 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
globals [grass] ;; keep track of how much grass there is ;; smoothbluebles, spinybluebles, longneckbluebles, greenbluebles and snurples are all breeds of turtles. breed [smoothbluebles smoothblueble] breed [spinybluebles spinyblueble] breed [longneckbluebles longneckblueble] breed [greenbluebles greenblueble] breed [snurples snurple] turtles-own [energy] patches-own [countdown] to setup clear-all ask patches [ set pcolor 64 ] ask patches [ set countdown random 10 ;; initialize grass grow clocks randomly set pcolor one-of [64 white] ;; green or white ] set-default-shape smoothbluebles "smooth blueble" create-smoothbluebles initial-number-smoothbluebles ;; create the smooth bluebles, then initialize their variables [ set color 105 ;; blue set size 7 ;; easier to see set energy random 2 setxy random-xcor random-ycor ] set-default-shape spinybluebles "spiny blueble" create-spinybluebles initial-number-spinybluebles ;; create the spiny bluebles, then initialize their variables [ set color 105 ;; blue set size 7 ;; easier to see set energy random 2 setxy random-xcor random-ycor ] set-default-shape longneckbluebles "longneck blueble" create-longneckbluebles initial-number-longneckbluebles ;; create the longneck bluebles, then initialize their variables [ set color 105 ;; blue set size 7 ;; easier to see set energy random 2 setxy random-xcor random-ycor ] set-default-shape greenbluebles "spiny blueble" create-greenbluebles initial-number-greenbluebles ;; create the green bluebles, then initialize their variables [ set color 64 ;; green set size 7 ;; easier to see set energy random 2 setxy random-xcor random-ycor ] set-default-shape snurples "snurple" create-snurples initial-number-snurples ;; create the snurples, then initialize their variables [ set color 115 ;; purple set size 7 ;; easier to see set energy random 50 setxy random-xcor random-ycor ] set grass count patches with [pcolor = 64] reset-ticks end to go if not any? turtles [ stop ] ask smoothbluebles [ move set energy energy - 1 ;; deduct energy for smoothbluebles eat-grass death reproduce-smoothbluebles ] ask spinybluebles [ move set energy energy - 1 ;; deduct energy for spinybluebles eat-grass death reproduce-spinybluebles ] ask longneckbluebles [ move set energy energy - 1 ;; deduct energy for longneckbluebles eat-grass death reproduce-longneckbluebles ] ask greenbluebles [ move set energy energy - 1 ;; deduct energy for greenbluebles eat-grass death reproduce-greenbluebles ] ask snurples [ move set energy energy - 1 ;; snurples lose energy as they move catch-smoothbluebles death reproduce-snurples ] ask patches [ grow-grass ] set grass count patches with [pcolor = 64] ;; green tick end to move ;; turtle procedure rt random 50 lt random 50 fd 1 end to eat-grass ;; bluebles procedure ;; bluebles eat grass, turn the patch white if pcolor = 64 [ ;; green set pcolor white set energy energy + 2 ;; bluebles gain energy by eating ] end to reproduce-smoothbluebles ;; smoothbluebles procedure if random-float 100 < bluebles-reproduce [ ;; throw "dice" to see if you will reproduce set energy (energy / 2) ;; divide energy between parent and offspring hatch 1 [ rt random-float 360 fd 1 ] ;; hatch an offspring and move it forward 1 step ] end to reproduce-spinybluebles ;; spinybluebles procedure if random-float 100 < bluebles-reproduce [ ;; throw "dice" to see if you will reproduce set energy (energy / 2) ;; divide energy between parent and offspring hatch 1 [ rt random-float 360 fd 1 ] ;; hatch an offspring and move it forward 1 step ] end to reproduce-longneckbluebles ;; longneckbluebles procedure if random-float 100 < bluebles-reproduce [ ;; throw "dice" to see if you will reproduce set energy (energy / 2) ;; divide energy between parent and offspring hatch 1 [ rt random-float 360 fd 1 ] ;; hatch an offspring and move it forward 1 step ] end to reproduce-greenbluebles ;; greenbluebles procedure if random-float 100 < bluebles-reproduce [ ;; throw "dice" to see if you will reproduce set energy (energy / 2) ;; divide energy between parent and offspring hatch 1 [ rt random-float 360 fd 1 ] ;; hatch an offspring and move it forward 1 step ] end to reproduce-snurples ;; snurple procedure if random-float 100 < snurples-reproduce [ ;; throw "dice" to see if you will reproduce set energy (energy / 2) ;; divide energy between parent and offspring hatch 1 [ rt random-float 360 fd 1 ] ;; hatch an offspring and move it forward 1 step ] end to catch-smoothbluebles ;; snurple procedure let prey one-of smoothbluebles-here ;; grab a random smoothblueble if prey != nobody ;; did we get one? if so, [ ask prey [ die ] ;; kill it set energy energy + 100 ] ;; get energy from eating end to death ;; turtle procedure ;; when energy dips below zero, die if energy < 0 [ die ] end to grow-grass ;; patch procedure ;; countdown on white patches: if reach 0, grow some grass if pcolor = white [ ifelse countdown <= 0 [ set pcolor 64 set countdown 10 ] [ set countdown countdown - 1 ] ] end
There is only one version of this model, created almost 13 years ago by Kay Ramey.
Attached files
No files
This model does not have any ancestors.
This model does not have any descendants.