Check out Alice Chess, our featured variant for June, 2024.


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

Comments/Ratings for a Single Item

EarliestEarlier Reverse Order LaterLatest
ChessVA computer program
. Program for playing numerous Chess variants against your PC.[All Comments] [Add Comment or Rating]
📝Greg Strong wrote on Fri, Oct 2, 2009 10:51 PM UTC:
Doing well, thanks!  How are you?

Sorry, been away for a while.  I bounce in and out ...

If you'd like to add lines to the CWDA opening book, I'd be happy to incorporate them in the next release.  I'd also be happy to incorporate your Mighty Men army if there's nothing that makes it technically difficult.  Can you describe the army?

Vitya Makov wrote on Sat, Oct 3, 2009 11:14 AM UTC:
I'm well. Invented two original chessvariants (Maorider Chess and Bungalow Shatranj) and some 'light' variants (not posted yet): Rookaba Shatranj, Rooks Chess.

Mighty Men:

Man (b,g lines) moves like a king (ferz + wazir).
Benz (c,f lines) moves like a bishop forward or like a
rook backward.
Pioneer (a,h lines) moves like a man or like a rook
forward or backward.
Cyborg (d line) moves like wazir, dabbaba, knight or alfil.
IT DOESN'T
MOVE LIKE FERZ.

Ok. I'll work on different openings for different armies. I'll post openings here.

Yu Ren Dong wrote on Sat, Oct 3, 2009 01:38 PM UTC:

H. G. Muller wrote on Sun, Oct 4, 2009 07:32 PM UTC:
Sam, your idea of having WinBoard force moves into an engine that refuses them by loading the engine with the position after the move works really great. I implemented in WinBoard now, under control of the option -forceIllegalMoves. In combenation with -testLegality false, this now allows me to completely autmatically play a Schoolbook-Chess match between ChessV and Fairy-Max. Now and then (about 10% of the games ChessV plays a non-standard castling, which then shows up in the PGN as Kf1h1 or Kf1b1, and Fairy-Max is simply restarted. It was a bit of a pain to implement it, because initially the engine will still think the opposite side is to move, and the WinBoard-protocol edit command (which Fairy-Max uses) does not alter that, and the commands that do are deprecated, so the side-to-move has to be flipped by playng a dummy move. But that works smoothly now.

In reaction to some earlier remark you made: there was no reason for hacking WinBoard to suppress the popup after a match: there is a command-line option that controls it (-popupExitMessage false/true), which is remembered in the WinBoard settings file. I use PSWBTM to play the match, in stead of the scripts you use, and this uses that option automaticaly.

Sam Trenholme wrote on Mon, Oct 5, 2009 03:51 PM UTC:
H.G. Muller: I would be very interested in downloading a patch or tarball (.tar.bz2 or .tar.gz file) with your changes to Winboard allowing it to setup the pieces again should one side not recognize a legal move.

I could not find the download on your web page nor in the Winboard forum.

This will make Schoolbook 2010 a lot easier to implement.


Tony Quintanilla wrote on Tue, Oct 20, 2009 03:05 AM UTC:Excellent ★★★★★
I just uploaded and played the new version. Works great!

Garth Wallace wrote on Sun, Dec 20, 2009 03:58 AM UTC:
The link currently leads to a domain squatter.

Sam Trenholme wrote on Sun, Dec 20, 2009 09:09 AM UTC:
Someone is going to have to fix the link on this page. In the meantime, again, it’s here:

http://samiam.org/chessv


📝Greg Strong wrote on Sun, Nov 13, 2016 03:09 AM UTC:

ChessV 0.95 Released

After many years, I am releasing an updated version of ChessV.  The previous version, 0.94 introduced a problem that actually greatly weakened playing strength from version 0.93.  This version corrects that issue and adds other speed enhancements which should make this by far the strongest version.

ChessV can be downloaded from my new domain www.chessv.org. There is no installation program.  Just download the correct version (32-bit or 64-bit), unzip, and run ChessV.exe.

Please note that, as some of you know, there is a new ChessV, version 2.0, rewritten completely from scratch that is forthcoming.  Hopefully I'll be releasing that in the near future too, but that isn't what this is.  This is a new version of the "classic" ChessV.  I don't know if there will be any further releases of the classic version, but since version 0.94 had issues, it didn't seem right to leave that unfixed.

Changes from previous version:

  • Multiple bug fixes, including one that seriously impacted playing strength

  • Addition of Late Move Reductions (LMR), an engine feature that will further enhance playing strength

  • Added support for Enep by Aurelian Florea

  • Fixed a problem with Ralph Betza's Chess with Augmented Knights that I only discovered while trying to use it as a template for Enep.  This has probably been broken for many versions.  Actually, this Betza invention is so obscure, I had to dig pretty deeply to find the chessvariants.com page for it.

  • Updated the implementation of Joe Joyce's Modern Shatranj to reflect the new, simplified promotion rule.  Previous versions actually did support the complex rule, but it required a special class to implement it (I couldn't just use the standard class the other Shatranj variants use.)  This change allowed me to eliminate two files and over 100 lines of source code.  Thanks, Joe, for agreeing to simplify things :)

