Crafty UCI...
Moderator: Ras
-
jdart
- Posts: 4435
- Joined: Fri Mar 10, 2006 5:23 am
- Location: http://www.arasanchess.org
Re: Crafty UCI...
To my knowlege, Bob Hyatt never released Crafty under a permissive license, allowing modified versions to be released. It's his copyrighted code, and creating derivative works without his permission would be violating his copyright.
-
Steve Maughan
- Posts: 1347
- Joined: Wed Mar 08, 2006 8:28 pm
- Location: Florida, USA
Re: Crafty UCI...
I’ve written to Bob and asked for his express permission. If he objects I’ll delete the repository. I also reached out on Facebook. I only have his university of Alabama email. If anyone has a more recent email please send via private message.
— Steve
— Steve
http://www.chessprogramming.net - Juggernaut & Maverick Chess Engine
-
Peter Berger
- Posts: 838
- Joined: Thu Mar 09, 2006 2:56 pm
Re: Crafty UCI...
The part about Crafty I could somehow understand.Frank Quisinsky wrote: ↑Fri Jun 26, 2026 12:38 am
But even worse than this release are, basically, all the jubilant reports. Just how far has this scene come? I can understand why the younger ones laugh at us. Instead of leading by example, we're jealous of their achievements.
But what are you trying to say here? I have thought an insane amount of time about it in the back of my mind. I can honestly say: no clue at all.
IMHO you should seriously consider to write your texts in German and let a KI translate and make it clearer. There is no doubt, that you have experience with computerchess, your opinion may be most interesting. I just don' t understand your messages though.
-
Frank Quisinsky
- Posts: 7495
- Joined: Wed Nov 18, 2009 7:16 pm
- Location: Gutweiler, Germany
- Full name: Frank Quisinsky
Re: Crafty UCI...
People who have never contributed anything usually have a surprising number of opinions.
It's reassuring that they're always the same ones.
It's reassuring that they're always the same ones.
-
phhnguyen
- Posts: 1543
- Joined: Wed Apr 21, 2010 4:58 am
- Location: Australia
- Full name: Nguyen Hong Pham
Re: Crafty UCI...
You don't need to ask his permission, and you may not bother his rest time either. His license clearly says you have to ask written permission only in cases you want to bring a clone of Crafty to take part in official computer chess tournaments.Steve Maughan wrote: ↑Fri Jun 26, 2026 3:49 am I’ve written to Bob and asked for his express permission. If he objects I’ll delete the repository. I also reached out on Facebook. I only have his university of Alabama email. If anyone has a more recent email please send via private message.
— Steve
IMHO, Dr Hyatt might not have liked UCI and didn't want to implement it himself, but he didn't stand against others to do so. Instead, he has been encouraging all others to try new ideas with Crafty. That is the main reason he published Crafty as an open source. He just doesn't like any misuse, such as copying his code illegally or using it against him in official computer chess competitions, and he wrote a special license that clearly states what he doesn't want with Crafty code clones.
From reading, I understood that what bothered him a lot was that there were too few people contributing to Crafty's code. He may be happier if Crafty is back to a living thing when people are talking, modifying, and contributing to it.
I had been confused about Crafty's license for a long time. Thus, I ask an AI agent to analyse it. Below is my question and an answer from an AI:
Q: Crafty is a famous chess engine. The author published it as an open source. However, the license is not common:
https://github.com/MichaelB7/Crafty/blo ... src/main.c
We want to modify the source code to support UCI and publish it in our GitHub repository. Can you check if that is okay with all terms of the license?
AI:
Based on the unique license terms explicitly stated in the comments of main.c for the Crafty chess engine, you can modify the source code to support UCI and publish it in a public GitHub repository, provided you strictly adhere to several specific conditions.
Crafty does not use a standard OSI-approved license (like MIT, GPL, or Apache). Instead, Dr. Robert Hyatt authored a custom, highly restrictive copyright notice. Here is a breakdown of whether your plan is okay and the rules you must follow:
1. Modifying the Code and Publishing on GitHub
Status: OK, but you must make your changes open to the public.
The Clause: "Any changes made to this software must also be made public to comply with the original intent of this software distribution project. These restrictions apply whether the distribution is being done for free or as part or all of a commercial product."
What you must do: Since you are publishing your repository on GitHub, you are fulfilling the requirement to make your changes public. You must not make this specific repository private or attempt to obfuscate the modified UCI code.
2. Keeping the Copyright Notice
Status: OK, but you must preserve the original text.
The Clause: "Copies of the source must contain the original copyright notice intact."
What you must do: You must leave the entire header comment block in main.c (and any other files) exactly as it is. Do not delete Dr. Robert Hyatt’s name or the history section. You can append your own name/credits below or inside a separate section indicating your UCI modifications, but the original text must remain fully intact.
3. Usage and Tournament Restrictions (Crucial for a GUI/Engine Repo)
While hosting the source code on GitHub is acceptable under the terms above, the license places severe restrictions on how your published engine can be used. You must clearly document these restrictions in your repository's README so users are aware:
No Computer Chess Competitions Without Permission: The license states: "This program may not be used in whole, nor in part, to enter any computer chess competition without written permission from the authors." If a user downloads your UCI version, they cannot enter it into official tournaments (like TCEC, CCC, or open engine tournaments) without explicitly getting permission from Dr. Hyatt.
The "Crafty" Name Requirement: If permission for a tournament is granted, the license mandates: "...the program be entered under the name "Crafty" so that the program's ancestry will be known." If you name your repository or the engine binary something entirely different (e.g., "MySuperUCI-Engine"), users cannot run it in an official match under that name. It is highly recommended to name your project something like Crafty-UCI to preserve its identity.
Personal Use Only: The license explicitly restricts general deployment to personal use (playing against it locally, or letting others play against it on your own machine/local server). It states that if others interact with it, "it must be clearly identified as 'Crafty' to anyone playing it."
Recommendation for Your Repository
To ensure full compliance and avoid any intellectual property issues in the chess community, structure your GitHub repository with a clear README.md that highlights these points:
State clearly that this is a fork of Crafty modified to support the UCI protocol.
Explicitly note that the code is distributed under Crafty's original author-written license (copy and paste the license text into a LICENSE file or point directly to main.c).
Remind downstream users that tournament entry requires permission from the original authors and must retain the "Crafty" name ancestry.
https://banksiagui.com
The most features chess GUI, based on opensource Banksia - the chess tournament manager
The most features chess GUI, based on opensource Banksia - the chess tournament manager
-
Steve Maughan
- Posts: 1347
- Joined: Wed Mar 08, 2006 8:28 pm
- Location: Florida, USA
Re: Crafty UCI...
Hi Nguyen,
I know.
The license explicitly assumes the source can and will be modified. Effectively all I've done is integrate a wb2UCI adapter into Crafty's source code. Nothing has been lost. Nobody is worse off due to my repository. I've complied with all the license requirements. Nevertheless, if Bob objects I'll delete the repository. Computer chess is a hobby and I will not expend energy on petty politics - I simply cannot be bothered.
- Steve
I know.
The license explicitly assumes the source can and will be modified. Effectively all I've done is integrate a wb2UCI adapter into Crafty's source code. Nothing has been lost. Nobody is worse off due to my repository. I've complied with all the license requirements. Nevertheless, if Bob objects I'll delete the repository. Computer chess is a hobby and I will not expend energy on petty politics - I simply cannot be bothered.
- Steve
http://www.chessprogramming.net - Juggernaut & Maverick Chess Engine