Check out Symmetric Chess, our featured variant for March, 2024.


[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Latest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Comments by epicurus

Later Reverse Order EarlierEarliest
KINGDROPS: new game and design goals[Subject Thread] [Add Response]
Matteo Perlini wrote on Tue, Jan 29, 2013 05:47 PM UTC:
Hello everybody!

Finally I can post the Zillions file of KingsDrop: KingsDrop.

Unlucky I was not able to perfectly implement the "exchanging rule", sometimes it works, sometimes it doesn't. Someone can help me, please?


Below it is the last version of the rules. I think now they are more organic and simpler. (Maybe someone have noticed the small change of the name of the game. Eheh.)

I really interested in this my project, so I need your feedbacks. Please let me know your opinions.


KingsDrop
by Matteo Perlini


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modification.

PIECES
4 Spearmen: move one square straight forward or sidewards
4 Archers: move one square diagonally forward
2 Rooks: like FIDE Rooks but they move up to three square orthogonally (no castling)
2 Bishops: like FIDE Bishops but they move up to three square diagonally
2 Queens: like FIDE Queens but they move up to two square orthogonally or diagonally
2 Kings: move to any orthogonally or diagonally adjacent space

SETUP
The game begins with an empty board. White player places in his first two rows all the pieces. The order of the pieces is up to White.

When White has finished, the same procedure is followed by the Black.

TURN
A player can make up to three moves per turn. He has to do the maximum number of moves available. If he has no move available, he pass.

One move consists in one of the two following actions:
- dropping a new piece in the board from the reserve;
- moving a pieces on the board that it is not moved or dropped in the present turn.

Just one drop per turn is allowed.

EXCHANGE
When a player captures a Spearman, an Archer or a King, this piece is permanently removed from the game; but the other pieces (Bishop, Rook and Queen) go into the opponent's prison.

At the end of the turn, if a player has in his prison a type of piece already present in the opponent's prison (Rook and Rook; Bishop and Bishop; or Queen and Queen), there is the prisoners' exchange: the white piece in the black prison is moved to the white reserve, the black piece in the white prison is moved to the black reserve.
The prisoners' exchange is mandatory and it is not considered a move.

DROPPING
Dropping consists in moving a piece from own reserve to the board, placing the piece in an empty square adjacent to one of the Kings.

THE KINGS
- No check or checkmate.
- The King can move into a square under attack.
- The King can be captured like the other pieces.

OBJECTIVE
The winner is the first player who reach one of the two following objectives:
- capturing one of the two opposite Kings;
- getting a Spearman or an Archer to the last row (the eighth row for the white player and the first one for the black player).

The three times repetition of the same position (considering the pieces on the board and in the reserve) is a loss.

SwopChess: a new modest variant[Subject Thread] [Add Response]
Matteo Perlini wrote on Wed, Jan 16, 2013 02:58 PM UTC:
SwopChess
by Matteo Perlini


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modification:

1. A non-royal piece (Queen, Rook, Bishop, Knight and Pawn) instead of capturing a non-royal piece it changes place with its attackable enemy or friend's pieces.

2. A non-royal piece doesn't swop with the (enemy or friend's) King, it just checks/checkmates the enemy's King.

3. King never swops, King can capture the other enemy's pieces.

3. Pawns promote when they move or swop to the last row. Pawns don't promote if they are swopped by a piece to the last row.

4. Repetition is a loss.


You can download the Zillions file here: SwopChess.


Your feedback would be greatly appreciated. :-)

KINGDROPS: new game and design goals[Subject Thread] [Add Response]
Matteo Perlini wrote on Mon, Jan 7, 2013 02:44 PM UTC:
I have updated the rules of KingDrops.

Unlucky I'm not able to implement the "exchanging rule" in Zillions language. Someone can help me about?



Kingdrops
by Matteo Perlini


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modification.

