Game 3pffa

name | 3pffa | |
---|---|---|

creator | admin | |

number of roles | 3 | |

stylesheet | 3pffa/3pffa.xsl | |

GDL | v1 | |

enabled | ||

matches | show matches | |

statistics | show game statistics | |

description |

## Game Description

```
(role red)
(role yellow)
(role blue)
(init (control red))
(init (cell 1 4 red))
(init (cell 4 1 yellow))
(init (cell 7 4 blue))
(init (step 1))
(init (capture red 0))
(init (capture yellow 0))
(init (capture blue 0))
(<= (legal ?player noop)
(role ?player))
(<= (legal ?player (move ?x1 ?y1 ?x2 ?y2))
(true (control ?player))
(true (cell ?x1 ?y1 ?player))
(orthogonal ?x1 ?y1 ?x2 ?y2)
(onboard ?x2 ?y2)
(true (cell ?x2 ?y2 ?player2))
(distinct ?player ?player2))
(<= (legal ?player (move ?x1 ?y1 ?x2 ?y2))
(true (control ?player))
(true (cell ?x1 ?y1 ?player))
(diagonal ?x1 ?y1 ?x2 ?y2)
(onboard ?x2 ?y2)
(true (cell ?x2 ?y2 ?player2))
(distinct ?player ?player2))
(<= (legal ?player (move ?x1 ?y1 ?x2 ?y2))
(true (control ?player))
(true (cell ?x1 ?y1 ?player))
(ell ?x1 ?y1 ?x2 ?y2)
(opencell ?x2 ?y2))
(<= (next (control ?p2))
(true (control ?p1))
(rotation ?p1 ?p2))
(<= (next (cell ?x2 ?y2 ?player))
(does ?player (move ?x1 ?y1 ?x2 ?y2)))
(<= (next (cell ?x ?y ?piece))
(true (cell ?x ?y ?piece))
(not (camefrom ?x ?y))
(not (wentto ?x ?y)))
(<= (next (cell ?x ?y ?player))
(spawns ?x ?y ?player))
(<= (next (capture ?player ?count))
(true (capture ?player ?count))
(not (captured ?player)))
(<= (next (capture ?player ?count2))
(true (capture ?player ?count1))
(captured ?player)
(captureplus ?count1 ?count2))
(<= (next (step ?t2))
(true (step ?t1))
(stepcount ?t1 ?t2))
(<= terminal
(true (step 31)))
(<= (goal ?player ?goal)
(true (capture ?player ?count))
(scoremap ?count ?goal))
(<= (orthogonal ?x1 ?y ?x2 ?y)
(plus 1 ?x1 ?x2)
(index ?y))
(<= (orthogonal ?x1 ?y ?x2 ?y)
(plus 1 ?x2 ?x1)
(index ?y))
(<= (orthogonal ?x ?y1 ?x ?y2)
(index ?x)
(plus 1 ?y1 ?y2))
(<= (orthogonal ?x ?y1 ?x ?y2)
(index ?x)
(plus 1 ?y2 ?y1))
(<= (diagonal ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x1 ?x2)
(plus 1 ?y1 ?y2))
(<= (diagonal ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x1 ?x2)
(plus 1 ?y2 ?y1))
(<= (diagonal ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x2 ?x1)
(plus 1 ?y1 ?y2))
(<= (diagonal ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x2 ?x1)
(plus 1 ?y2 ?y1))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 2 ?x1 ?x2)
(plus 1 ?y1 ?y2))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 2 ?x1 ?x2)
(plus 1 ?y2 ?y1))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 2 ?x2 ?x1)
(plus 1 ?y1 ?y2))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 2 ?x2 ?x1)
(plus 1 ?y2 ?y1))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x1 ?x2)
(plus 2 ?y1 ?y2))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x1 ?x2)
(plus 2 ?y2 ?y1))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x2 ?x1)
(plus 2 ?y1 ?y2))
(<= (ell ?x1 ?y1 ?x2 ?y2)
(plus 1 ?x2 ?x1)
(plus 2 ?y2 ?y1))
(<= (opencell ?x ?y)
(onboard ?x ?y)
(not (true (cell ?x ?y red)))
(not (true (cell ?x ?y yellow)))
(not (true (cell ?x ?y blue))))
(<= (onboard ?x ?y)
(index ?x)
(index ?y)
(distinct ?x 1)
(distinct ?x 7)
(distinct ?y 1)
(distinct ?y 7))
(<= (camefrom ?x1 ?y1)
(does ?player (move ?x1 ?y1 ?x2 ?y2)))
(<= (wentto ?x2 ?y2)
(does ?player (move ?x1 ?y1 ?x2 ?y2)))
(<= (captured ?player)
(true (control ?player))
(wentto ?x ?y)
(true (cell ?x ?y ?any)))
(index 1)
(index 2)
(index 3)
(index 4)
(index 5)
(index 6)
(index 7)
(plus 1 1 2)
(plus 1 2 3)
(plus 1 3 4)
(plus 1 4 5)
(plus 1 5 6)
(plus 1 6 7)
(plus 2 1 3)
(plus 2 2 4)
(plus 2 3 5)
(plus 2 4 6)
(plus 2 5 7)
(rotation red yellow)
(rotation yellow blue)
(rotation blue red)
(spawns 1 4 red)
(spawns 4 1 yellow)
(spawns 7 4 blue)
(stepcount 1 2)
(stepcount 2 3)
(stepcount 3 4)
(stepcount 4 5)
(stepcount 5 6)
(stepcount 6 7)
(stepcount 7 8)
(stepcount 8 9)
(stepcount 9 10)
(stepcount 10 11)
(stepcount 11 12)
(stepcount 12 13)
(stepcount 13 14)
(stepcount 14 15)
(stepcount 15 16)
(stepcount 16 17)
(stepcount 17 18)
(stepcount 18 19)
(stepcount 19 20)
(stepcount 20 21)
(stepcount 21 22)
(stepcount 22 23)
(stepcount 23 24)
(stepcount 24 25)
(stepcount 25 26)
(stepcount 26 27)
(stepcount 27 28)
(stepcount 28 29)
(stepcount 29 30)
(stepcount 30 31)
(captureplus 0 1)
(captureplus 1 2)
(captureplus 2 3)
(captureplus 3 4)
(captureplus 4 5)
(captureplus 5 6)
(captureplus 6 7)
(captureplus 7 8)
(captureplus 8 9)
(captureplus 9 10)
(scoremap 0 0)
(scoremap 1 10)
(scoremap 2 20)
(scoremap 3 30)
(scoremap 4 40)
(scoremap 5 50)
(scoremap 6 60)
(scoremap 7 70)
(scoremap 8 80)
(scoremap 9 90)
(scoremap 10 100)
```

## sees_XML(...) rules

```
(<= (sees_xml random ?t) (true ?t))
(<= (sees_xml ?p ?t) (role ?p) (distinct ?p random) (true ?t))
```