You are not logged in. login register
Game maze
name maze
creator admin
number of roles 1
stylesheet generic/generic.xsl
GDL v1
enabled
matches show matches
statistics show game statistics
description

Game Description

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Maze
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (role robot)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (init (cell a))
  (init (gold c))
  (init (step 1))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (<= (next (cell ?y))
      (does robot move)
      (true (cell ?x))
      (adjacent ?x ?y))

  (<= (next (cell ?x))
      (does robot grab)
      (true (cell ?x)))

  (<= (next (cell ?x))
      (does robot drop)
      (true (cell ?x)))


  (<= (next (gold ?x))
      (does robot move)
      (true (gold ?x)))

  (<= (next (gold i))
      (does robot grab)
      (true (cell ?x))
      (true (gold ?x)))

  (<= (next (gold i))
      (does robot grab)
      (true (gold i)))

  (<= (next (gold ?y))
      (does robot grab)
      (true (cell ?x))
      (true (gold ?y))
      (distinct ?x ?y))

  (<= (next (gold ?x))
      (does robot drop)
      (true (cell ?x))
      (true (gold i)))

  (<= (next (gold ?x))
      (does robot drop)
      (true (gold ?x))
      (distinct ?x i))


  (<= (next (step ?y))
      (true (step ?x))
      (succ ?x ?y))


  (adjacent a b)
  (adjacent b c)
  (adjacent c d)
  (adjacent d a)

  (succ 1 2)
  (succ 2 3)
  (succ 3 4)
  (succ 4 5)
  (succ 5 6)
  (succ 6 7)
  (succ 7 8)
  (succ 8 9)
  (succ 9 10)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (<= (legal robot move))

  (<= (legal robot grab)
      (true (cell ?x))
      (true (gold ?x)))

  (<= (legal robot drop)
      (true (gold i)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (<= (goal robot 100)
      (true (gold a)))

  (<= (goal robot 0)
      (true (gold ?x))
      (distinct ?x a))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  (<= terminal
      (true (step 10)))

  (<= terminal
      (true (gold a)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

sees_XML(...) rules

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