You're welcome to have a go Patrik. I have updated the chess960 patch in the "patches" directory with a few tweaks, including trying to set UCI_Chess960 properly.
But getting this going is very tough. Like Gregor said - because Scid's main functionality is as a database, it is much more complicated than just getting the engines to work. Steve On Sat, Sep 26, 2015 at 2:31 AM, mrx <patrik....@gmail.com> wrote: > Hi, > > I would be interested in giving it a try. Though the knowledge level of the > code base you hint is required to do this is far above mine. > > Thanks for your prompt answer! > > // Patrik > > Den 25 sep 2015 17:58 skrev "Gregor Cramer" <rema...@gmx.net>: >> >> Hi Patrik, >> >> > What is the internal move generator used for? >> >> 1. Validation of the move on the board. The current validation does not >> allow >> to play Chess960 castlings (except if king is on e, and the rooks are on >> a,h). >> >> 2. Computation of move suggestions, this feature facilitates move input on >> the >> GUI board. >> >> > Is it just the castling rules that are missing from the internal move >> > generator? >> >> Yes, but this requires more changes, for example how a castling move will >> be >> stored inside the move structure, the current handling is not appropriate >> for >> Chess960. Furthermore the code of the board stuff has to be prepared for >> these >> castling rules. >> >> > What is the opening tree used for when i play against an engine? >> >> It depends on your decision if you want to use the opening tree or not. >> But >> implementing the Chess960 castling rules without preparing also the >> position >> search (for the opening tree) for Chess960 would be half-baked. >> >> > Concerning the castling rules, wouldn't the engine you play against tell >> > you if you try to make an invalid move? I cannot see why Scid vs. PC >> > would >> > have to implement the castling rules at all, if Scid vs. PC could handle >> > that response. >> >> Some engines are responding with an error message in case of an invalid >> move, >> some are silently ignoring such a move, and some are crashing. The >> behavior >> depends on the diligence of the developer. >> >> Scid cannot handle the response if the move is a real Chess960 castling, >> this >> move cannot be played on the board without support. Any response of the >> engine >> will be validated - without validation it would be possible to store >> corrupted >> games in the database if the engine is responding with an invalid move >> (the >> binary decoding of the moves in the database depends on the standard chess >> rules, an invalid move is corrupting the database) - and without support >> the >> validation of Chess960 castling fails. >> >> > Perhaps it would be a good start to just support Chess960 against an >> > engine >> > to begin with. >> >> This is not possible, the engine support requires that the move generator >> (and >> this implies also the internal board) is already prepared for Chess960. >> The >> effort for Chess960 support is high, and requires deep knowledge of the >> code >> base. The only easement is that the binary encoding of the moves in the >> database must not be changed, the current encoding for castling moves even >> works for Chess960. But a new database version number - this means .si5 - >> is >> unavoidable (if you store Chess960 games in .si4, then an older Scid >> version >> will have problems with such a database). Probably sometimes someone will >> do >> the implementation for Chess960!? >> >> Cheers, >> Gregor > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Scidvspc-users mailing list > Scidvspc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/scidvspc-users > ------------------------------------------------------------------------------ _______________________________________________ Scidvspc-users mailing list Scidvspc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/scidvspc-users