You are not logged in. login register
Game HEKA
name HEKA
creator HuntedSouls
number of roles 2
stylesheet generic/generic.xsl
GDL v1
enabled
matches show matches
statistics show game statistics
description game of card and dice

Game Description

(role player1)
(role random)

(dice agua)
(dice fogo)
(dice terra)
(dice vida)
(dice ordem)
(dice caos)
(oppositedice agua fogo)
(oppositedice terra vida)
(oppositedice vida caos)

(god osiris )
(god isis )
(god seth )
(god neftis )

; no hidden information
(<= (sees ?role (did ?otherRole ?move))
	(role ?role)
	(does ?otherRole ?move)
)

(position osiris (row 1 1 2 1 3 1) (row 1 2 2 2 3 2) (row 1 3 2 3 3 3))
(position isis (row 1 3 1 2 1 1) (row 2 3 2 2 2 1) (row 3 3 3 2 3 1))
(position seth (row 3 1 2 1 1 1) (row 3 2 2 2 1 2) (row 3 3 2 3 1 3))
(position neftis (row 1 1 1 2 1 3) (row 2 1 2 2 2 3) (row 3 1 3 2 3 3))

(card (dice agua) (dice fogo) (dice vida) (god osiris) ) 
(card (dice agua) (dice terra) (dice vida) (god osiris) ) 
(card (dice agua) (dice agua) (dice fogo) (god osiris) ) 
(card (dice fogo) (dice agua) (dice terra) (god osiris) ) 
(card (dice fogo) (dice agua) (dice vida) (god osiris) ) 
(card (dice terra) (dice fogo) (dice agua) (god osiris) ) 
(card (dice vida) (dice terra) (dice agua) (god osiris) ) 
(card (dice agua) (dice terra) (dice fogo) (god osiris) ) 
(card (dice fogo) (dice vida) (dice terra) (god osiris) ) 
(card (dice vida) (dice agua) (dice terra) (god osiris) ) 

(card (dice agua) (dice fogo) (dice vida) (god isis) ) 
(card (dice agua) (dice terra) (dice vida) (god isis) ) 
(card (dice agua) (dice agua) (dice fogo) (god isis) ) 
(card (dice fogo) (dice agua) (dice terra) (god isis) ) 
(card (dice fogo) (dice agua) (dice vida) (god isis) ) 
(card (dice terra) (dice fogo) (dice agua) (god isis) ) 
(card (dice vida) (dice terra) (dice agua) (god isis) ) 
(card (dice agua) (dice terra) (dice fogo) (god isis) ) 
(card (dice fogo) (dice vida) (dice terra) (god isis) ) 
(card (dice vida) (dice agua) (dice terra) (god isis) ) 

(card (dice agua) (dice fogo) (dice vida) (god seth) ) 
(card (dice agua) (dice terra) (dice vida) (god seth) ) 
(card (dice agua) (dice agua) (dice fogo) (god seth) ) 
(card (dice fogo) (dice agua) (dice terra) (god seth) ) 
(card (dice fogo) (dice agua) (dice vida) (god seth) ) 
(card (dice terra) (dice fogo) (dice agua) (god seth) ) 
(card (dice vida) (dice terra) (dice agua) (god seth) ) 
(card (dice agua) (dice terra) (dice fogo) (god seth) ) 
(card (dice fogo) (dice vida) (dice terra) (god seth) ) 
(card (dice vida) (dice agua) (dice terra) (god seth) ) 

(card (dice agua) (dice fogo) (dice vida) (god neftis) ) 
(card (dice agua) (dice terra) (dice vida) (god neftis) ) 
(card (dice agua) (dice agua) (dice fogo) (god neftis) ) 
(card (dice fogo) (dice agua) (dice terra) (god neftis) ) 
(card (dice fogo) (dice agua) (dice vida) (god neftis) ) 
(card (dice terra) (dice fogo) (dice agua) (god neftis) ) 
(card (dice vida) (dice terra) (dice agua) (god neftis) ) 
(card (dice agua) (dice terra) (dice fogo) (god neftis) ) 
(card (dice fogo) (dice vida) (dice terra) (god neftis) ) 
(card (dice vida) (dice agua) (dice terra) (god neftis) ) 

(board 1 1 (dice agua) )
(board 1 2 (dice agua) )
(board 1 3 (dice agua) )
(board 2 1 (dice agua) )
(board 2 2 (dice agua) )
(board 2 3 (dice agua) )
(board 3 1 (dice agua) )
(board 3 2 (dice agua) )
(board 3 3 (dice agua) )
 
(board 11 (dice fogo) )
(board 1 2 (dice fogo) )
(board 1 3 (dice fogo) )
(board 2 1 (dice fogo) )
(board 2 2 (dice fogo) )
(board 23 (dice fogo) )
(board 3 1 (dice fogo) )
(board 3 2 (dice fogo) )
(board 3 3 (dice fogo) )

(board 1 1 (dice terra) )
(board 1 2 (dice terra) )
(board 1 3 (dice terra) )
(board 2 1 (dice terra) )
(board 2 2 (dice terra) )
(board 2 3 (dice terra) )
(board 3 1 (dice terra) )
(board 3 2 (dice terra) )
(board 3 3 (dice terra) )