Please let me know if you have any questions or issues with this version.


H. G. Muller wrote on Sun, Nov 13, 2016 09:31 PM UTC:Excellent ★★★★★

Great news, and congratulations. It is a really good thing that you took the trouble to fix the bugs that were inadvertantly introduced in 0.94, because that had some interesting new variants not supported by older versions (such as Spartan Chess, and, IIRC, even Xiangqi.) Now you can terminate this ground-breaking project with a polished product.


Joseph DiMuro wrote on Mon, Nov 14, 2016 04:33 AM UTC:

I clicked on the link for the 32-bit version, but I got the 64-bit version instead (which doesn't work on my computer). Am I doing something wrong?

Edit: never mind, I figured it out. Just had to change the URL manually. Got the right file.

📝Greg Strong wrote on Mon, Nov 14, 2016 02:42 PM UTC:

Oops, it was linked to the incorrect file.  Thank you for letting me know, Jospeh.  It's been fixed.


Aurelian Florea wrote on Wed, Nov 16, 2016 05:47 PM UTC:

Thanks, greg for adding Enep!


Aurelian Florea wrote on Wed, Nov 16, 2016 06:15 PM UTC:

Greg,

I just watched an Enep game where the Enep knight has captured with an wazir move, this is not supposed to happen, could you please check?


📝Greg Strong wrote on Fri, Nov 18, 2016 03:55 PM UTC:

You're right, something is definitely wrong with that.  Thanks for letting me know, I'll take a look when I get a chance.


Aurelian Florea wrote on Fri, Nov 18, 2016 04:25 PM UTC:

Thanks!


Aurelian Florea wrote on Sat, Nov 19, 2016 08:45 AM UTC:

Hello again Greg,

I contemplating writing code for my upcomming (still in testing phase) apothecary games, but I see the way movement is implemented, that there is no easy way of implementing the aanca and griffin.

The move info contains rank modification, file modification and maximum and minimum number of steps from what I understood. Nothing about a second legged move.

Am I correct? Do I miss something?

 


📝Greg Strong wrote on Sun, Nov 20, 2016 05:34 PM UTC:

Hi Aurelian,

Yes, you are correct.  I never added Grande Acedrix because the Griffon move isn't directly supported.  This would be tricky to implement in a general way.  It's not just being able to generate the moves - that's not too bad.  It gets more complicated with the IsSquareAttacked function used for detecting Check.  IsSquareAttacked starts at the square and "backs up" in every direction the game uses until it hits a piece or leaves the board.  If it hits a piece, it determines if that piece can move that far in that direction.  To support moves with multiple parts, the logic in IsSquareAttacked would get pretty complicated.  To see if a square is attacked by a Griffin, as it is backing up in Rook steps, for each step, it would then need to back up one diagonal step each way and check for a piece that can move like a Griffon.  Then there is the problem of Static Exchange Evaluation (SEE).  This gets even more complicated, but ChessV allows you to just turn off SEE for specific games.  Some of the games already supported have to turn off SEE.  It's not really necessary, it just makes then engine faster.

All that said, it is possible to implement the Griffon in ChessV if you are really dedicated, but it is probably more trouble than it is worth.  You can override the GenerateSpecialMoves function of the Game class to add support for moves that the internal move generator can't handle.  Most of the pieces from Ultima work this way.  (Look at the implementation of Chess with Ultima Pieces for an example.)  Then you also have to override the IsSquareAttacked virtual function as well.

You could also look at Postduif by Evert Glebbeek.  It was designed to play Grande Acedrix.  In its move generator, every move has a step/leap component followed by a slide component (either one of which can be zero to skip it.)  It may have problems with some of the other pieces or rules for Apothecary though.  I haven't looked at it in detail.

Cheers,

Greg


H. G. Muller wrote on Sun, Nov 20, 2016 10:45 PM UTC:

In Fairy-Max I use the ultimate robust way for testing whether in check: just run the move generator for the opponent, and see if it captures King. But that is slow. A more general fast way for detecting attacks would be to not start from the board but from the piece list, and check for every piece whether is is alligned with the King for checking based on a lookup table indexed by the relative position to the King.


Aurelian Florea wrote on Mon, Nov 21, 2016 05:24 AM UTC:

Thanks, Greg

I'll attempt to implement apothecary in chessV, hope to succeed.


Kevin Pacey wrote on Mon, Nov 21, 2016 12:37 PM UTC:

Greg Strong wrote:

"...You can open one of the Chess presets, click Edit to modify it, and just erase all the code in the seven boxes at the bottom to stop it from enforcing any rules.  Then, in the first box, change the name from Chess to Asymmetric Chess, enter your user id and password, and click Save.  It will give you a link that you can then use to send out invitations to play..."

 

As an experiment I tried doing this procedure for making a preset with a simple chess variant of mine called "Throne Chess" instead (same rules as chess, except playing K to K8 is an extra victory condition, "Thronemate"). I had some success, but I saw nowhere that a little PBM green box icon symbol for a Throne Chess preset had been created, with myself credited as the author. There was created a default file for Throne Chess, stored under my user ID, in Game Courier's programmer's file log system. Throne Chess was not showing as having, say, 0 games played for it so far under "All Games" in the Game Courier Menu though. I edited the 'settings name' from default to be called Throne Chess, later, along with redirecting the default file version to it, too, but still no little PBM green box preset icon showing anywhere upon searching the website. I'm wondering if I have to do something rather complicated, or beyond me, instead of my doing what was recommended to Dmitry, to get a little PBM green box preset icon to come into existence (without having to play anyone a game online first).


📝Greg Strong wrote on Mon, Nov 21, 2016 02:55 PM UTC:

Hi Kevin,

Yes, there's another step to get the preset entered into the site index.  First, make sure you are logged in.  Then, from the pull-down menu with your name, select 'Post Your Own Game'.  Don't fill out the form on the first page, instead click the Create Game Courier Preset link.  Then fill out the forms.  For the form on the second page, you'll need the hyperlink to the preset to put in the description.  If you've lost the hyperlink, go to the play.chessvariants.com domain, and select 'Your Game Courier Settings Files' from the menu with your name.

Please be aware that the new submission won't show up in the index until approved by an editor.

Cheers,
Greg


📝Greg Strong wrote on Mon, Nov 21, 2016 03:05 PM UTC:

Good luck, Aurelian, that is ambitious.  Let me know if you have any questions.

For detecting Griffon/Aanaca attacks in IsSquareAttacked, I would not back up from the target square.  Instead, I would find all Griffons/Aanacas of the color, go through them one-by-one and step out from them to see if they reach the target square.  If they don't attack the target square, you can hand off to the base class implementation of IsSquareAttacked to handle everything else.


Kevin Pacey wrote on Mon, Nov 21, 2016 09:56 PM UTC:

Thanks Greg!


Aurelian Florea wrote on Tue, Nov 22, 2016 10:41 AM UTC:

Greg,

Well, there are two main reasons I'm doing this.

1. Implementing the correct promotion rule that fairy-max isn't able to do (i.e. promoting to a minor on 8th rank, also a rook at 9th rank and also a major piece (queen,griffin,aanca, archbishop,chancellor),at 10th rank)..

2. Adding the fool (imitator) that mimics the last move of the opponent.

Not sure how to do those now but I got hints for the second from the mimotaur implementation.

Technical question:

Where is the main and the .prj file? Both would help! I need the main to be able to test my creations.


25 comments displayed

EarliestEarlier Reverse Order LaterLatest

Permalink to the exact comments currently displayed.