Makuleke Land Dispossession

Makuleke Land Dispossession preview image

1 collaborator

Default-person Taylor Ouellette (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 6.3.0 • Viewed 35 times • Downloaded 2 times • Run 0 times
Download the 'Makuleke Land Dispossession' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


Info tab cannot be displayed because of an encoding error

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

globals [
  makuleke-patches
  rangers-patches
  conflicts
]

breed [makuleke a-makuleke]
breed [cattle a-cattle]
breed [rangers a-ranger]
breed [elephants a-elephant]

to setup
  clear-all
  setup-patches
  setup-turtles
  set makuleke-patches patches with [pcolor = 65]
  if year = 1800 [
    set initial-makuleke 50]
  if year = 1903 [
    set makuleke-patches patches with [pcolor = 65]
    set rangers-patches patches with [pcolor = 63]
    set initial-makuleke 50
    set initial-rangers 10
  ]
  if year = 1933 [
    set makuleke-patches patches with [pcolor = 26]
    set rangers-patches patches with [pcolor = 63]
    set initial-makuleke 45
    set initial-rangers 15
  ]
  if year = 1961 [
    set makuleke-patches patches with [pcolor = 26]
    set rangers-patches patches with [pcolor = 63]
    set initial-makuleke 40
    set initial-rangers 20
  ]
  if year = 1969 [
    set makuleke-patches patches with [pcolor = 26]
    set rangers-patches patches with [pcolor = 63]
    set initial-makuleke 40
    set initial-rangers 25
  ]
  reset-ticks
end 

to setup-patches
  set-patch-size 20
  ;; patches representing area between the Limpopo and Levuvha River
  if year = 1800 [
  ask patches [set pcolor 65]
  set makuleke-patches patches with [pcolor = 65]
  ]
  if year = 1903 [
    ask patches [set pcolor 65]
    set makuleke-patches patches with [pcolor = 65]
  ]
  if year = 1933 [
     ask patches [set pcolor 26]
     set makuleke-patches patches with [pcolor = 26]
  ]

  if year = 1961 [
     ask patches [set pcolor 26]
     set makuleke-patches patches with [pcolor = 26]
  ]
  if year = 1969 [
     ask patches [set pcolor 26]
     set makuleke-patches patches with [pcolor = 26]
  ]

  ;; blue patches representing the Limpopo and Levuvha River
  ask patches at-points [
  [-16 11] [-15 12] [-14 13] [-13 14] [-12 15] [-11 16] [-10 16] [-9 16] [-8 15] [-7 14] [-6 13]
    [-5 12] [-4 11] [-3 10] [-2 9] [-1 9] [0 10] [1 11] [2 12] [3 13] [4 13] [5 13] [6 12] [7 11]
    [8 10] [9 9] [10 8] [11 7] [12 6] [12 4] [6 2] [2 0] [1 -1][-1 -1] [-2 0] [13 5] [11 3] [8 2] [7 3]
    [5 1] [10 2] [9 1] [4 0] [3 1] [0 0] [-3 -1] [-4 0] [-5 -1] [-6 0] [-7 1] [-8 0] [-9 1] [-10 0]
    [-11 1] [-12 0]  [-13 1] [-14 0] [-15 -1] [-16 0]

  ]
    [set pcolor blue]

  ;; darker gray patches representing Mozambique
  ask patches at-points [
    [16 5] [16 4] [16 3] [15 4] [15 5] [15 6] [16 6] [16 7] [14 5]
  ]
  [set pcolor 3]

  ;; lighter gray patches representing Zimbabwe
  ask patches at-points [
    [-16 12] [-16 13] [-16 14] [-16 15] [-16 16] [-15 13] [-15 14] [-15 15] [-15 16] [-14 14] [-14 15]
    [-14 16] [-13 15] [-13 16] [-12 16] [-8 16] [-7 16] [-6 16] [-5 16] [-4 16] [-3 16] [-2 16] [-1 16]
    [0 16] [1 16] [2 16] [3 16] [4 16] [5 16] [4 16] [5 16] [6 16] [7 16] [8 16] [9 16] [10 16] [11 16]
    [12 16] [13 16] [14 16] [15 16] [16 16] [-7 15] [-6 15] [-5 15] [-4 15] [-3 15] [-2 15] [-1 15] [0 15]
    [1 15] [2 15] [3 15] [4 15] [5 15] [6 15] [7 15] [8 15] [9 15] [10 15] [11 15] [12 15] [13 15] [14 15]
    [15 15] [16 15] [-6 14] [-5 14] [-4 14] [-3 14] [-2 14] [-1 14] [0 14] [1 14] [2 14] [3 14] [4 14] [5 14]
    [6 14] [7 14] [8 14] [9 14] [10 14] [11 14] [12 14] [13 14] [14 14] [15 14] [16 14] [-5 13] [-4 13] [-3 13]
    [-2 13] [-1 13] [0 13] [1 13] [2 13] [-4 12] [-3 12] [-2 12] [-1 12] [0 12] [1 12] [-3 11] [-2 11] [-1 11]
    [0 11] [-2 10] [-1 10] [6 13] [7 13] [8 13] [9 13] [10 13] [11 13] [12 13] [13 13] [14 13] [15 13] [16 13]
    [7 12] [8 12] [9 12] [10 12] [11 12] [12 12] [13 12] [14 12] [15 12] [16 12] [8 11] [9 11] [10 11] [11 11]
    [12 11] [13 11] [14 11] [15 11] [16 11] [9 10] [10 10] [11 10] [12 10] [13 10] [14 10] [15 10] [16 10] [10 9]
    [11 9] [12 9] [13 9] [14 9] [15 9] [16 9] [11 8] [12 8] [13 8] [14 8] [15 8] [16 8] [12 7] [13 7] [14 7] [15 7]
    [13 6] [14 6]

  ]
    [set pcolor 6]

  ;; green patches representing area south of the Levuvha River
  if year = 1800 [
  ask patches with [pycor <= -2] [set pcolor 65]
  ask patches at-points [ [-16 -1] [-14 -1] [-13 -1] [-13 0] [-12 -1] [-11 -1] [-10 -1] [-9 -1] [-8 -1]
    [-7 -1] [-6 -1] [2 -1] [3 -1] [4 -1] [5 -1] [6 -1] [7 -1] [8 -1] [9 -1] [10 -1] [11 -1] [12 -1]
    [13 -1] [14 -1] [15 -1] [16 -1] [5 0] [6 0] [7 0] [8 0] [9 0] [10 0] [11 0] [12 0] [13 0] [14 0]
    [15 0] [16 0] [-11 0] [-9 0] [-7 0] [-4 -1] [-2 -1] [0 -1] [3 0] [6 1] [7 1] [8 1] [7 2] [10 1]
    [11 1] [12 1] [13 1] [14 1] [15 1] [16 1] [11 2] [12 2] [13 2] [14 2] [15 2] [16 2] [12 3] [13 3]
    [14 3] [15 3] [13 4] [14 4]
  ]
  [set pcolor 65]
  ]

   ;; darker green patches representing protected area (considered "ranger-patches") south of the Levuvha River
if year = 1903 [
    ask patches with [pycor <= -2] [set pcolor 63]
  ask patches at-points [ [-16 -1] [-14 -1] [-13 -1] [-13 0] [-12 -1] [-11 -1] [-10 -1] [-9 -1] [-8 -1]
    [-7 -1] [-6 -1] [2 -1] [3 -1] [4 -1] [5 -1] [6 -1] [7 -1] [8 -1] [9 -1] [10 -1] [11 -1] [12 -1]
    [13 -1] [14 -1] [15 -1] [16 -1] [5 0] [6 0] [7 0] [8 0] [9 0] [10 0] [11 0] [12 0] [13 0] [14 0]
    [15 0] [16 0] [-11 0] [-9 0] [-7 0] [-4 -1] [-2 -1] [0 -1] [3 0] [6 1] [7 1] [8 1] [7 2] [10 1]
    [11 1] [12 1] [13 1] [14 1] [15 1] [16 1] [11 2] [12 2] [13 2] [14 2] [15 2] [16 2] [12 3] [13 3]
    [14 3] [15 3] [13 4] [14 4]
  ]

  [set pcolor 63]
  ]
  if year = 1933 [
    ask patches with [pycor <= -2] [set pcolor 63]
  ask patches at-points [ [-16 -1] [-14 -1] [-13 -1] [-13 0] [-12 -1] [-11 -1] [-10 -1] [-9 -1] [-8 -1]
    [-7 -1] [-6 -1] [2 -1] [3 -1] [4 -1] [5 -1] [6 -1] [7 -1] [8 -1] [9 -1] [10 -1] [11 -1] [12 -1]
    [13 -1] [14 -1] [15 -1] [16 -1] [5 0] [6 0] [7 0] [8 0] [9 0] [10 0] [11 0] [12 0] [13 0] [14 0]
    [15 0] [16 0] [-11 0] [-9 0] [-7 0] [-4 -1] [-2 -1] [0 -1] [3 0] [6 1] [7 1] [8 1] [7 2] [10 1]
    [11 1] [12 1] [13 1] [14 1] [15 1] [16 1] [11 2] [12 2] [13 2] [14 2] [15 2] [16 2] [12 3] [13 3]
    [14 3] [15 3] [13 4] [14 4]
  ]

  [set pcolor 63]
  ]

   if year = 1961 [
        ask patches with [pycor <= -2] [set pcolor 63]
  ask patches at-points [ [-16 -1] [-14 -1] [-13 -1] [-13 0] [-12 -1] [-11 -1] [-10 -1] [-9 -1] [-8 -1]
    [-7 -1] [-6 -1] [2 -1] [3 -1] [4 -1] [5 -1] [6 -1] [7 -1] [8 -1] [9 -1] [10 -1] [11 -1] [12 -1]
    [13 -1] [14 -1] [15 -1] [16 -1] [5 0] [6 0] [7 0] [8 0] [9 0] [10 0] [11 0] [12 0] [13 0] [14 0]
    [15 0] [16 0] [-11 0] [-9 0] [-7 0] [-4 -1] [-2 -1] [0 -1] [3 0] [6 1] [7 1] [8 1] [7 2] [10 1]
    [11 1] [12 1] [13 1] [14 1] [15 1] [16 1] [11 2] [12 2] [13 2] [14 2] [15 2] [16 2] [12 3] [13 3]
    [14 3] [15 3] [13 4] [14 4]
  ]

  [set pcolor 63]
]
  if year = 1969 [
        ask patches with [pycor <= -2] [set pcolor 63]
  ask patches at-points [ [-16 -1] [-14 -1] [-13 -1] [-13 0] [-12 -1] [-11 -1] [-10 -1] [-9 -1] [-8 -1]
    [-7 -1] [-6 -1] [2 -1] [3 -1] [4 -1] [5 -1] [6 -1] [7 -1] [8 -1] [9 -1] [10 -1] [11 -1] [12 -1]
    [13 -1] [14 -1] [15 -1] [16 -1] [5 0] [6 0] [7 0] [8 0] [9 0] [10 0] [11 0] [12 0] [13 0] [14 0]
    [15 0] [16 0] [-11 0] [-9 0] [-7 0] [-4 -1] [-2 -1] [0 -1] [3 0] [6 1] [7 1] [8 1] [7 2] [10 1]
    [11 1] [12 1] [13 1] [14 1] [15 1] [16 1] [11 2] [12 2] [13 2] [14 2] [15 2] [16 2] [12 3] [13 3]
    [14 3] [15 3] [13 4] [14 4]
  ]

  [set pcolor 63]
]

;; fence created along northern side of the Levuvha River in 1961 represented by black patches
  if year = 1961 [
   ask patches at-points [
    [-16 1] [-15 0] [ -14 1] [-13 2] [-12 1] [-11 2] [-10 1] [-9 2] [-8 1] [-7 2] [-6 1] [-5 0] [-4 1]
    [-3 0] [-2 1] [-1 0] [0 1] [1 0] [2 1] [3 2] [4 1] [5 2] [6 3] [7 4] [8 3] [9 2] [10 3] [11 4] [12 5]
  ]

  [set pcolor black]
  ]
  if year = 1969 [
   ask patches at-points [
    [-16 1] [-15 0] [ -14 1] [-13 2] [-12 1] [-11 2] [-10 1] [-9 2] [-8 1] [-7 2] [-6 1] [-5 0] [-4 1]
    [-3 0] [-2 1] [-1 0] [0 1] [1 0] [2 1] [3 2] [4 1] [5 2] [6 3] [7 4] [8 3] [9 2] [10 3] [11 4] [12 5]
  ]

  [set pcolor black]
  ]
end 

to setup-turtles
  ;; makuleke setup
  create-makuleke initial-makuleke [
    set color 3
    set size 1.5
    set shape "person farmer"
    if year = 1800 [
    move-to one-of patches with [pcolor = 65]
    ]
    if year = 1903 [
      move-to one-of patches with [pcolor = 65]
    ]
    if year = 1933 [
      move-to one-of patches with [pcolor = 26]
    ]
    if year = 1961 [
       move-to one-of patches with [pcolor = 26]
    ]
    if year = 1969 [
       move-to one-of patches with [pcolor = 26]
    ]
  ]

  ;; cattle setup
if year = 1800 [
  create-cattle 20 [
    set shape "cow"
    set color brown
    set size 1.5
      move-to one-of patches with [pcolor = 65]
  ] ]
  if year = 1903 [
  create-cattle 15 [
    set shape "cow"
    set color brown
    set size 1.5
      move-to one-of patches with [pcolor = 65]
  ] ]
  if year = 1933 [
  create-cattle 10 [
    set shape "cow"
    set color brown
    set size 1.5
      move-to one-of patches with [pcolor = 26]
  ] ]

;; rangers setup
if year = 1903 [
  create-rangers initial-rangers [
    set color 3
    set size 1.5
    set shape "person soldier"
    move-to one-of patches with [pcolor = 63]
  ]
]
 if year = 1933 [
    create-rangers initial-rangers [
    set color 3
    set size 1.5
    set shape "person soldier"
    move-to one-of patches with [pcolor = 63]
  ] ]
 if year = 1961 [
    create-rangers initial-rangers [
    set color 3
    set size 1.5
    set shape "person soldier"
    move-to one-of patches with [pcolor = 63]
  ] ]
 if year = 1969 [
    create-rangers initial-rangers [
    set color 3
    set size 1.5
    set shape "person soldier"
    move-to one-of patches with [pcolor = 63]
  ] ]

;; elephants setup
if year = 1903 [
  create-elephants 7 [
  set shape "mammoth"
    set color gray
    set size 1.5
    move-to one-of patches with [pcolor = 63]
  ]
  ]
if year = 1933 [
  create-elephants 7 [
  set shape "mammoth"
    set color gray
    set size 1.5
    move-to one-of patches with [pcolor = 63]
  ]
  ]
if year = 1961 [
  create-elephants 7 [
  set shape "mammoth"
    set color gray
    set size 1.5
    move-to one-of patches with [pcolor = 63]
  ]
  ]
 if year = 1969 [
  create-elephants 7 [
  set shape "mammoth"
    set color gray
    set size 1.5
    move-to one-of patches with [pcolor = 63]
  ]
  ]
end 

to go
  ask turtles [
    move-makuleke
    move-cattle
    move-elephants
    move-rangers
    patrol
  ]
  tick
end 

;; rules for makuleke movement

to move-makuleke
  if year = 1800 [
 ask makuleke [
  rt random 50
  lt random 50

  ;; Check if there is a patch with color 65 in radius 1 without a turtle.
  let target-patch one-of patches with [pcolor = 65] in-radius 1 with [not any? turtles-here]

  ;; Only move to the target patch if it exists.
  if target-patch != nobody [
    move-to target-patch
  ]
]
  ]
  if year = 1903 [
  ask makuleke [
    rt random 50
    lt random 50
    move-to one-of patches with [pcolor = 65] with [not any? turtles-here]
      if not any? rangers in-radius 4 [
      move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
    ]
      if any? rangers in-radius 4 [
        move-to one-of patches with [pcolor = 65] with [not any? turtles-here]
    ]
  ]
  ]

  if year = 1933 [
  ask makuleke [
    rt random 50
    lt random 50
    move-to one-of patches with [pcolor = 26] with [not any? turtles-here]
      if not any? rangers in-radius 4 [
      move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
    ]
      if any? rangers in-radius 4 [
        move-to one-of patches with [pcolor = 26] with [not any? turtles-here]
    ]
  ]
  ]

  if year = 1961 [
      ask makuleke [
      rt random 50
      lt random 50
    move-to one-of patches with [pcolor = 26] with [not any? turtles-here]
      if not any? rangers in-radius 4 [
      move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
    ]
      if any? rangers in-radius 4 [
        move-to one-of patches with [pcolor = 26] with [not any? turtles-here]
    ]
  ]
  ]
  if year = 1969 [
      ifelse any? patches with [pcolor = 26] [
    ; Makuleke will move to patches with pcolor 26 as long as there are some
    ask makuleke [
      rt random 50
      lt random 50
        move-to one-of patches with [pcolor = 26] with [not any? turtles-here]
    ]
  ] [
    ; Once there are no more patches with pcolor 26, makuleke will move to patches with pcolor 63
    ask makuleke [
      rt random 50
      lt random 50
      move-to one-of patches with [pcolor = 63] in-radius 5 with [not any? turtles-here]
    ]
  ]
  ]
end 

;; rules for cattle movmement

to move-cattle
  if year = 1800 [
    ask cattle [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 65] with [not any? turtles-here]
    ifelse any? other turtles-on target-patch [
      ; If the target patch is already occupied, find a nearby unoccupied patch within a certain radius
      move-to one-of patches in-radius 2 with [not any? turtles-here]
    ] [
      move-to target-patch
    ]
  ]
  ]
  if year = 1903 [
    ask cattle [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 65] with [not any? turtles-here]
    ifelse any? other turtles-on target-patch [
      ; If the target patch is already occupied, find a nearby unoccupied patch within a certain radius
      move-to one-of patches in-radius 2 with [not any? turtles-here]
    ] [
      move-to target-patch
    ]
  ]
  ]
  if year = 1933 [
    ask cattle [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 26] with [not any? turtles-here]
    ifelse any? other turtles-on target-patch [
      ; If the target patch is already occupied, find a nearby unoccupied patch within a certain radius
      move-to one-of patches in-radius 2 with [not any? turtles-here]
    ] [
      move-to target-patch
    ]
  ]
  ]