PIECES
4 spearmen: move one square straight forward
4 archers: move one square diagonally forward
2 rooks: move up to three square orthogonally (no castling)
2 bishops: move up to three square diagonally
2 guards: move to any orthogonally or diagonally adjacent space
1 queen: move up to two square orthogonally or diagonally
1 king: move to any orthogonally or diagonally adjacent space

SETUP
The game begins with an empty board. White player places in his first two rows all the pieces. The order of the pieces is up to the white player.

When White has finished, the same procedure is followed by the black player.

TURN
A player can make up to three moves per turn. He has to do the maximum number of moves available. If he has no move available, he pass.

One move consists in one of the two following actions:
- dropping a new piece in the board from the reserve;
- moving a pieces on the board that it is not moved or dropped in the present turn.

Just one drop per turn is allowed.

EXCHANGE
When a player captures a Spearman, an Archer or the King this piece is permanently removed from the game, but the other pieces go into the opponent's prison.

At the end of the turn, if a player has in his prison a type of piece already present in the opponent's prison (rook and rook; bishop and bishop; guard and guard; or queen and queen), there is the prisoners' exchange: the white piece in the black prison is moved to the white reserve, the black piece in the white prison is moved to the black reserve.
The prisoners' exchange is mandatory and is not a move.

DROPPING
Dropping consists in a player moving a piece from his reserve to the board, placing the piece in a empty square chosen between the eight squares adjacent to the king.

THE KING
- No check or checkmate.
- The king can move into a square under attack.
- The king can be captured like the other pieces.
- If the king is under attack, the player can move it only with the first move.

OBJECTIVE
The winner is the first player who reach one of the two following objectives:
- capturing the opposite king;
- getting the King or a Spearman or an Archer to the last row (the eighth row for the white player and the first one for the black player).

The three times repetition of the same position (considering the pieces on the board and in the reserve) is a loss.

[Rules updated on January 7, 2013]

The Future[Subject Thread] [Add Response]
Matteo Perlini wrote on Mon, Jan 7, 2013 02:36 PM UTC:
Hi Kenneth,

you are right. It is more important the horizontal of action (the exponent)
than the branching factor (the base) for that exponentiation formula. But I
believe that the formula num_turns^branch_fact is not a reliable measure
for the depth of a game.

I have two arguments:

1. We should count the number of important decisions per turn, not the
general number of move per turn. Take this stupid game played on a goban:
in every turn the player drop a single stone, the winning player is the
last dropping player. This game is as deep as Go with that formula,
actually it has zero depth.

2. If we have an opaque and/or a highly tactical game (with zero strategy)
that has an average of 300 turn, those turns don't add extra depth to the
game.

About the first point, we usually can ignore it. But I believe the second
point is important for designing a game.

If we want true deep games, difficult for AI, we have to focus on big
branching factor and extremely stratigical games. In my view a strategical
game is a game in which is "easy" to look ahead and that this looking
ahead is the central skill for winning the game.

I’m trying to follow this way designing my cv Kingdrops:
http://www.chessvariants.org/index/displaycomment.php?commentid=29503

PawnX: new modest vatiant[Subject Thread] [Add Response]
Matteo Perlini wrote on Mon, Dec 24, 2012 02:01 PM UTC:
Hi Alfred,

thanks for taking the time to test my game.

1) In that situation you can move the King in d2 because d2 is not under
attack of the Knight. For each piece, if a piece can capture a Pawn, that
piece have to capture that Pawn. So, in your situation the King is not
moving into check.

2) This is a problem. If you read the previous messages in this topic you
see I have tried to solve this problem, without success. I'm not able to
implement the rule "if the King is in check, capturing a Pawn is no more
mandatory". If you can solve this problem I would be grateful to you. :-)
Anyway, I have found without this rule the game is playable as well.

Matteo Perlini wrote on Thu, Dec 6, 2012 02:14 PM UTC:
Here the updated version of the game, with a new name too. :-)


PawnTrap
by Matteo Perlini


You can download the zillions file here: PawnTrap.


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modifications:

