Page 1 of 1

Javascript/WASM Engine with permissive license

Posted: Fri Apr 24, 2020 8:34 pm
by grandmastermac
Hi there, we have a project where we need a chess engine that plays orthodox Chess that is suitable for web assembly or Javascript, and also has a permissive license. The project involves adapting it to playing our variant requiring three pieces moves to be modified. A rook to a chancellor (so it moves rook+knight). The knight to a wildebeest - also known as a unicorn (so it moves 2+1 and 3+1). And a bishop to an arch-bishop (so it moves bishop+knight).

We want to build bots that can play the game at various rating levels ranging from 100 up to 3000 preferably by configurable parameters.

Anybody know of something that would do the trick?

Re: Javascript/WASM Engine with permissive license

Posted: Fri Apr 24, 2020 8:55 pm
by Ras
Garbochess-JS (BDS-3-clause): https://github.com/glinscott/Garbochess-JS
That's the only JS engine with permissive licence that I know, the others are under GPL.

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 5:54 am
by grandmastermac
Thanks Ras - this was really helpful.

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 6:30 am
by yurikvelo
Garbochess upper limit is ~2000 elo, not 3000

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 9:03 pm
by grandmastermac
Thanks Yuri - do you know if GarboChess-JS has been tested anywhere?

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 9:10 pm
by hgm
There is a GarboChess 3.0 in the CCRL 40/15 list, rated 2587/2537 (64bit/32bit). But I guess these are not the JavaScript versions.

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 9:22 pm
by fabianVDW
Well, FabChess (as Rust) engine can theoretically be made to compile on WASM, and there are current efforts for doing so, although it is not quite there yet, and I am also really unexperienced in that area, but I have one contributor on the project being interested in compilation for WASM . License is also BSD-3, although I can not guarantee I will support your endeavours, you can go ahead and do with Fab what you want.

Re: Javascript/WASM Engine with permissive license

Posted: Mon Apr 27, 2020 9:29 pm
by Ras
hgm wrote:
Mon Apr 27, 2020 9:10 pm
There is a GarboChess 3.0 in the CCRL 40/15 list, rated 2587/2537 (64bit/32bit). But I guess these are not the JavaScript versions.
This is likely the C++ version. The tomitank Github repo (JS engine under GPL3) says that pure JS is 5 times slower than C. If we assume 60 Elo per doubling, that's 140 Elo, so the JS version of GarboChess should be around 2400.

Re: Javascript/WASM Engine with permissive license

Posted: Tue Apr 28, 2020 6:40 am
by yurikvelo
For online game (is pondering possible??) 40 minute time control seems unapropriate. Top hardware is unexpected.
Maybe fortification with deep-book (Brainfish-style) can help.

Re: Javascript/WASM Engine with permissive license

Posted: Wed Apr 29, 2020 9:17 am
by grandmastermac
Thanks Harm, Fab, Ras and Yuri. All useful comments.