end 

;; rules for elephant movement

to move-elephants
  if year = 1903 [
    rt random 50
    lt random 50
  ask elephants [
    let target-patch one-of patches with [pcolor = 63] with [not any? turtles-here]

    ; Check if the target patch is already occupied by another agent
    ifelse not any? other turtles-on target-patch [
      ; If the target patch is unoccupied, move there
      move-to target-patch
    ] [
      ; If the target patch is occupied, find a nearby unoccupied patch
      let unoccupied-patches patches in-radius 1 with [not any? turtles-here]
      ifelse any? unoccupied-patches [
        move-to one-of unoccupied-patches
      ] [
        ; If no unoccupied patches are found nearby, stay in the current patch
        move-to patch-here
      ]
    ]
  ]
  ]
 if year = 1933 [
  ask elephants [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 63] with [not any? turtles-here]

    ; Check if the target patch is already occupied by another agent
    ifelse not any? other turtles-on target-patch [
      ; If the target patch is unoccupied, move there
      move-to target-patch
    ] [
      ; If the target patch is occupied, find a nearby unoccupied patch
      let unoccupied-patches patches in-radius 1 with [not any? turtles-here]
      ifelse any? unoccupied-patches [
        move-to one-of unoccupied-patches
      ] [
        ; If no unoccupied patches are found nearby, stay in the current patch
        move-to patch-here
      ]
    ]
  ]
  ]
 if year = 1961 [
  ask elephants [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 63] with [not any? turtles-here]

    ; Check if the target patch is already occupied by another agent
    ifelse not any? other turtles-on target-patch [
      ; If the target patch is unoccupied, move there
      move-to target-patch
    ] [
      ; If the target patch is occupied, find a nearby unoccupied patch
      let unoccupied-patches patches in-radius 1 with [not any? turtles-here]
      ifelse any? unoccupied-patches [
        move-to one-of unoccupied-patches
      ] [
        ; If no unoccupied patches are found nearby, stay in the current patch
        move-to patch-here
      ]
    ]
  ]
  ]
