Bug 458534 - Select difficulty for chess activity
Summary: Select difficulty for chess activity
Status: RESOLVED FIXED
Alias: None
Product: gcompris
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Jazeix Johnny
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-31 06:53 UTC by makosol
Modified: 2022-12-13 17:11 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description makosol 2022-08-31 06:53:21 UTC
SUMMARY
Select difficulty for chess activity : the IA is very easy to beat (it plays somewhat randomly). It would be better to be able to choose the difficulty.

Version is 2.4 by the way.
Comment 1 Jazeix Johnny 2022-08-31 07:01:45 UTC
Hi,

thank you for the report.

The level is the difficulty.

Level 1 is random, in level 2, 20% of the time it's a "good" move (good meaning generated by the engine), level 3 40%... level 5 is 100% moves computed by the engine.

Have you tried higher levels?
Comment 2 makosol 2022-08-31 07:17:45 UTC
But how do you select the level ?
Comment 3 Jazeix Johnny 2022-08-31 07:56:22 UTC
(In reply to makosol from comment #2)
> But how do you select the level ?

The bar at the bottom, besides the "Help", "Home" buttons
Comment 4 makosol 2022-08-31 08:22:33 UTC
Oh ok, this isn't very obvious in my opinion. The UI and the help of the chess activity should be clearer about that.
Thank you nonetheless.
Comment 5 Jazeix Johnny 2022-08-31 08:27:48 UTC
Yes, you are right, it's the same for each "game", but we need to make it more evident.
Comment 6 infiniteverma 2022-11-10 19:07:15 UTC
I'd like to work on this. Having a 'Level: <number>' on the game view would make it easier to understand.
Comment 7 Jazeix Johnny 2022-11-10 21:12:37 UTC
(In reply to infiniteverma from comment #6)
> I'd like to work on this. Having a 'Level: <number>' on the game view would
> make it easier to understand.

Thank you for your interest. After discussing with the other maintainer, we would prefer to only add a comment in the description instead of something visual. Would it still interest you to add it?
Comment 8 animtim 2022-11-10 21:21:26 UTC
Indeed, we already have the level number displayed on the bottom bar, the same way it is displayed in every other activity. We should not duplicate it.

The way we display/select level is explained in the main help page, from the main menu (and until now there hasn't been any feedback of a user not understanding how to change level in activities, so it seems to be obvious enough). And it is explained in the manual of this activity that difficulty increases after first level ("At first level the computer is fully random to give more chances to the children. As level increases, the computer plays better."). So the only thing that could eventually be done is to repeat in this activity manual how to change level, but that would be very redundant... So actually I think this bug report should be closed.
Comment 9 makosol 2022-11-10 21:31:54 UTC
well, I and others here disagree. Also, the "level" doesn't increase after each victory, so this not a level per se.
Comment 10 animtim 2022-11-11 09:43:51 UTC
So maybe we should make level auto-increase after a win (in all the strategy activities, like we do in all other activities)? @Johnny what do you think about this?
Comment 11 animtim 2022-11-11 09:50:38 UTC
Else, if we keep the manual-only level change, we could add a more specific info about it in the manual of these activities, saying something like "The level number corresponds to the difficulty. Select manually the level of difficulty you want before starting a game."
Comment 12 animtim 2022-11-11 10:01:24 UTC
On second thought, we have this special behaviour to not go automatically to next level after a win on strategy activities for some reasons (like for example, this way users playing it will have time to show their success to their parents), so probably better not change this behaviour. So adding more clear info about manually selecting difficulty level on the manual is probably the best way to go.
Comment 13 Jazeix Johnny 2022-11-11 13:54:58 UTC
I would prefer to keep the same level after winning a strategy game too.
Another solution is to remove the levels for all the strategy games and add the configuration to choose between "very easy", "easy", ...
And say in the help to select the level in the configuration before starting a game
Comment 14 animtim 2022-11-11 15:50:40 UTC
I've discussed with Aish about this possibility, and we both think that moving the difficulty selection to a configuration page would be worse in terms of discoverability and consistence with the other activities. So I'd prefer that we keep level=difficulty, and add explanation about it in the manual.

On a side note: of all the strategy activities, there is only one which currently has a difficulty setting in its settings page: bargame. Though this one is a special case as this setting defines the difficulty regarding the board configuration and rules. And it's still the level selection that changes the difficulty of how the computer plays. So it's one more reason to keep it this way in all strategy activities.
Comment 15 Jazeix Johnny 2022-11-12 09:54:33 UTC
(In reply to animtim from comment #14)
> I've discussed with Aish about this possibility, and we both think that
> moving the difficulty selection to a configuration page would be worse in
> terms of discoverability and consistence with the other activities. So I'd
> prefer that we keep level=difficulty, and add explanation about it in the
> manual.
> 
> On a side note: of all the strategy activities, there is only one which
> currently has a difficulty setting in its settings page: bargame. Though
> this one is a special case as this setting defines the difficulty regarding
> the board configuration and rules. And it's still the level selection that
> changes the difficulty of how the computer plays. So it's one more reason to
> keep it this way in all strategy activities.

Good for me.
@Makosol, would it be good for you too to update the manual to rephrase and be more precise?
Comment 16 makosol 2022-11-12 14:17:31 UTC
yes but i don't know how to do it.
Comment 17 Jazeix Johnny 2022-11-12 14:20:53 UTC
(In reply to makosol from comment #16)
> yes but i don't know how to do it.

I was just asking if the proposed solution was good for you, we will implement it.

@infiniteverma, as you showed some interested for this bug, are you still interested with this fix?
Comment 18 infiniteverma 2022-11-12 14:27:39 UTC
(In reply to Jazeix Johnny from comment #17)
> (In reply to makosol from comment #16)
> > yes but i don't know how to do it.
> 
> I was just asking if the proposed solution was good for you, we will
> implement it.
> 
> @infiniteverma, as you showed some interested for this bug, are you still
> interested with this fix?

Yes. I'd like to work on this. 

To summarize the conversation above, the manual needs to be edited to clarify the 'level' idea, right?
Comment 19 Jazeix Johnny 2022-11-12 14:39:02 UTC
(In reply to infiniteverma from comment #18)
> (In reply to Jazeix Johnny from comment #17)
> > (In reply to makosol from comment #16)
> > > yes but i don't know how to do it.
> > 
> > I was just asking if the proposed solution was good for you, we will
> > implement it.
> > 
> > @infiniteverma, as you showed some interested for this bug, are you still
> > interested with this fix?
> 
> Yes. I'd like to work on this. 
> 
> To summarize the conversation above, the manual needs to be edited to
> clarify the 'level' idea, right?

Yes, that's it.
Comment 20 makosol 2022-11-13 08:57:27 UTC
If possible, I would like to help for the rewording of the help.
Comment 21 Jazeix Johnny 2022-11-13 09:06:23 UTC
(In reply to makosol from comment #20)
> If possible, I would like to help for the rewording of the help.

Of course, we can discuss here the rewording and @ infiniteverma  will take care of the implementation
Comment 22 infiniteverma 2022-11-15 17:52:04 UTC
"Arrows - Display the current level. Click to select another level" 

to

"Arrows - Click on the arrow keys to change levels or difficulty of the activity." 

How about this?
Comment 23 animtim 2022-11-15 19:41:45 UTC
(In reply to infiniteverma from comment #22)
> "Arrows - Display the current level. Click to select another level" 
> 
> to
> 
> "Arrows - Click on the arrow keys to change levels or difficulty of the
> activity." 
> 
> How about this?

I'd prefer to not change the main manual page about the arrows, but instead add on each of the strategy activities manual the info that the level number corresponds to the difficulty level, and that users need to manually select the difficulty level with the arrows.
Comment 24 makosol 2022-11-16 10:57:01 UTC
I'm OK with @animtim@gmail.com ; it's better to have the manual of each activity be more specific and precise how to handle the activity in question.
Comment 25 infiniteverma 2022-11-23 17:04:35 UTC
How about adding the Chess manual to add this line:

"Use the arrow buttons to manually select the difficulty level."

So this particular para becomes:

"In this activity you discover the chess game by playing against the computer. It displays the possible target positions for any selected piece which helps the children understand how pieces moves. Use the arrow buttons to manually select the difficulty level. At first level the computer is fully random to give more chances to the children. As level increases, the computer plays better."
Comment 26 makosol 2022-11-26 09:42:04 UTC
seems good to me, thank you.
Comment 27 Jazeix Johnny 2022-11-26 09:57:08 UTC
(In reply to infiniteverma from comment #25)
> How about adding the Chess manual to add this line:
> 
> "Use the arrow buttons to manually select the difficulty level."
> 
> So this particular para becomes:
> 
> "In this activity you discover the chess game by playing against the
> computer. It displays the possible target positions for any selected piece
> which helps the children understand how pieces moves. Use the arrow buttons
> to manually select the difficulty level. At first level the computer is
> fully random to give more chances to the children. As level increases, the
> computer plays better."

I would put the sentence at the end instead, else it's good for me too:
"In this activity you discover the chess game by playing against the computer. It displays the possible target positions for any selected piece which helps the children understand how pieces moves. At first level the computer is fully random to give more chances to the children. As level increases, the computer plays better. You can use the arrow buttons to manually select the difficulty level."
Comment 28 Bug Janitor Service 2022-11-30 03:35:23 UTC
A possibly relevant merge request was started @ https://invent.kde.org/education/gcompris/-/merge_requests/133
Comment 29 Jazeix Johnny 2022-12-07 19:00:33 UTC
Git commit 53726a7e9dc90cc9bbd4317684a4bd8e4325a781 by Johnny Jazeix, on behalf of Anant Verma.
Committed on 07/12/2022 at 18:46.
Pushed by jjazeix into branch 'master'.

chess, update manual to clarify levels

M  +1    -1    src/activities/chess/ActivityInfo.qml

https://invent.kde.org/education/gcompris/commit/53726a7e9dc90cc9bbd4317684a4bd8e4325a781
Comment 30 Jazeix Johnny 2022-12-12 22:05:45 UTC
Git commit c02e0b5a626d42c7d15fb878bc7c3461759c7b39 by Johnny Jazeix, on behalf of Anant Verma.
Committed on 12/12/2022 at 21:54.
Pushed by jjazeix into branch 'master'.

align4, update manual to clarify levels

M  +1    -1    src/activities/align4/ActivityInfo.qml

https://invent.kde.org/education/gcompris/commit/c02e0b5a626d42c7d15fb878bc7c3461759c7b39
Comment 31 Jazeix Johnny 2022-12-13 17:10:43 UTC
Git commit 90daee75b1127e88f4488f2bd118bdaa1286752f by Johnny Jazeix, on behalf of Anant Verma.
Committed on 13/12/2022 at 17:10.
Pushed by jjazeix into branch 'master'.

bargame, update manual to clarify levels

M  +1    -1    src/activities/bargame/ActivityInfo.qml

https://invent.kde.org/education/gcompris/commit/90daee75b1127e88f4488f2bd118bdaa1286752f
Comment 32 Jazeix Johnny 2022-12-13 17:10:51 UTC
Git commit 9cfc844b23a2c7f2c5edcae9a1a1a0985bd5dc91 by Johnny Jazeix, on behalf of Anant Verma.
Committed on 13/12/2022 at 17:10.
Pushed by jjazeix into branch 'master'.

nine_men_morris, update manual to clarify levels

M  +1    -1    src/activities/nine_men_morris/ActivityInfo.qml

https://invent.kde.org/education/gcompris/commit/9cfc844b23a2c7f2c5edcae9a1a1a0985bd5dc91
Comment 33 Jazeix Johnny 2022-12-13 17:11:00 UTC
Git commit 27f9ac99ae21cb95ffb5cbae8af1172c65e47f0b by Johnny Jazeix, on behalf of Anant Verma.
Committed on 13/12/2022 at 17:10.
Pushed by jjazeix into branch 'master'.

checkers, update manual to update levels

M  +1    -1    src/activities/checkers/ActivityInfo.qml

https://invent.kde.org/education/gcompris/commit/27f9ac99ae21cb95ffb5cbae8af1172c65e47f0b