-
-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
improve connection games #768
base: master
Are you sure you want to change the base?
Conversation
RainRat
commented
Mar 27, 2024
- Change evaluate.cpp to also take into account connectPieceTypes when evaluating how close to connectN
- Change evaluate.cpp to also take into account connectValue. There's not many misere variants to go on, but reversing the sign is a start.
- Expand symphony and picaria to not inherit from tictactoe. There was an empty connectPieceTypes when inheriting from tictactoe.
Thanks. Have you done any playing strength testing on the eval changes? https://github.com/ianfab/variantfishtest is a simple option if you need a tool to run tests. |
So to proceed, I could look into
|
Thanks, if basically no existing variants are affected by the eval changes regression testing is not required. Regarding the inheritance problem, I think this is because you are inheriting from variants with different (connection) piece types, so one needs to override connectPieceTypes in the inherited variants. For reference, the below code should be what narrows it down to IMMOBILE_PIECE when defining tic-tac-toe, and then further narrows down Fairy-Stockfish/src/variant.cpp Line 2077 in f3c982b
|
It seems the solution is to leave connectPieceTypes unchanged but have a new connectPieceTypesTrimmed in use during the game. |
Thanks, the fixes for evaluation, passing adjudication, and connection piece type inheritance look good to me. However, the optimizations of the connect adjudication are less clear cut to me. As I would like to be able to evaluate the bugfixes and optimizations independently, may I ask you to separate the optimizations into a different PR? |