if year = 1969 [
  ask elephants [
    rt random 50
    lt random 50
    let target-patch one-of patches with [pcolor = 63] with [not any? turtles-here]

    ; Check if the target patch is already occupied by another agent
    ifelse not any? other turtles-on target-patch [
      ; If the target patch is unoccupied, move there
      move-to target-patch
    ] [
      ; If the target patch is occupied, find a nearby unoccupied patch
      let unoccupied-patches patches in-radius 1 with [not any? turtles-here]
      ifelse any? unoccupied-patches [
        move-to one-of unoccupied-patches
      ] [
        ; If no unoccupied patches are found nearby, stay in the current patch
        move-to patch-here
      ]
    ]
  ]
  ]
end 

;; rules for ranger movement

to move-rangers
  if year = 1903 [
  ask rangers [
    rt random 50
    lt random 50
    move-to one-of patches with [pcolor = 63] with [not any? rangers-here]
  ]
  ]
  if year = 1933 [
    ask rangers [
    rt random 50
    lt random 50
    move-to one-of patches with [pcolor = 63] with [not any? rangers-here]
  ]
  ]
  if year = 1961 [
     ask rangers [
    rt random 50
    lt random 50
    move-to one-of patches with [pcolor = 63] with [not any? rangers-here]
  ]
  ]
  if year = 1969 [
      ifelse any? patches with [pcolor = 26] [
    ; Rangers will move to patches with pcolor 26 as long as there are some
    ask rangers [
    rt random 50
    lt random 50
      move-to one-of patches with [pcolor = 26] with [not any? rangers-here]
    ]
  ] [
    ; Once there are no more patches with pcolor 26, rangers will move to patches with pcolor 63
    ask rangers [
    rt random 50
    lt random 50
      move-to one-of patches with [pcolor = 63] with [not any? rangers-here]
    ]
  ] ]
