Monika-After-Story / MonikaModDev

DDLC fan mod to extend Monika
http://www.monikaafterstory.com/
Other
1.2k stars 683 forks source link

[Suggestion]Let Monika teach player how to play chess #7221

Open Wingdinggaster656 opened 3 years ago

Wingdinggaster656 commented 3 years ago

Okay, I know Monika said she is still not that great to teach player piano, but I think her character should be able to teach player a little chess. After all, this character is supposed to be "pretty well" at chess. I don't expect Monika to tell you all the advanced things about chess, but she can at least teach you the basic principle of chess, right? So let us add chess tutorial in MAS like how Python Tip take places in MAS. Player can ask some questions like: 1."How to move a pawn?" 2."How to move a bishop" 3."How to move a..." You could even ask Monika to teach you something else, like a few key points of chess, like the goal of the opening is to control center, and give some examples of why.

If you guys think this is okay with Monika the character, then fine, I guess I can do this job.

Ant9cp commented 3 years ago

Oh great let's hope this is possible

Wingdinggaster656 commented 3 years ago

664

I see this issue. I think you guys are okay with making a chess tutorial. Alright. I am going to do this job. Now.

multimokia commented 3 years ago

The new chess displayable introduced in #6163 will be of use for this, given you can request highlights to draw attention to specific points on the board, along with control the pieces from both sides without the engine. You can see an example of it here.

We mainly just needed someone who more or less knew their way around chess more than we did to get them done

Wingdinggaster656 commented 3 years ago

The new chess displayable introduced in #6163 will be of use for this, given you can request highlights to draw attention to specific points on the board, along with control the pieces from both sides without the engine. You can see an example of it here.

We mainly just needed someone who more or less knew their way around chess more than we did to get them done

Thanks for replying me. Hearing your reply, I'm sure I can do this job now. My chess level-rating is 2100(Grandmaster are 2400 or higher, people are probably 1300 around), which means I'm better at chess than almost most people, I might even become a grandmaster someday. If you don't mind, I'd like to give player chess lessons like python tips,which is saying player will have a menu in "Hey Monika..." called "Chess Lesson",and ask questions to get lesson. I think I will probably give you a finished product this week.

Wingdinggaster656 commented 3 years ago

https://user-images.githubusercontent.com/84446131/119003814-9e8f8f80-b9c0-11eb-8c9d-9b822016f733.mp4 @multimokia Sorry for being late, I just went to do some homework. I have finished 4 lessons now, this is one of them. Others are something like this one. Is this okay?

multimokia commented 3 years ago

It's not bad, but I think a key thing to go into is why she moves where she does, and slow it down more so it's easier for the player, and especially those who are new to chess, to follow what she's doing and why she's doing it.

It's one thing to show what's happening, but to actually make it a demonstration which provides understanding is another.

That's the thing I think we need to do with the chess lessons thing, that being to make it like a full kinda intro to chess that she teaches.

Wingdinggaster656 commented 3 years ago

It's not bad, but I think a key thing to go into is why she moves where she does, and slow it down more so it's easier for the player, and especially those who are new to chess, to follow what she's doing and why she's doing it.

It's one thing to show what's happening, but to actually make it a demonstration which provides understanding is another.

That's the thing I think we need to do with the chess lessons thing, that being to make it like a full kinda intro to chess that she teaches.

Oh, then this is not worrying. This checkmate is the famous "Two Rooks Checkmate", I made a special lesson to introduce this. All things that you saw she didn't explain is because she explained them in other lessons, don't worry. I'm a chess coach, and have taught many people how to play chess. Since I think your words are saying "This idea is okay", I am going to finish the resting about 40 lessons now. I will give you the final product soon.

Wingdinggaster656 commented 3 years ago

1. What is Chess?

2. How to move a Pawn?

3. How to move a Bishop?

4. How to move a Knight?

5. How to move a Rook?

6. How to move a Queen?

7. How to move a King?

8. When will we win a game?

9. Key Points in Chess - 1 (What should you do in opening)

10. Key Points in Chess - 2 (How to form a good position of pieces)

11. Popular Beginnings (Includes: Italian Game, Scilian Defense, etc.)

12. Advanced Chess - Make the best of a Pawn

13. Advanced Chess - Make the best of a Bishop