1. if possible, it is mandatory to capture an enemy Pawn;
2. Bishops, rooks and queens can move just up to 3 squares;
3. stalemate is a loss for the stalemated opponent.

Let me know your feedbacks please. ;-)

Matteo Perlini wrote on Thu, Dec 6, 2012 02:00 PM UTC:
Mats, with "add" the program still doesn't work. Anyway, I'm following
your advice and simplify the rules. ;-)

Matteo Perlini wrote on Tue, Dec 4, 2012 08:40 PM UTC:
Mats, thanks. This solves part of the problem. The whole solution is this one:

(define shift1-check (
(set-flag found false)
START
(while (and (on-board? next) (not-flag? found))
(if (and (piece? King) friend?) (verify attacked?) (set-flag found true))
next
) (verify (flag? found))
back
$1
(verify not-friend?)
(set-flag found? false)
add
))

But, the problem is the huge computational complexity of this implementation. It takes some seconds just to calculate the movable pieces. So this solution is not a practical one.

I have tried to implement a solution with a dummy piece that check whether there is an attacked king, if so move a dummy piece. But it seems I don't know some basic concepts.

At the end of each players' moves, I want the dummy player do that:
- clear the position "king-check"
- scan all the boar
- if the king is attacked, then create a marker in position "king-check"

This is what I have implemented:

(define checking
(
cascade
(capture king-check)
add
(set-flag found false)
START
(while (and (on-board? next) (not-flag? found))
(if (and (piece? King) friend?) (verify attacked?) (set-flag found true))
next
)
(verify (flag? found))
back
(create Marker king-check)
)
)


Unlucky this solution doesn't work. Any ideas? :-)

Matteo Perlini wrote on Fri, Nov 30, 2012 02:36 PM UTC:
Mats, you are right, I didn't consider that case. So now I have 3 type of move (from higher priority to lower): check-type, tasty-type, normal-type.

Your proposed solution, I guess, it is very cpu consuming, because for each move we have to scan all the board. In my last post I was talking about a neutral player that check if the king is in check before each player (and move a dummy-piece if it is so). What do you thing about it?

Anyhow, I have tried to implement your solution but I had a parse error. I defined the move in this way:

(define shift1-check (
START
(while (on-board? next) (if (and (piece? King) friend?) (verify attacked?) (set-flag found? true))
next
)
(verify found?)
$1
(verify not-friend?)
(set-flag found? false)
add
))

Where is the error?


Matteo Perlini wrote on Mon, Nov 26, 2012 10:24 AM UTC:
Hi M. Winther,

>>>It is generally recommended for newcomers to Zillions programming to begin with a simpler game.<<<

I know, but I cannot limit my imagination. :-)

>>>I suppose, the simplest way to solve this is to introduce yet another move-type which has the highest priority of all.<<<

I think it is enough just two type of move: normal and "tasty". In the tasty moves, with higher priority, you verify (KING-NOT-IN-CHECK AND IT-IS-POSSIBLE-TO-CAPTURE-A-PAWN).

>>>So you must loop through the board squares until you find the friendly king, and verify that it is threatened.<<<

I'm having big trouble here. I wrote:

(piece
(name Controller)
(dummy)
(moves
(
capture king-check
START next
(while on-board?
(if (and attacked? (piece? King))
(create Marker king-check) )
next
)
add
)
)
)


The idea behind is: a scan all the board and if any king is in check it is moved a marker in the dummy square named "king-check". I use "capture king-check" to clean the dummy square. (Assume I already defined all the links with "next", starting from the dummy square START.)

The problem is this piece of code doesn't work. What am I doing wrong?

Matteo Perlini wrote on Tue, Nov 20, 2012 12:34 PM UTC:
**M. Winther wrote:** Zillions forces you to make a move that protects the
king, and you cannot make another move.

So it is easy to enforce the rule that an enemy pawn must be captured.
Simply add another "move-type" in every piece definition. This move type
is exactly the same as the normal move-type except that (1) it is set to
higher priority (2) you must verify before the move is executed that an
enemy pawn is captured: "(verify enemy?)(verify (piece? Pawn))". 

