If your goal is to create an emulator for an MMO or similar, then no, those kinds of skills wont really help much. You need to understand how to reverse engineer various aspects of a game in order to create a working emulator for it.
Such as things like:
Client Side Data Files
- Understanding how to decrypt/decompress the files if required.
- Understanding how to dump/read the files. (Not everything is plain-text or laid out in simple setups. Stuff is often binary data compressed down to as little data as possible/needed.)
- Understanding how the game client reads/handles/interacts with the given data at all states/stages of the game.
Client < > Server Protocols
- Understanding how to decrypt/encrypt the games packet information.
- Understanding how to handle all steps of the games communication flow. (A lot of games use multiple stages of protection such as compression and encryption, often times multiple forms of encryption. Along with that, timestamping, hashing, etc.)
- Understanding how the client processes incoming data from the server.
- Understanding how the client builds outgoing data to send to the server.
- Understanding how to trace/debug/reverse all needed functions inside of the client to gain all needed information for all required packets.
You also need to understand and be able to tell when multiple servers are being used, when things are handed off to other servers etc. Most MMOs use multiple-server setups to separate the various aspects of the game. Such as things like:
- Authentication server. (Used for logging in to your account etc.)
- Gateway server. (Used for selecting the desired server to play on, getting list of available servers, etc.)
- Chat server. (Used for processing communications in-game.)
- Game server. (Multiple instances are usually used for clustering, as well as setups like channels or similar. These are also generally setup as either 1-per-zone or region in the game.)
Along with this kind of stuff, you need to understand and be able to reverse the various object data of the game, such as players, monsters, other entities, items, etc. to be able to know what is what, what data is used for various objects, etc. Most of the work related to this stuff is all reversing game structures/data.
Things like aimbots, triggerbots, glowhacks, esp, and junk are all pretty much non-related. At most, coding an aimbot will require you to reverse some of the entity data/info to be able to find what to auto-target at and such. The rest are all rendering based nonsense.