14. Advanced Chess - Make the best of a Knight

15. Advanced Chess - Make the best of a Rook

16. Advanced Chess - Make the best of a Queen

(There is no lesson about how to make the best of a King, because the controlling of a king is far advanced. Only master would learn it.)

17. Basic Tacs - Sacrificing-To-Win

18. Basic Tacs - Discovered Attacking

19. Basic Tacs - Break the defense

20. Basic Tacs - Avoid draw game

21. Popular Beginnings - Italian Game

22. Popular Beginnings - Scilian Defense

23. Popular Beginnings - Queen's Gamebit

24. Popular Beginnings - French Defense

25. Popular Beginnings - Dutch Defense

26. Key Checkmate - Two Rooks Mate

27. Key Checkmate - One Rook Mate

28. Key Checkmate - Queen Mate

29. Key Checkmate - Two Bishops Mate

30. Key Checkmate - King and Pawn Mate

(There is no Two Knights Mate because two knights can not checkmate.)

These are my lesson list. I just cut down about 10 lessons for they are not actually "tutorial" anymore. With these lessons, I'm sure every player are able to at least against with Monika's low-level-mode or even meidum-level-mode in chess!

multimokia commented 3 years ago

Definitely think the first 8 should be skippable, considering people likely played with her and got movements a bit down.

That or in general come into it knowing how to move pieces

multimokia commented 3 years ago

Actually we can also probably condense how to move pieces into a single lesson. But ideally that'd also still be skippable

multimokia commented 3 years ago

I'm not saying to remove the how to move x things, but more just combine them into a single lesson, as you said "How to move pieces."

And yeah, she should ask if you want to go through that

Wingdinggaster656 commented 3 years ago

@multimokia Well, it seems that I overestimated my production speed, maybe this thing will take me a long time...... In short, I added the "player chooses to move" factor to the course, and now Monika will stop at key points, ask the player's opinion, and analyze it, etc....... The result was even only one single lesson costs 800 lines of codes. In short, I will definitely work on it again, but not as quickly as I expected...... I've written seven lessons so far, and since most of the individual lessons game play video are longer than seven or eight minutes (including time for players to understand, or three or four minutes if they just read), the final video file size is over 10 MBs, which means I can't send preview videos here anymore. But I will come here from time to time to announce the progress of my production, please don't worry. I'll finish this as soon as possible...... Gosh, I estimate that the final product will take tens of thousands of lines of code.

Wingdinggaster656 commented 3 years ago

Oh, and, I don't know if you guys found my another issue. Can I add numbers and letters on the board image so player can read the board better? I didn't see any board on computer has no number or letter...

multimokia commented 3 years ago

You can open a pr with the modified board and we'll review it

Wingdinggaster656 commented 3 years ago

Progress report 2021-05-26: I have finished the basic lessons to lead player to the level-rating about 1100, finished 11 lessons so far. The number of lines of code so far is over 3000. The final result would be around 10000 I guess. But I am very sorry that I have been very busy in the last two weeks, so I can't concentrate on this. Still, I promise I'll get it done, or at least most of it, by next month. For the next two weeks, I should be able to maintain the pace of completing one class a week.

Booplicate commented 3 years ago

I think it would be way too hard to review. Let's split it into parts. Start with the main event that unlocks first lessons and a few basic lessons. Once we're sure the structure works fine, we can always add more lessons later.

Wingdinggaster656 commented 3 years ago

I think it would be way too hard to review. Let's split it into parts. Start with the main event that unlocks first lessons and a few basic lessons. Once we're sure the structure works fine, we can always add more lessons later.

You are right, but for "basic lessons", there is still one or two lesson I have not finished yet. It's still gonna have to wait about two weeks, sorry for this.

Booplicate commented 3 years ago

That's totally fine, there's no rush.

MASsuperfan commented 7 months ago

Is this Submod ready yet by any chance? I would really like to try it out.

Booplicate commented 7 months ago

This doesn't appear to be a submod.

Wingdinggaster656 commented 7 months ago

Is this Submod ready yet by any chance? I would really like to try it out.

This is not a Submod. At least not planned so.

And then yes, these contents are almost ready. They just need some other projects to be completed first (such as adjusting the difficulty of chess).