This will enforce the capture of an enemy pawn provided that the king is
not in check. It will still enforce the capture of a pawn if the king is
protected thereby.
***

I have done this procedure, as you can see in the zillions file I have
posted in the first post of this discussion. I have a higher priority
move-type, called “tasty-moves”, for each piece that check if it is
possible to capture a pawn. If this is not possible , then you can make
“normal” moves.

But there is a problem, a big problem. If the king is in check and you can
capture a pawn, for Zillions’ AI the only possible moves are those in
which you capture a pawn, but with those moves you cannot get the king out
of check, so it is checkmate. Not what I want.

There is another problem. The situation is that a knight is protecting a
king from an enemy bishop: white has Ke1, Nd2; black has Bb4. But there is
an enemy pawn in e4, so the knight can capture it. Now, I want that the
knight doesn’t move because if it do so, the king would be in check. But
for Zillions’ AI there is no possible move, so it is stalemate. Not what
I want.

Any ideas?

p.s. I sent you an e-mail.

Hostage Chess. Pieces taken are held hostage and can be exchanged against other pieces and then dropped. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
Matteo Perlini wrote on Mon, Nov 19, 2012 06:15 PM UTC:
Doa Vo, I have studied but unfortunately I cannot implement my function.

In technical terms what I need to do is this:

1. looping in prison-white-zone and in prison-black-zone
2. if in prison-white-zone there is a piece matching the type of a piece in prison-black-zone, then those pieces move to a certain zone
3. the loop ends when all prison-white-zone is scanned

I'm stuck so I really need help. :-)

PawnX: new modest vatiant[Subject Thread] [Add Response]
Matteo Perlini wrote on Mon, Nov 19, 2012 09:58 AM UTC:
Hi Winther,

>>>If you want to know whether your king is threatened, you'll have to
search out where it is, and then check this square with the "attacked?"
command.

Yes, I need to know where the king is, but I don't know how to do that.
Could you please explain it to me more in detail?

I need this piece of code because I want to change my first rule in this
one:

1. if possible and if the king is not in check, it is mandatory to capture
an enemy pawn


Thanks.

Matteo Perlini wrote on Tue, Nov 13, 2012 02:20 PM UTC:
I'm implementing a variant with bishops, rooks and queen move up to 4
squares. I think this will be better because decrease the "pawn appeal"
factor.
I will let you know how it goes.

Anyway, I need a little help with zillion programming. How can I implement
the rule "if the king is attacked ..." before a move of a non-king piece?

Matteo Perlini wrote on Thu, Nov 8, 2012 12:51 AM UTC:
Hi Alfred, thanks for trying PawnX.

Yes this is what I expected, consistent with the rules. After Bh6, the
white knight should capture Pf7 or Ph7 but he can't, otherwise the white
king would be in check. So white is in stalemate, losing the game.

In all my tests (AI vs. AI) the games never ended in so few moves.
Moreover, games usually end with a checkmate. What thinking time did you
set for the AI? In PawnX, AI has to look ahead more so it needs more
thinking time.

Did you do other tests? How did they go?

P.S. For now, I have noticed is a losing strategy to develop non-pawn too
early in the game. You should move more pawns in the opening, setting traps
for the enemy. Yes, I see pawns as traps.

Matteo Perlini wrote on Tue, Nov 6, 2012 08:45 PM UTC:
PawnTrap
by Matteo Perlini


What if pawns, although military weak men, were rich merchants? Of course, they would have a lot of money with them, so they would be a delicious booty.

This is the thematic justification for the following modification of the original chess rule: if possible, it is mandatory to capture an enemy pawn.

This little rule alters the gameplay deeply. Each move is more important and has much more consequences. The game is more positional and players are more pushed to look ahead.

You can download the zillions file here: PawnTrap.


Rules


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modifications:

1. if possible, it is mandatory to capture an enemy Pawn;
2. Bishops, rooks and queen can move just up to 3 squares;
3. stalemate is a loss for the stalemated opponent.

