I've done basic MW3 stuff using leeched offsets/structs, such as aimbot, WH or simple ESP (weapons etc).
That's cool, but what I really want to do is get more familiar with the engine and go more in-depth - for starters, finding the addresses/structs myself would be a reasonable goal. The question is, how do I go about this? I can think of a few options:

study Quake3 source, engine & network model
just sit there, staring at asm in IDA/Olly, trying to figure it all out
browse MPGH's/UC's tutorials/source releases

To what extent should I do the above? What to start with? Is there anything else I could try, or any tips you could give me?