How do I let computer be more smart w... Log Out | Topics | Search
Moderators | Register | Edit Profile

Zillions of Games Discussion Forum » Designing Games for Zillions » How do I let computer be more smart when dropping pieces? « Previous Next »

Author Message
Yu Ren Don (Dandolo)
New member
Username: Dandolo

Post Number: 1
Registered: 7-2008
Posted on Friday, October 10, 2008 - 3:57 am:   

Hi,

I want to design a variant of Chu Shogi.So I tried to trasforme Chu-Shogi.zrf based on Chu Shogi by Steve Evans to reach my target.


The rules of this variant are as following:

--------------

All Copper General, Kylin, Lance, Side Mover, Silver General,
Phoenix, Reverse Chariot, and Vertical Mover are removed from the
borad and put aside in advance. Other pieces are still on the
original board setup of Chu Shogi.

Once during the game, a player may put his one of the removed pieces
on any unoccupied adjacent square of the friend pieces, instead of
making a normal move. But only Lance cannot be dropped in last rank.
After this, the piece moves as a usual pieces. When captured,
unlike Modern Shogi, the piece can't be dropped again. Other rules
are as in Chu Shogi.


--------------


The rule mentioned above can work. Sadly, AI is so poor:Computer sometimes just dropped his pieces to cannon fodder.


How do I let computer be more smart when
dropping pieces? Any help would be appreciated. Thank you.

The zrf remaining to be solved is available from following link:

http://pika. cs.nctu.edu. tw/lit/HeiseiSho gi.rar
Keith Carter (Keithc)
New member
Username: Keithc

Post Number: 166
Registered: 8-2000
Posted on Sunday, October 12, 2008 - 9:54 pm:   

Chu Shogi, with its 12x12 board and 92 pieces, has a huge branching factor. As soon as a piece is captured and a drop can be made the branching factor increases by 144 minus the number of pieces already on the board. I think Western Chess has a branching factor of only about 35. The AI is never going to be able to look far enough ahead to play well. Though is should be able to look far enough ahead to see the immediate capture of a dropped piece.
Yu Ren Don (Dandolo)
New member
Username: Dandolo

Post Number: 2
Registered: 7-2008
Posted on Saturday, October 25, 2008 - 10:49 am:   

Thanks!

Another somewhat stupid question:

I don't want the piece to be dropped any square adjacent to enemy king. How do I write?
Yu Ren Don (Dandolo)
New member
Username: Dandolo

Post Number: 3
Registered: 7-2008
Posted on Saturday, October 25, 2008 - 1:19 pm:   

Oh!

I resolved by myself.


(define drop-pawn
((verify empty? )
(verify (not (and (enemy? n)(piece? King n))))
(verify (not (and (enemy? s)(piece? King s))))
(verify (not (and (enemy? e)(piece? King e))))
(verify (not (and (enemy? w)(piece? King w))))
(verify (not (and (enemy? ne)(piece? Kingn ne))))
(verify (not (and (enemy? nw)(piece? King nw))))
(verify (not (and (enemy? se)(piece? King se))))
(verify (not (and (enemy? sw)(piece? King sw))))
)
M Winther (Kalroten)
New member
Username: Kalroten

Post Number: 110
Registered: 1-2007
Posted on Sunday, October 26, 2008 - 8:44 am:   

Yu, if the rules allow that you drop the pawn adjacent to an enemy king, then you cannot use this. If the human player wants to do this, then this code will prohibit it.

Instead you must *discourage* a drop adjacent to the enemy king. This can be done by flipping a friendly invisible piece outside the board. I always do this type of thing. Look in my Stratagemo program.
/Mats

Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action: