Question: In python 3 w/ a few comments thanks! Write a function make_move_normal(board_string, start, end) that takes as input a string representation of the current board
In python 3 w/ a few comments thanks!
Write a function make_move_normal(board_string, start, end) that takes as input a string representation of the current board state, a tuple representing a the initial position of the piece to be moved (start), and a tuple representing the end position (end) the piece is to be moved to. This function will validate if the move is valid and if so, execute the move.
The function should return a string representation of the board reflecting the position of the pieces after the move if the move is valid, or None if the move is invalid.
>>> print(make_move_normal('xxxx........oooo', (0, 0), (0, 1))) '.xxxx.......oooo' >>> print(make_move_normal('xxxx........oooo', (0, 0), (2, 2))) None
If you would like to view the visual representation, you can use the functions you have been provided
>>> draw_sura(make_move_normal('xxxx........oooo', (0, 0), (0, 1)))
Based on the game of Surakarta
. It is similar to chequers, but has some unique twists. Your goal, is to implement the functionality required to ensure that only legal moves are allowed by the Python-based version of Surakarta.
The Rules of Surakarta (adapted from Cyningstan):
The board consists of a six-by-six grid of lines, with two concentric circular tracks at each corner, as shown below. Pieces are placed on the points where lines intersect. Each player starts with twelve pieces (black or white tokens) that are placed on the intersections nearest that player.

- Players decide at random who moves first (passing is not allowed).
- A normal move = a player moves one of their pieces from one intersection to an adjacent intersection, horizontally, vertically, or diagonally. Pieces may not jump over other pieces, and only one piece may occupy an intersection at any point in time. The circular tracks around each corner may not be used for normal moves.
0 4 0 4
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
