i hate people keep telling others learning c++. before you point others to the path. think what you really know to this. c++ won't drive you there. you need some mixed basic knowledge before you really do this.
to a simple wallhack, you need this:
1) some basic d3d knowledge, at least to know what are the main methods doing at present, beginscene, endscene, drawindexedprimitive and reset.
2) some basic asm knowledge, at least you will need this for doing the d3d virtual function detour method, d3d mid function method.
3) some basic c++ knowledge, at least you know what you're coding into the methods.
i always still recommend people starting from fundamental and stop asking shortcuts to make hacks. there is no shortcut i can say. go for more reading and especially in practice to code. you need all these knowledge. experience will come where you start to do your practices/exercises. if you are really hardworking enough, c++ basic can just take you a month to understand them, asm basic will take you another weeks, d3d9 basic will take you may be like a month? besides, there are still a lot of topics you need to go, before going into RE (reverse engineering). learn some basic PC memory architecture, basic intel cpu (80386) architecture before you really go into RE. RE is such a very vast topic, especially coming into debugging and memory analysis.
i took about 4-5 yrs to learn and believe not, i am still noob because i am not a hardwork guy. a friend that just learned 3 years ago, he is coding a lot than i do. he deserves that because he pays his hardwork for readings and exercises. don't blame yourself not talent enough, blame yourself not hardworking enough if you think you're still newbie.