end 

;; rules for rangers when patrolling

to patrol
  if year = 1903 [
  ask rangers [
    if any? makuleke-here [
      if (pcolor = 63) [
        ; Define the probability of conflict during patrol (e.g., 0.1 for 10% probability)
        let conflict-probability 0.005
        ifelse random-float 1.0 < conflict-probability [
          ; Engage in conflict with makuleke
          let target one-of makuleke with [distance myself <= 2]
          ifelse random-float 1.0 < 0.01 [
            ask target [die]
            set conflicts (conflicts + 1)
          ] [
            ; Don't kill the Makuleke, just change their color

          ]
          set pcolor red
        ] [
          ; Continue with patrol behavior
          move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
        ]
      ]
    ]
  ]
  ]
 if year = 1933 [
   ask rangers [
    if any? makuleke-here [
      if (pcolor = 63) [
        ; Define the probability of conflict during patrol (e.g., 0.1 for 10% probability)
        let conflict-probability 0.01
        ifelse random-float 1.0 < conflict-probability [
          ; Engage in conflict with makuleke
          let target one-of makuleke with [distance myself <= 2]
          ifelse random-float 1.0 < 0.03 [
            ask target [die]
            set conflicts (conflicts + 1)
          ] [
            ; Don't kill the Makuleke, just change their color
          ]
          set pcolor red
        ] [
          ; Continue with patrol behavior
          move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
        ]
      ]
    ]
  ]
  ]
 if year = 1961 [
   ask rangers [
    if any? makuleke-here [
      if (pcolor = 63) [
        ; Define the probability of conflict during patrol (e.g., 0.1 for 10% probability)
        let conflict-probability 0.06
        ifelse random-float 1.0 < conflict-probability [
          ; Engage in conflict with makuleke
          let target one-of makuleke with [distance myself <= 2]
          ifelse random-float 1.0 < 0.09 [
            ask target [die]
            set conflicts (conflicts + 1)
          ] [
            ; Don't kill the Makuleke, just change their color
          ]
          set pcolor red
        ] [
          ; Continue with patrol behavior
          move-to one-of patches with [pcolor = 63] with [not any? turtles-here]
        ]
      ]
    ]
  ]
  ]
if year = 1969 [
  ask rangers [
    ; Check for the presence of makuleke within a certain radius
    let nearby-makuleke makuleke in-radius 3
    if any? nearby-makuleke [
      ; Define the probability of conflict during patrol (e.g., 0.1 for 10% probability)
      let conflict-probability 1.0
      ifelse random-float 1.0 < conflict-probability [
        ; Engage in conflict with a nearby makuleke
        let target one-of nearby-makuleke
        ask target [die]
        set conflicts (conflicts + 1)
        set pcolor red
        ; Ask patches with the color 26 to execute the following block:
          ask patches with [pcolor = 26] [
          ; Set the color of these patches to 63.
          set pcolor 63
        ]
      ]
      [
        ; Continue with patrol behavior
        move-to one-of patches with [pcolor = 63] in-radius 3 with [not any? rangers-here]
      ]
    ]
  ]
]
end 

There is only one version of this model, created 5 months ago by Taylor Ouellette.

Attached files

File Type Description Last updated
Makuleke Land Dispossession.png preview Preview for 'Makuleke Land Dispossession' 5 months ago, by Taylor Ouellette Download

This model does not have any ancestors.

This model does not have any descendants.