I am making a new blacksmithing bot (aka I started from a blank cpp file) as a personal challenge to myself. I have a couple things I have no clue how to do

1.) image recognition

I don't need it to be fully automated yet, but right now I basically spend a good amount of time just creating the input for my program and doing the clicking after the program does its job. I am coding in c++ so I don't know if it can even read images/click by itself, but if someone could refer me to a place where I can learn how to do it. I know from lurking that pixels>images for speed, but since I only need to do it once, it really probably doesn't matter too much.

2.) Multithreading

At this point, I seem to think that multithreading>multiprocessing. I know c++ can do multithreading, I just don't know how to do it, and how to make sure trying to do it won't break the program completely.

3.) Preparing the program for a release build

I have it in debug build, and it works fine, but if I put it in Release it breaks. This is something I have no experience in, so it would probably be best to link me to a guide.

I know there are a lot of things that I don't have the knowledge base to do, but this was a pretty ambitious project for how little coding experience I had when I started.