Coding skills aren't needed if you want to code simple trainers. Coding skills are essential if you want to do cool and advanced stuff.
As you brought up stack and didn't know whether it can be applied to hacking.. hell yeah it can be. Stack exploits are very powerful and brutal exploits, you could empty a whole server in a game by causing stack corruption/buffer overflow on clients or the server itself (really bad coding on game devs side). Or could execute your own payload on the target machine for example. There's tons of stuff you can do with stack. And last but not least, it's one of the main concepts you'll need in reverse engineering.. so learn how the stack works.
In general, if you want to be a good hacker, you need to know how to program, so learn everything you can about programming