Let me know your feedbacks please. :-)

EDIT: name and rules updated [06DIC2012]

Hostage Chess. Pieces taken are held hostage and can be exchanged against other pieces and then dropped. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
Matteo Perlini wrote on Tue, Nov 6, 2012 03:59 PM UTC:
Doa Vo, thanks for the reply.

With "automatic exchange" I mean:

"At the end of the turn, if a player has in his prison a type of piece already present in the opponent's prison (rook and rook; bishop and bishop; guard and guard; or queen and queen), the prisoners' exchange is mandatory: the white piece in the black prison is moved to the white reserve, the black piece in the white prison is moved to the black reserve."

This process is mandatory at the end of the turn, so I would like that a dummy player could do that. That is, the players don't exchange the hostages, the AI do that for them.

Sorry for my English. :-)

Matteo Perlini wrote on Tue, Nov 6, 2012 11:03 AM UTC:
My cv has a similar exchanging pieces protocol. But it is possible to exchange only pieces of the same type: rook with rook, bishop with bishop, and so on. And, this is important, the exchange is automatic (without interaction with the players) at the end of the turn.

Can someone help me to implement this mechanism? How Hostage zillions file can be modified in this way?

DoubleRace: new game[Subject Thread] [Add Response]
Matteo Perlini wrote on Mon, Oct 22, 2012 06:55 PM UTC:
Hi. This is my second contribution to the CV.org community.

My new creation is DoubleRace, where I wanted to explore the main goal I imposed to my Kingdrops. That is, the game should have a big strategic depth.

I divided this main goal into two subgoals:
1. big game-tree
2. great clarity, that is easy to look ahead or easy to see down the game tree

For reaching the first subgoal my cv has:
a. three-move per turn
b. 10x10 board and 20 pieces per side

For reaching the second subgoal my cv has:
c. just 3 type of pieces
d. pieces with easy-to-visualize movements
e. short range pieces
f. multi-move with each piece can move just one time per turn

I would like to know your feedbacks on how to improve the game.

I wrote the zillions file. You can download it here: DoubleRace zillions files



DoubleRace
by Matteo Perlini


All rules of Orthodox Chess (FIDE Chess) apply, but with the following modification.

PIECES
8 rooks: move up to two square orthogonally (no castling)
8 bishops: move up to two square diagonally
2 kings: move to any orthogonally or diagonally adjacent space; or move two squares forward but without capturing and without passing or stopping in a square under attack

King's movement:



King can move with or without capturing to any red spot. Or King can move without capturing to any green spot, but, for example, if the king move to the "1" green spot, both the "1" red and green spots must not be under attack.

SETUP
The game begins with a board as in the picture below:



TURN
In the first turn, white has to make one move. After that, each player has to make three moves per turn.

OBJECTIVE
No checkmate. The kings can be captured.

The winner is the first player who reach one of the two following objectives:
- capturing the two opposite kings
- getting one king to his last row (the tenth one for the white player and the first one for the black player)

The repetition of the same position for the third time is a loss. The player in stalemate loses the game.

First move advantage in Shogi[Subject Thread] [Add Response]
Matteo Perlini wrote on Wed, Oct 3, 2012 03:24 PM UTC:
Hi Jorg,

I don't think it was just a statistical fluctuation in 2008. There were "2,323 public matches in fiscal 2008", not few matches. Maybe it is because Shogi is really balanced?

I would like to hear some comments from someone with a strong statistical knowledge.


p.s. Small sample, anyway: http://www.iggamecenter.com/stats/game95.html
Number of wins by the 1st player (excluding quits) 285 (41.91%)
Number of wins by the 2nd player (excluding quits) 357 (52.50%)

KINGDROPS: new game and design goals[Subject Thread] [Add Response]
Matteo Perlini wrote on Fri, Sep 28, 2012 02:37 AM UTC:
For now I found those 2 problems in the implementation of Kingdrops:

