
APT.all-test.dice-model-bot-new.bid.soar Maven / Gradle / Ivy
sp {propose*bid*last-bid-not-one-next-bid-not-one
(state ^io.input-link
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid )
( ^current-face
^new-face
^increment-multiplier )
( ^affordances.action
^state.special false)
( ^name bid
^available true)
( ^face
^count )
-->
( ^operator )
( ^name bid
^face
^multiplier (+ ))}
sp {propose*bid*last-bid-not-one-next-bid-not-one*push*face*not-one
(state ^io.input-link
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid )
( ^current-face
^new-face
^increment-multiplier )
( ^affordances.action
-^state.last-bid nil
^state.special false
^players.me.cup )
( ^name bid
^available true)
( ^face
^count )
( ^count > 1
^ > 0
-^1 > 0)
-->
#Also propose bid that pushes 1's and face being bid
( ^operator )
( ^name bid
^face
^push-face-count 1
^push-face
^multiplier (+ ))
# (write (crlf) |-Propose bid with push. Bid: | (+ ) | | |'s. Push: | )
# (write (crlf) |-Last bid: | | | |'s|)
}
sp {propose*bid*last-bid-not-one-next-bid-not-one*push*face*one
(state ^io.input-link
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid )
( ^current-face
^new-face
^increment-multiplier )
( ^affordances.action
-^state.last-bid nil
^state.special false
^players.me.cup )
( ^name bid
^available true)
( ^face
^count )
( ^count > 2
^ > 0
^1 > 0)
-->
#Also propose bid that pushes 1's and face being bid
( ^operator )
( ^name bid
^face
^push-face-count 2
^push-face
^push-face 1
^multiplier (+ ))
# (write (crlf) |-Propose bid with push. Bid: | (+ ) | | |'s. Push: | | & 1|)
# (write (crlf) |-Last bid: | | | |'s|)
}
sp {propose*bid*last-bid-not-one-next-bid-not-one*push*one
(state ^io.input-link
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid )
( ^current-face
^new-face
^increment-multiplier )
( ^affordances.action
-^state.last-bid nil
^state.special false
^players.me.cup )
( ^name bid
^available true)
( ^face
^count )
( ^count > 1
-^ > 0
^1 > 0)
-->
#Also propose bid that pushes 1's and face being bid
( ^operator )
( ^name bid
^face
^push-face-count 1
^push-face 1
^multiplier (+ ))
# (write (crlf) |-Propose bid with push. Bid: | (+ ) | | |'s. Push: | | & 1|)
# (write (crlf) |-Last bid: | | | |'s|)
}
## Increment 1 bid to new 1 bid
sp {propose*bid*last-bid-one-next-bid-one
(state ^io.input-link
^true-dice-counts.dice-counted true
^last-bid )
( ^affordances.action
^state.special false)
( ^name bid
^available true)
( ^face 1
^count )
-->
( ^operator )
( ^name bid
^face 1
^multiplier (+ 1 ))
}
## Increment 1 bid to new 1 bid * and push
sp {propose*bid*last-bid-one-next-bid-one*push*1
(state ^io.input-link
^true-dice-counts.dice-counted true
^last-bid )
( ^affordances.action
-^state.last-bid nil
^state.special false
^players.me.cup )
( ^1 > 0
^count > 1)
( ^name bid
^available true)
( ^face 1
^count )
-->
#Also propose bid that pushes 1's
( ^operator )
( ^name bid
^face 1
^push-face-count 1
^push-face 1
^multiplier (+ 1 ))
}
# Make 1 bid after non-one bid
sp {propose*bid*last-bid-not-one-next-bid-one
(state ^io.input-link
^true-dice-counts.dice-counted true
^last-bid )
( ^state.special false
^affordances.action )
( ^name bid
^available true)
( ^face <> 1
^count )
-->
( ^operator )
( ^name bid
^face 1
^multiplier (div (+ 1 ) 2))
}
sp {propose*bid*last-bid-not-one-next-bid-one*push*1
(state ^io.input-link
^true-dice-counts.dice-counted true
^last-bid )
( ^state.special false
-^state.last-bid nil
^affordances.action
^players.me.cup )
( ^count > 1
^1 > 0)
( ^name bid
^available true)
( ^face <> 1
^count )
-->
( ^operator )
( ^name bid
^face 1
^push-face-count 1
^push-face 1
^multiplier (div (+ 1 ) 2))
}
## Last bid was a 1 bid
sp {elaborate*last-one-bid*lower*multiplier
(state ^true-dice-counts.dice-counted true
^last-bid )
( ^face 1
^count )
-->
( ^last-bid-1-lower-multiplier (* 2 ))
}
sp {propose*bid*last-bid-one-next-bid-not-one
(state ^io.input-link
^last-bid-1-lower-multiplier
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid.face 1)
( ^current-face 6
^new-face
^increment-multiplier )
( ^state.special false
^affordances.action )
( ^name bid
^available true)
-->
( ^operator )
( ^name bid
^face
^multiplier (+ ))
}
sp {propose*bid*last-bid-one-next-bid-not-one*push2
(state ^io.input-link
^last-bid-1-lower-multiplier
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid.face 1)
( ^current-face 6
^new-face
^increment-multiplier )
( ^state.special false
-^state.last-bid nil
^affordances.action
^players.me.cup )
( ^count > 2
^ > 0
^1 > 0)
( ^name bid
^available true)
-->
( ^operator )
( ^name bid
^push-face-count 2
^push-face
^push-face 1
^face
^multiplier (+ ))
}
sp {propose*bid*last-bid-one-next-bid-not-one*push*face
(state ^io.input-link
^last-bid-1-lower-multiplier
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid.face 1)
( ^current-face 6
^new-face
^increment-multiplier )
( ^state.special false
-^state.last-bid nil
^affordances.action
^players.me.cup )
( ^count > 1
^ > 0
-^1 > 0)
( ^name bid
^available true)
-->
# ( ^operator )
# ( ^name bid
# ^face
# ^multiplier (+ ))
( ^operator )
( ^name bid
^push-face-count 1
^push-face
^face
^multiplier (+ ))
}
sp {propose*bid*last-bid-one-next-bid-not-one*push1
(state ^io.input-link
^last-bid-1-lower-multiplier
^dice-data.next-bid
^true-dice-counts.dice-counted true
^last-bid.face 1)
( ^current-face 6
^new-face
^increment-multiplier )
( ^state.special false
-^state.last-bid nil
^affordances.action
^players.me.cup )
( ^count > 1
-^ > 0
^1 > 0)
( ^name bid
^available true)
-->
( ^operator )
( ^name bid
^push-face-count 1
^push-face 1
^face
^multiplier (+ ))
}
##################################
sp {apply*bid
(state ^operator
^io.output-link )
( ^name bid
^face
^multiplier )
-->
# (interrupt)
(write (crlf) |Bid: |