(board 1 1 (dice vida) )
(board 1 2 (dice vida) )
(board 1 3 (dice vida) )
(board 2 1 (dice vida) )
(board 2 2 (dice vida) )
(board 2 3 (dice vida) )
(board 3 1 (dice vida) )
(board 3 2 (dice vida) )
(board 3 3 (dice vida) )

(board 1 1 (dice ordem) )
(board 1 2 (dice ordem) )
(board 1 3 (dice ordem) )
(board 2 1 (dice ordem) )
(board 2 2 (dice ordem) )
(board 2 3 (dice ordem) )
(board 3 1 (dice ordem) )
(board 3 2 (dice ordem) )
(board 3 3 (dice ordem) )

(board 1 1 (dice caos) )
(board 1 2 (dice caos) )
(board 1 3 (dice caos) )
(board 2 1 (dice caos) )
(board 2 2 (dice caos) )
(board 2 3 (dice caos) )
(board 3 1 (dice caos) )
(board 3 2 (dice caos) )
(board 3 3 (dice caos) )

(succ 0 1)
(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)
(succ 10 11)

(init (refresh 1))
(init (playerPOS (god osiris)))
(init (round 1))
(init (score 1))

(<= (legal random (roll agua)) (true (refresh ?a)))
(<= (legal random (roll fogo)) (true (refresh ?a)))
(<= (legal random (roll terra)) (true (refresh ?a)))
(<= (legal random (roll vida)) (true (refresh ?a)))
(<= (legal random (roll ordem)) (true (refresh ?a)))

(<= (legal random (roll agua)) (true (used ?a ?b ?c ?d ?e ?f ?g)))
(<= (legal random (roll fogo)) (true (used ?a ?b ?c ?d ?e ?f ?g)))
(<= (legal random (roll terra)) (true (used ?a ?b ?c ?d ?e ?f ?g)))
(<= (legal random (roll vida)) (true (used ?a ?b ?c ?d ?e ?f ?g)))
(<= (legal random (roll ordem)) (true (used ?a ?b ?c ?d ?e ?f ?g)))
(<= (legal random (roll caos)) (true (used ?a ?b ?c ?d ?e ?f ?g)))

(<= (legal random noop) (true (control player1)))

(<= (legal player1 noop) (true (refresh ?a)))
(<= (legal player1 noop) (true (used ?a ?b ?c ?d ?e ?f ?g)))

(<= (legal player1 (score ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (position ?deus (row ?a1 ?a2 ?b1 ?b2 ?c1 ?c2) ?shr1 ?shr2) (playerPOS (god ?deus)) (control player1) ~(board ?a1 ?a2 (dice caos)) ~(board ?b1 ?b2 (dice caos)) ~(board ?c1 ?c2 (dice caos)))
(<= (legal player1 (score ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (position ?deus ?shr1 (row ?a1 ?a2 ?b1 ?b2 ?c1 ?c2) ?shr2) (playerPOS (god ?deus)) (control player1) ~(board ?a1 ?a2 (dice caos)) ~(board ?b1 ?b2 (dice caos)) ~(board ?c1 ?c2 (dice caos)))
(<= (legal player1 (score ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (position ?deus ?shr1 ?shr2 (row ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (playerPOS (god ?deus)) (control player1) ~(board ?a1 ?a2 (dice caos)) ~(board ?b1 ?b2 (dice caos)) ~(board ?c1 ?c2 (dice caos)))
            
(<= (next (board 1 1 (dice ?roll)) (does random (roll ?roll)) (refresh 1)))

                
(<= (next (board 1 2 (dice ?roll)) (does random (roll ?roll)) (refresh 2)))
(<= (next (board 1 3 (dice ?roll)) (does random (roll ?roll)) (refresh 3)))
(<= (next (board 2 1 (dice ?roll)) (does random (roll ?roll)) (refresh 4)))
(<= (next (board 2 2 (dice ?roll)) (does random (roll ?roll)) (refresh 5)))
(<= (next (board 2 3 (dice ?roll)) (does random (roll ?roll)) (refresh 6)))
(<= (next (board 3 1 (dice ?roll)) (does random (roll ?roll)) (refresh 7)))                                        
(<= (next (board 3 2 (dice ?roll)) (does random (roll ?roll)) (refresh 8)))
(<= (next (board 3 3 (dice ?roll)) (does random (roll ?roll)) (refresh 9)))

(<= (next (refresh ?a)) (true (refresh ?b)) (succ ?b ?a))
                                                
(<= (next (control player1)) (true (refresh 9)))

(<= (next (used 1 ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (does player1 (score ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)))                                                
(<= (next (round ?a)) (does player1 ?shr1) (round ?b) (succ ?b?a))
(<= (next (score ?a)) (does player1 (score ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (score ?b) (succ ?b?a))

(<= (next (used ?n ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (true (used ?n2 ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)) (succ ?n2 ?n))
(<= (next (control player1)) (used 3 ?b ?c ?d ?e ?f ?g))
                                                
(<= (next (board ?a1 ?a2 (dice ?roll)) (does random (roll ?roll)) (used 1 ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)))                                                        
(<= (next (board ?b1 ?b2 (dice ?roll)) (does random (roll ?roll)) (used 2 ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)))
(<= (next (board ?c1 ?c2 (dice ?roll)) (does random (roll ?roll)) (used 3 ?a1 ?a2 ?b1 ?b2 ?c1 ?c2)))

(<= (goal player1 ?a) (score ?a))
(<= terminal (round 10))

sees_XML(...) rules

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