Build neural network to calculate points for a board game I want to be able to calculate how much points each player has for a board game by taking a picture on the board game.
I do this as hobby, not for university or professional purposes. I will use it while playing with my friends and also I hope this will help me build some knowledge about ML.
I plan to do that with supervised learning. Take many pictures of the game and tell the machine what is the correct output.
The game scoring is not something straight-forward. Players may control different territories. A territory is controller if a player has units there even if there is enemy buildings. The game is Scythe. From my previous knowledge about ML I know that small changes in the image (for example the angle) from the images you gave to the machine to learn may bug it to recognise them.
Questions (I do not want someone to tell me how to do it but rather which approach is better so I can read more about it):

Is supervised learning the best option in this case?
I plan to build many micro neural-networks for the different cases - recognise who controls a territory and which territory (which territory seems very hard); separate network to recognise if there are resources on some players territory (this seems very hard, as the combination of resources might be from 0 to many; shall I just put different combinations of resources (+numbers of them) and take many pictures?). There are lots of combinations. I cannot take a pic on every of them.
Theoretically, you could take many pictures and map these pictures to the score of each player. However, I would advise against it. First, you would need plenty of pictures and it might be infeasible to cover all possible game scenarios. Second, game scoring is discrete whereas a traditional neural net would approach it as a regression. This means that your outputs will likely be close but rarely perfectly on the money (and you will need to round up). You could however try to predict who is currently winning and turn this into a classification problem.
Now back to predicting points. Since there already exists a complex point-scoring system based on the board, it would be rather silly to try to let a neural network figure it out on its own. Instead, I would suggest that you implement the point-scoring system and have the neural network translate a picture of the board into a data representation of that board. Your system would do something like this:
def scoring_system(board):
    // Insert logic here
    return points

def your_neural_network(image):
    // Your code
    return board

points = scoring_system(your_neural_network(image))

So, instead of having this be a regression problem, you have multiple problems to solve:

object detection (where are the pieces)
object classification (what type of piece is it?)
image segmentation (where is the board, what territories are there)
Etc.

Now some of these bits could be solved with traditional computer vision, but neural networks can be well-equipped as well.