INTRODUCTION: In my PBL project, users will be able to play a game of chess online using Scratch. Though the game requires users to have a basis of knowledge when it comes to chess, players will be able to practice their skills in an effort to improve. The main purpose of this project is for users to have fun playing a game that we all love. At the end of the day, the users of this game should be able to think about the different moves they could of made to put them in a better position to either win the game (if they lost), or to win the game faster (if they won).
MATERIALS: With this project being created on Scratch, the only materials needed are a computer, so that I can make the chess game
TIP: Before starting the project, it is important to make sure I do research on any Chess related concepts I may have not known. After this, I can go ahead and start the project by making sure I add different scripts to the background so I can create the chess board. After the chess board and chess pieces are added to the project, then I can start adding the blocks of programming so that the chess game can start to function. Once all the programming blocks are added, then I can add extra things to make the game come to life.
SAFETY: Though this project won't contain the use of any chemicals or possible dangerous equipment, there could be unsafe websites when conducting research online. As the creator of this project I must be aware of these suspicious websites and make sure I don't possibly download any unwanted programs to my computer that may put my private information at risk.
PICTURES and/or ACTION VIDEO:
Action Video:
Procedure:
Set up the board: With the game being in scratch, just click the green arrow and the game will automatically set up the board for the user.
Understand the objective: The objective of chess is to capture the opponent's king, while simultaneously protecting your own. A player wins the game when the other player's king is in a position to be captured (also known as "checkmate").
Know the rules of movement: Each type of chess piece has its own unique rules of movement.
Pawns: Pawns can only move forward, one square at a time. They capture pieces diagonally. They can also move two squares forward on their first move.
Knights: Knights are the only pieces that can "jump" over other pieces. They move in an L-shape, two squares horizontally and one square vertically, or two squares vertically and one square horizontally.
Bishops: Bishops can move any number of squares diagonally. They remain on squares of the same color for the entire game.
Rooks: Rooks can move any number of squares horizontally or vertically.
Queens: Queens can move any number of squares horizontally, vertically, or diagonally.
Kings: Kings can move one square in any direction.
Make a move: On each turn, a player must move one of their pieces to a different square on the board. A player cannot skip their turn or move a piece twice in one turn.
Capture pieces: Players can capture their opponent's pieces by moving one of their own pieces to the square occupied by the opponent's piece. The opponent's piece is then removed from the board.
Check and checkmate: If a player moves their piece in such a way that the opponent's king is in danger of being captured on the next turn, it is called "check." If a player is in check and has no legal way to move their king out of danger, it is called "checkmate," and the game is over.
Additional Information:
Observation: When first beginning to make the chess game, my goal was to make the game to where one player could go against someone else in real time, but then I realized it would be better for the user to just practice their skills while trying to get better at the game of chess, so that's why I made it a single player game. I also observed that instead of making the game so hard to player, I would make it easier so that first time chess players can get a feel for how chess works since this is just a beginner level game.
Scientific Theories: Many would assume that since this is a beginner level chess game the opponent, in other words the AI, won't do its best to get close to the King, but in fact the AI will get as close as possible in order to show the user that they possibly made a mistake. Furthermore, the game will tell users if they're making an "Invalid move" in order to tell them that they should definitely move the King because if it was an actual session of Chess, the game would have ended, and the player would be checkmated. In other words, the good thing about my game is that it allows users to learn from their mistakes and ultimately get better at the game.
Analysis: One of the things I analyzed from making the game was that it's best to just make users play on the white side, instead of letting users pick which side they wanted. I could have made it to where the user picks their side, but I want users to be more focused on getting the basics of chess down first and not think about the little things. One thing I wish would have been better would be making the AI respond faster to the user because realistically, I would want the AI to respond immediately, but that doesn't happen. On the bright side, however, this gives the user more time to think about what their next strategy should be so that is another way that my game develops players' chess skills.
Discussion: The project can be improved for next time by specifically telling users what they did wrong, in the event, that they would have gotten checked or checkmated. For example, my game tells users "invalid move", but it could be better if users learned exactly what they should have done instead. Other ways the game could be improved would be by making a pre-game pop-up screen so that users can get even more excited to play the game.
Conclusion: 1. This project allows users to develop their chess skills by learning various strategies to win, while also learning how to make better decisions when it comes to protecting the King.
2. Though this project is not for intermediate/advanced chess players, these users can still play the game because it will give these users an opportunity to practice capturing the King much faster and developing a more efficient plan for achieving that goal.
Real Life Connection / Further Applications
When thinking about the game of chess, many people may think there are no benefits and rather think it's a game just for fun, but that is the total opposite when it comes to this specific game. One of the ways chess benefits society is that it teaches discipline and independent decision making because players must make careful choices during the game since one mistake can lead to a potential loss. Additionally, chess improves the concentration and focus of individuals as players begin to learn that the best chess players are the ones that are so in tuned with the game, whether that's trying to predict what the opponent may do, or thinking one step at a time in order to have an edge on your opponent. Ultimately, chess helps in many ways like helping in one's intelligence, memory, planning skills, and even creativity as one has to find their own unique way to outsmart their opponent.
Essential Understanding:
During this project I learned how to create a chess game while using the scratch online database. While making this game, I was able to learn how to use different scripts, sprites, and backdrops to aid me in creating this project. I was also able to learn how to use specific measurements to precisely place the chess pieces onto the chess board, so when the piece was moved, it would go into the right direction. Along with this, I was able to gain knowledge in programing the chess pieces to where they would only move if the user were to place the piece in the right direction. Ultimately, I had already known about chess in general, I was able to gain an essential understanding into the history of chess in its entirety and how it came to be the game we all know and love today.
Project Link: https://scratch.mit.edu/projects/766680813