I couldn't care less.connor_mcmonigle wrote: ↑Wed Mar 09, 2022 5:13 pmYou link against the probing code from CFish and use weights from Stockfish effectively copy pasting the entire evaluation function as has been explained previously. If you can't see any value in experimenting with new techniques, then perhaps best is to just not write a chess engine. Stockfish will almost certainly always be stronger. Why are you reinventing the wheel?JohnWoe wrote: ↑Wed Mar 09, 2022 10:52 am When it comes to Mayhem. Only Polyglot stuff is copy-pasted from Stockfish. Because.
Drum roll start ...
No point reinventing the wheel!
Drum roll end ...
When you implement a beautiful unique NNUE. Then support for all the boring stuff: threads, ponder, syzygy EGTB... Then I have reinvented Stockfish. That's boring.
NIH is only valid for highly specified problems with clearly optimal solutions. Several authors use external move generation libraries, EGTB probing code, polyglot probing code, etc. These are all problems to which NIH is applicable as a principle. The question of how to best map a chess position to a scalar is clearly not such a problem.
I don't link against anything. No compilation units.
btw I invented pawn promotion extension and added to my engine. It was worth something. Push to 6th/7th wasn't worth much. The next day pawn promotion extension was added in SF as well.
That's how it goes.
I invented LazySort() and it improved many programs. And that's good.
Calling syzygy perfect and no room for improvements? It's the best as of now. But perfect? You have to copy-paste 2000 lines of some C code. Full of memcpy(). (Hopefully matched with free()). As no RAII as in C++. And fish probing code out of Glaurung. That's perfect and set to stone solution to EGTB???
Could you easily improve polyglot/syzygy? Yes. Is that worth of your limited time on Earth? No!
Take my Eucalyptus KPK C++ header. That's like 5 lines of simple code. Drop into any project. Perfect KPK play forever.
