Project Description/Elevator Pitch:
Grandmaster Scratch© is a live grandmaster, teaching you how to checkmate ideally (in the least number of moves), to end the game. It shows you a scenario of white vs. black pieces (the user is always white), and shows the moves, also giving tips and tricks on the side to remember it. For the perfect learning experience, it gives the user a similar scenario testing their knowledge of what was just taught to them. For pro chess players, I think this is good reefresher because it teaches them fundamentals which they might forget, due to overthinking in highly-stessful situations. Grandmaster Scratch, unlike Lichess and Chess.com, gives you tips that stick in your brain. The major distinguishing feature of my program is that it doesn't just give you a demonstration; it asks you to try a similar problem to perfect your understanding.
Project Link: https://scratch.mit.edu/projects/1162277698
User Instructions: anything the user needs to know in order to successfully run your program.
The embedded and shared Scratch project.
The link to your Scratch project.
A SOUL reflection on the program (Strengths, Opportunities, Understandings, Limitations).
SOUL:
Strengths of this work/project
My strengths of this project were my explanations and my transitions through each step
Also, my broadcasts were well coordinated despite having around 20 of them (they all had meaningful messages, too)
Opportunities to improve this work/project
One of the opportunities to improve this project would be to fix the moment where I accidentally do two moves in a row with the black king
However, I compensate the next move by doing two moves with the white pieces
The waiting time between each move can be a bit long
Understandings you gained from this work/project
Some insight I gained from this project was how to make only one square the right one when it was the user's turn. I made it so that if you dragged the piece to the wrong spot it would automatically go back to it's original square. I also learned how to make sprites "draggable".
Limitations of this work/project
Somethings that took me a lot of time were doing different scripts on the same sprite, but in different broadcasts. With these mistakes, it took me long periods of time (and help from Mr. mark:)) to find out where the bug was. Also, there are issues where you can only drag the pieces at specific time when it's the user's turn.