You are not logged in. login register
Game connect5
name connect5
creator admin
number of roles 2
stylesheet chess_like/chess_like_automatic.xsl
GDL v1
enabled
matches show matches
statistics show game statistics
description

Game Description

(role x)
(role o)
(init (cell a a b))
(init (cell b a b))
(init (cell c a b))
(init (cell d a b))
(init (cell e a b))
(init (cell f a b))
(init (cell g a b))
(init (cell h a b))
(init (cell a b b))
(init (cell b b b))
(init (cell c b b))
(init (cell d b b))
(init (cell e b b))
(init (cell f b b))
(init (cell g b b))
(init (cell h b b))
(init (cell a c b))
(init (cell b c b))
(init (cell c c b))
(init (cell d c b))
(init (cell e c b))
(init (cell f c b))
(init (cell g c b))
(init (cell h c b))
(init (cell a d b))
(init (cell b d b))
(init (cell c d b))
(init (cell d d b))
(init (cell e d b))
(init (cell f d b))
(init (cell g d b))
(init (cell h d b))
(init (cell a e b))
(init (cell b e b))
(init (cell c e b))
(init (cell d e b))
(init (cell e e b))
(init (cell f e b))
(init (cell g e b))
(init (cell h e b))
(init (cell a f b))
(init (cell b f b))
(init (cell c f b))
(init (cell d f b))
(init (cell e f b))
(init (cell f f b))
(init (cell g f b))
(init (cell h f b))
(init (cell a g b))
(init (cell b g b))
(init (cell c g b))
(init (cell d g b))
(init (cell e g b))
(init (cell f g b))
(init (cell g g b))
(init (cell h g b))
(init (cell a h b))
(init (cell b h b))
(init (cell c h b))
(init (cell d h b))
(init (cell e h b))
(init (cell f h b))
(init (cell g h b))
(init (cell h h b))
(init (control x))
(<= (next (control ?r))
    (does ?r noop))
(<= (next (cell ?x ?y ?r))
	(does ?r (mark ?x ?y)))
(<= (next (cell ?x ?y ?c))
	(true (cell ?x ?y ?c))
	(does ?r (mark ?x1 ?y1))
	(or (distinct ?x ?x1)
		(distinct ?y ?y1)))
(<= (legal ?r (mark ?x ?y))
	(true (control ?r))
    (true (cell ?x ?y b))
;	(adjacent_cell ?x ?y ?x1 ?y1)
;	(true (cell ?x1 ?y1 ?c))
;	(distinct ?c b)
	)
(<= (legal ?r noop)
	(role ?r)
	(not (true (control ?r))))
(<= (goal ?r 100)
	(conn5 ?r))
(<= (goal x 0)
	(conn5 o))
(<= (goal o 0)
	(conn5 x))
(<= (goal x 50)
	(not exists_line_of_five))
(<= (goal o 50)
	(not exists_line_of_five))
(<= terminal
	exists_line_of_five)
(<= terminal
	(not exists_empty_cell))
(<= exists_empty_cell
	(true (cell ?x ?y b)))
(<= exists_line_of_five
	(role ?r)
	(conn5 ?r))
(<= (conn5 ?r)
	(or (col ?r) (row ?r) (diag1 ?r) (diag2 ?r)))
(<= (row ?r)
    (true (cell ?a ?y ?r))
	(nextcol ?a ?b)
    (true (cell ?b ?y ?r))
	(nextcol ?b ?c)
    (true (cell ?c ?y ?r))
	(nextcol ?c ?d)
    (true (cell ?d ?y ?r))
	(nextcol ?d ?e)
    (true (cell ?e ?y ?r)))
(<= (col ?r)
    (true (cell ?x ?a ?r))
	(nextcol ?a ?b)
    (true (cell ?x ?b ?r))
	(nextcol ?b ?c)
    (true (cell ?x ?c ?r))
	(nextcol ?c ?d)
    (true (cell ?x ?d ?r))
	(nextcol ?d ?e)
    (true (cell ?x ?e ?r)))
(<= (diag1 ?r)
    (true (cell ?x1 ?y1 ?r))
	(nextcol ?x1 ?x2)
	(nextcol ?y1 ?y2)
    (true (cell ?x2 ?y2 ?r))
	(nextcol ?x2 ?x3)
	(nextcol ?y2 ?y3)
    (true (cell ?x3 ?y3 ?r))
	(nextcol ?x3 ?x4)
	(nextcol ?y3 ?y4)
    (true (cell ?x4 ?y4 ?r))
	(nextcol ?x4 ?x5)
	(nextcol ?y4 ?y5)
    (true (cell ?x5 ?y5 ?r)))
(<= (diag2 ?r)
    (true (cell ?x1 ?y5 ?r))
	(nextcol ?x1 ?x2)
	(nextcol ?y4 ?y5)
    (true (cell ?x2 ?y4 ?r))
	(nextcol ?x2 ?x3)
	(nextcol ?y3 ?y4)
    (true (cell ?x3 ?y3 ?r))
	(nextcol ?x3 ?x4)
	(nextcol ?y2 ?y3)
    (true (cell ?x4 ?y2 ?r))
	(nextcol ?x4 ?x5)
	(nextcol ?y1 ?y2)
    (true (cell ?x5 ?y1 ?r)))
(nextcol a b)
(nextcol b c)
(nextcol c d)
(nextcol d e)
(nextcol e f)
(nextcol f g)
(nextcol g h)
(coordinate a)
(coordinate b)
(coordinate c)
(coordinate d)
(coordinate e)
(coordinate f)
(coordinate g)
(coordinate h)
(<= (adjacent_cell ?x ?y ?x ?y1)
	(adjacent ?y ?y1)
	(coordinate ?x))
(<= (adjacent_cell ?x ?y ?x1 ?y)
	(adjacent ?x ?x1)
	(coordinate ?y))
(<= (adjacent_cell ?x ?y ?x1 ?y1)
	(adjacent ?x ?x1)
	(adjacent ?y ?y1))
(<= (adjacent ?x ?y)
	(nextcol ?x ?y))
(<= (adjacent ?x ?y)
	(nextcol ?y ?x))

sees_XML(...) rules

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