How can I create an artificially intelligent aimbot for a game like CS:GO?
Thare are many ways to approache this. One approach to start would be to try to describe the problem using a formalism closer to reinforcement learning. 


Output:


Aiming in any shooter type game, as I recall, involves moving the mouse. So the output of your aimbot has two dimentions. Depending on the required accuracy, you can consider these two dimentions continous, with a limited range, or if you consider each pixel as a integer, you might be able to discretize your action space. (I assume mouse XY coordinates should be input to the game, not increments)


Input:


You  definetly need screen information. You can take the whole screen as input to a CNN, similarly to DeepQLearning for Atari.


Reward function


This might be tricky since your rewards need to be as dense as possible, however, the only feedback you get from the game is that someone was shot. 
It might be ebough but this will definetly increase your training time. 


Training data / Environemnt:


Your environment for training is the game itseld. Using a curriculum learning approach would probably make the training process more efficient. 

You can also try an imitation learning approach, since I assume you are happy to provide expert training examples (in this case probably headshots in the game environment). 

You can read more about how to apply reinforcement learning for games here. The Unity ML-Agents Library also includes sample tracking problems and their solutions.