Author: Mike Byrne
Date: 22:21:15 08/07/02
To My Fellow Crafty Friends:
Sorry for the delay - I was testing a change that ultimately did not work out
well. This was almost Crafty 17.17 SE ;>)
"Crafty 17.16 SE a" is available for for free via email to mfbyrne_pa@msn.com.
Once you are on the list, there is no need to resubscribe. You will continue to
get free updates for as long as I feel like doing updates :). Should you ever
wish to be removed from the mailing list, simply type "remove" in the subject
field and I will remove you from the list.
Crafty 17.16 SE is an "unofficial" release of a modified "Crafty" chess program
that is authored by and copyrighted by Dr. Robert Hyatt. My changes are just a
few lines of code of thousands and thousands of lines of code written by Bob
Hyatt. He is most gracious for freely sharing his chess program source with the
world and without him - modified Crafty 17.16 SE simply does not exist.
Crafty 17.16 SE Update A -
We now have 16 predefined levels of play - winding its way from "pawngrabber" to
"standard" by using the "krafty" command. Each level has increased
understanding of piece value and a deeper search. To gain more flexibility,
search depth was replaced by nodes searched in these predefined settings. In
addition levels "pawngrabber" through "high_master" use the new option "dm"
<delay move> automatically.
So that if you play a 5 3 game on any setting, it will respond as if it was
playing a 5 3 game and not move instaneously. The idea behind this is that in
typical low settings, the computer will often respond instaneously - which is
not how a human opponent would play. This will give the lower settings a more
natural feel for the player. With the 16 predefined settings, you work your way
up through the different levels. Each subsequent level has a better piece
evaluation and and sees a about twice as deep as the previous level. The goal
was to make the levels progressive in a natural stepping up process. I estimate
that each level has a difference of about 100 elo points - starting with
"pawngrabber" at ~1000 ELO and ending with "high_master" at around ~2200-2300.
The "IM", "GM" and "Standard Levels" do not have any restrictions on depth and
would be considered "professional" levels.
Also, you would be please to note that Bob Hyatt indicated to me today in an
email that he will incorporate the new "dm" command in his next "official"
Crafty release.
Type "dm" at the command prompt to see that this command works. It may be set
via the crafty.rc file - it is automaticaly set when you use the lower 13
predefined krafty levels.
I am only sending out one execuable as I modifed my compiler settings and the
optimal settings now work for all processors. If you find this version slower
than previous versions - let me know. It is the fastest version for my P4.
Again, I believe the strongest "play" settings are:
==================================
crafty.rc file
==================================
booster 60 60 225
ext in .75
ext th .75
ext rec .75
ext p .75
ext one .75
===================================
Some chess problems are solved faster by using these settings- but in most
positions it will just take longer to to the same answer.:
================================================
booster 76 76 225
ext in 1
ext th 1
ext rec .75
ext p .75
ext one .75
================================================
As always, you may be removed from this email list by simply responding to this
email and typing "remove" in the "subject" field.
Best Regards,
Mike Byrne
krafty levels
================================================
else if (OptionMatch("pawngrabber",args[1]))
{
QUEEN_values=500;
ROOK_values=400;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=250;
delay_time_limit=999900;
learning=0; /*learning off*/
search_nodes=250;
book_selection_width=5; /* wide book*/
book_random=1; /*book randomness on*/
}
else if (OptionMatch("beginner",args[1]))
{
QUEEN_values=550;
ROOK_values=400;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=225;
delay_time_limit=999900;
learning=0;
search_nodes=500;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("novice",args[1]))
{
QUEEN_values=600;
ROOK_values=400;
BISHOP_values=275;
KNIGHT_values=275;
PAWN_values=200;
delay_time_limit=999900;
learning=0;
king_safety_asymmetry=50; /*less king safety awareness - aggressive*/
king_safety_tropism=150; /*more agressive*/
passed_scale=150; /*passed pawn weighted 50% more*/
search_nodes=1000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("simpleton",args[1]))
{
QUEEN_values=600;
ROOK_values=400;
BISHOP_values=275;
KNIGHT_values=275;
PAWN_values=175;
delay_time_limit=999900;
learning=0;
king_safety_asymmetry=-50; /*more king safety awareness - defensive*/
king_safety_tropism=80; /*less aggresive*/
search_nodes=2000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("woodpusher",args[1]))
{
QUEEN_values=600;
ROOK_values=400;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=150;
delay_time_limit=999900;
passed_scale=150;
search_nodes=4000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("knight",args[1]))
{
QUEEN_values=650;
ROOK_values=400;
BISHOP_values=250;
KNIGHT_values=350;
PAWN_values=150;
delay_time_limit=999900;
king_safety_asymmetry=-50;
king_safety_tropism=80;
learning=0;
search_nodes=8000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("bishop",args[1]))
{
QUEEN_values=650;
ROOK_values=400;
BISHOP_values=350;
KNIGHT_values=250;
PAWN_values=150;
delay_time_limit=999900;
learning=0;
king_safety_asymmetry=50;
king_safety_tropism=150;
search_nodes=8000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("player",args[1]))
{
QUEEN_values=650;
ROOK_values=400;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=150;
delay_time_limit=999900;
learning=0;
search_nodes=16000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("club",args[1]))
{
QUEEN_values=750;
ROOK_values=450;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=125;
delay_time_limit=999900;
learning=0;
king_safety_asymmetry=50;
king_safety_tropism=150;
search_nodes=32000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("expert",args[1]))
{
QUEEN_values=1200;
ROOK_values=450;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=125;
delay_time_limit=999900;
learning=0;
king_safety_asymmetry=-50;
king_safety_tropism=80;
passed_scale=150;
search_nodes=64000;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("low_master",args[1]))
{
QUEEN_values=1200;
ROOK_values=500;
BISHOP_values=320;
KNIGHT_values=320;
PAWN_values=125;
delay_time_limit=999900;
search_nodes=256000;
learning=0;
king_safety_asymmetry=50;
king_safety_tropism=150;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("master",args[1]))
{
QUEEN_values=1100;
ROOK_values=500;
BISHOP_values=310;
KNIGHT_values=310;
PAWN_values=125;
delay_time_limit=999900;
search_nodes=2048000;
learning=0;
king_safety_asymmetry=-50;
king_safety_tropism=80;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("high_master",args[1]))
{
QUEEN_values=1000;
ROOK_values=550;
BISHOP_values=330;
KNIGHT_values=330;
PAWN_values=110;
delay_time_limit=999900;
search_nodes=8192000;
learning=0;
king_safety_asymmetry=50;
king_safety_tropism=150;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("im",args[1]))
{
QUEEN_values=1200;
ROOK_values=600;
BISHOP_values=400;
KNIGHT_values=400;
PAWN_values=110;
learning=0;
king_safety_asymmetry=-50;
king_safety_tropism=120;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("gm",args[1]))
{
QUEEN_values=950;
ROOK_values=500;
BISHOP_values=310;
KNIGHT_values=310;
PAWN_values=100;
book_selection_width=5;
king_safety_asymmetry=-30;
king_safety_tropism=120;
passed_scale=120;
pawn_scale=100;
booster_base=60;
booster_level=75;
book_selection_width=5;
book_random=1;
}
else if (OptionMatch("standard",args[1]))
{
QUEEN_values=900;
ROOK_values=500;
BISHOP_values=300;
KNIGHT_values=300;
PAWN_values=100;
king_safety_asymmetry=0;
king_safety_tropism=100;
passed_scale=100;
pawn_scale=100;
booster_base=60;
booster_level=300; /*booster level=300 is off*/
book_selection_width=3; /*narrow book*/
book_random=0; /*no randomness*/
}
Print(4095," queen value..........................%d\n",QUEEN_values);
Print(4095," rook value...........................%d\n",ROOK_values);
Print(4095," bishop value.........................%d\n",BISHOP_values);
Print(4095," knight value.........................%d\n",KNIGHT_values);
Print(4095," pawn value...........................%d\n",PAWN_values);
Print(4095,"\n\n\n\n");
}
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.