A nice 2d Board will be more that useful... On Thu, 26 Sep 2019 at 22:03, Jon Kinsey <[email protected]> wrote:
> The OpenGL 3d board is theoretically portable to WebGL. In practice this > is likely to be difficult... I’ll take a look, but I have little free time > so will be a while before I report back on my initial findings. > > Jon > > On 25 Sep 2019, at 16:44, Guido Flohr <[email protected]> wrote: > > > > On 24 Sep 2019, at 23:07, Philippe Michel <[email protected]> > wrote: > > The current GUI is probably inadequate for a phone or a tablet, but it > would be nice if gnubg would be usable this way (even with some > limitations) on chromebooks or on platforms where building it is > getting complicated (like Macs...) > > > At the risk of being off-topic I would like to share some experiences I > have made with a somewhat similar project for chess: > https://github.com/gflohr/lisco > > Lisco is a chess UI completely written in JavaScript. The UI is using > Electron (like Microsoft Visual Studio Code) and is therefore truly > cross-platform. With truly I mean that it not only works everywhere but > also looks nice everywhere, for example on my Mac but you can also run it > in a web browser. At its current state, lisco is only a proof-of-concept > but you can already play a game of chess against the open-source engine > Lozza. If you look in the source code, you see how you can change the > settings to play against other engines embedded into lisco like Stockfish > or Tomitank or even let them play against each other. > > Doing this for chess is trivial compared to backgammon. You mostly have to > wire together chess engines transpiled into JavaScript with your view via > protocol adapters. On the engine side you have the Universal Chess > Interface UCI and the Xboard protocol aka CECP. Both protocols are pretty > bogus imho but they are universally supported and implementations (protocol > adapters) exist for a wide range of programming languages including > Javascript. In other words, you don’t have to write the ugly telnet stuff > yourself. > > On the UI side, almost all chess analysis programs just use UCI, CECP or > both and this is a well-established technique. Lisco is just one example > for this. > > Back to backgammon: I know that it would be very hard to cleanly separate > the UI and the engine part of GNU backgammon. Most of the code was written > at a time, when MVC or MVVM patterns were still unknown. > > But it should be feasible to add preprocessor directives and change the > build so the so that you can conditionally compile and build a headless > version of the engine. I know, there is already a telnet interface to > gnubg. Only from my experience with another project > https://github.com/gflohr/BaldLies I remember that the telnet interface > is not exactly nice to use. It probably needs some polishing and > formalization in order to turn it into a protocol that is easy to use. > > I would even go as far as saying that throwing the gnubg UI away > altogether is also a viable option. Yes, it is nice and there is a lot of > work in it. On the other hand it suffers from bit rot and it is an obstacle > to porting gnubg to other platforms, where the UI may not even be needed. > To boot, it only works on the desktop and will probably never work on > mobile devices (unless somebody does a major rewrite). > > Look at chess where you have the choice between hundreds if not thousands > of different engines that you can use to analyze your play or let different > engines compete. I am sure a lot of people would happily trade the 3D board > for such options, especially when it is easy for UI developers to code a > new user interface. And what about a11y, by the way? > > Remember the now discontinued iOS version of gnubg? It was a great success > although it replaced the UI completely and lacked a lot of features > compared to the desktop version. But it had made gnubg available to > zillions of iOS users. The author seemed to be unable to maintain the > project so that now there are tons of other apps that look fancy but play > lousy backgammon. And that situation could really be improved, also for > Android, as the strength of the gnubg project is imho on the AI side, not > on the UI side. > > Cheers, > Guido > — > Cantanea EOOD - We are hiring! > http://www.cantanea.com/careers/ • facebook.com/cantaneacom • > twitter.com/cantaneacom > > _______________________________________________ > Bug-gnubg mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/bug-gnubg > > _______________________________________________ > Bug-gnubg mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/bug-gnubg >
_______________________________________________ Bug-gnubg mailing list [email protected] https://lists.gnu.org/mailman/listinfo/bug-gnubg
