lukasmonk / lucaschessR2

Lucas Chess R Version 2
GNU General Public License v3.0
268 stars 40 forks source link

Some issues, questions and suggestions #61

Closed HarshilPatel007 closed 1 year ago

HarshilPatel007 commented 1 year ago

Hi all,

First of all, many many thanks for this awesome piece of software. My hunt of best chess client/tool for the linux is ended here.

Version : R2.04 Wayland OS : Arch

Questions

How to contribute a new theme?

Issues

Suggestions

This are the UX, DX suggestions

lukasmonk commented 1 year ago

Thank you very much for your suggestions.

Questions

How to contribute a new theme?

* This is a club tournament inspired theme. I called it tournament.

* I saw **UserData** directory and found out that, theme file is encrypted in **themes.pkd** file. While, in **Resources** directory, the themes are in **.lktheme3** and they are also encrypted.

They are saved with a standard library, pickle. themes.pkd and .lktheme3 have the same structure, so theme.pkd must be renamed to be popularised in Resources/Themes.

  ### Theme Preview
  ![image](https://user-images.githubusercontent.com/16424866/210164424-c4c29452-e522-41ae-a075-a025044df7d6.png)

Issues

* while working with this settings, I found some issues/bugs.

  * The window is not fully shown. (see the bottom, it is hidden and there is no way we can resize the window. DPI problem?)
    ![image](https://user-images.githubusercontent.com/16424866/210164605-74ac1536-f7f3-4db2-a262-142dee4cf7d1.png)

I have to work on it. In windows there is no problem, maybe removing windows inheritance will be enough.

Suggestions

This are the UX, DX suggestions

* Change project slug/name to **lucaschess** . Why? The reason is the current name suggest the explicit version in it **(R2).**

  Instead of specifying the version in project name, it is advisable to specify the version name in release binaries.

Perhaps in LucasChess 3

* Change the project structure to a standard.

  * The current project structure is mess IMO.
  * I found the code in **bin** directory. Which is not expected. The **bin** directory is for binaries, not for code.
  * Split the code in **src** directory and used libraries to **lib** directory.

It mimics the distribution, I don't really like the rules in my work :). At the moment, I don't want any help on programming, so it's not a big problem.

* Remove some **ALPHA/BETA, OLD** engines.

Not so easy and I like old engines.

  * I saw some of the engines are in their early development phase and some of are not being maintained/has no activities since years. So, it is advisable to remove it from bundle and create a way for users to **plug-n-play**. So, if they wish, they can use them. This'll remove the clutter, reduce the bundle/binary size and headache of maintaining that engines.

* Update the **requirements**.

  * I saw, many requirements are out-of-date. Such as **python-chess** etc.

* Add highlight of **from-to-move**/**last-move** and **possible moves** just like, lichess or chess[.]com
  ![image](https://user-images.githubusercontent.com/16424866/210166343-6d4a6a9b-421b-478d-b260-3b7d1fe74ef2.png)

Perhaps in future

* Allow users to draw **possible-moves** arrows just like, lichess[.]com, chess[.]com or chessbase.
  ![image](https://user-images.githubusercontent.com/16424866/210166331-e23dcdee-0e3b-453e-85a0-a501875a6484.png)

Right button when activated in Options/Configuration/Board F1/F10 to enter in directory mode.

HarshilPatel007 commented 1 year ago

It mimics the distribution, I don't really like the rules in my work :).

Actually, It is not about the rules. This is a kind-of standard structure that everyone/majority of programmers familiar with.

At the moment, I don't want any help on programming, so it's not a big problem.

Your wish. But, IMO, not a good thinking or approach to maintain a FOSS project. This'll make a barrier for potential contributions.

Right button when activated in Options/Configuration/Board F1/F10 to enter in directory mode.

Thanks. So much goodies. :smile: Suggestion, Allow users to change characteristics of arrow just like, how they do in theme building.

lukasmonk commented 1 year ago

Allow users to change characteristics of arrow just like, how they do in theme building.

F1/F10, Director mode, and the arrows are editable.

HarshilPatel007 commented 1 year ago

F1/F10, Director mode, and the arrows are editable.

OMG, I this is insane.

Found another bug.

image

lukasmonk commented 1 year ago

F10 is not a good example, it is better to indicate F1-F9. F10 is used to launch a window to write comments in this context. Click the Remove option on the Director's toolbar to remove it.

HarshilPatel007 commented 1 year ago

Click the Remove option on the Director's toolbar to remove it.

Yes, it closed that. But, the real bug is when you keep open it and switch to another window/program, it appears on it as shown in above image. which is bug.

lukasmonk commented 1 year ago

Fixed.