1. no piece can move more than once per turn: I have found a solution for
2-moves per turn ("verify not-last-to?") but I'm without solution for my
3-moves per turn

2. how can I restrict the dropping zone to the king's 8 adjacent squares?

3. the king has to get out of check in the fist move... but how? (maybe
this is impossible in zillions?)

Matteo Perlini wrote on Thu, Sep 27, 2012 11:30 PM UTC:
Hi Rich.  ;-)

Guessed right, my variant has no leapers for clarity. But also for
“elegance” (or, at least, for “how I see elegance and
coherence/harmony”). 

Yes I have Zillions. Now I have to start to study for writing code for it.
I think it will be quite difficult because I have to implement a lot of
features: restricted dropping rule, 3-moves per turn, arrangement phase,
exchanging rule and multi-objectives. Too much! But I will try.  :-)

Matteo Perlini wrote on Thu, Sep 27, 2012 02:51 PM UTC:
Christine, thank you for the compliment.  ;-)

Michael, I think it is better to keep the rule as simpler as possible:
keeping the rules without the exception in the first turn. In case, in the
future the two-moves-in-the-white's-first-turn could be added.

>>> I think my rule is about right for a triple move game with a) fixed
setup b) random setup or c) players choose setup by placing one piece at a
time in turns.

With an odd number of moves per turn the perfect balancing is impossible.
Why do you think a 1-move-advantage of black is better than a
1-move-advantage of white?

First move advantage in Western Chess - why does it exist?[Subject Thread] [Add Response]
Matteo Perlini wrote on Thu, Sep 27, 2012 01:10 PM UTC:
Thanks Derek for the pdf.

Jeremy you are totally right. I don't know why I forgot the arranging
phase in Arimaa. Of course this is a relevant factor, even if we don't
know how strong this factor is compared with the other 2 I have told (high
complexity of the game and shortrange pieces).

Maybe I should talk about Shogi instead. (By the way, a new discussions has
been open about the first move advantage in Shogi.) Shogi is very close to
Chess but it seems much more balanced. Why?

KINGDROPS: new game and design goals[Subject Thread] [Add Response]
Matteo Perlini wrote on Wed, Sep 26, 2012 10:23 AM UTC:
Hi Christine, thanks.

>>> I love the idea of drops having to be placed beside the king, and that means also you could do 3 drops on one turn, right?

No, the current rule is just 1 drop per turn. I think this create an interesting tension when you have to choose between moving 3 pieces and moving 2 pieces and drop one. If you would have up to 3 drop per turn this tension would be removed from the gameplay. Moreover, I believe multi-drops per turn makes the game too much defensive.

Hi Michael, thanks to you too.

>>> The triple move idea is untried, so far as I know, and will need play testing to see if it makes the game too explosive. If that is the case, this game should still keep most of its flavor as a double move variant. (Hope triple move works out, I really like that.)

I have played too few games for having a reliable opinion, but for now 3-moves per turn seems working well. I think this is made possible by 2 factors: 1) short-range pieces and 2) a piece can move just once. But we will see.

>>> In any case, a balance rule to reduce the first move advantage is in order. For a double move game, the rule is well known--White may make only one move on the first turn. I propose a triple move analog to that rule:
>>> On the first turn, White makes one move. On the first turn, Black makes one or two moves. On the second turn, White makes one or two moves. On subsequent turns, the player on move makes one, two, or three moves.

Balancing the game is where I had/have much to think about. Here I presented the rules in this form because one of my last thought was to try as in Arimaa: proposing the simplest form (without the exceptions for the first turns) hoping the non-fixed setup can neutralize the first move advantage.

I see your proposal as problematic because it gives the advantage to the second player, and this advantage is summed to the advantage given by being the last player in the non-fixed setup.

Maybe a solution can be this: in white's first turn 1 or 2 moves, after that up to 3 moves. This gives a small advantage to white but black has the advantage from the not-fixed setup.

What do you think?

25 comments displayed

Later Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.