The number one way to save weight is to use thin tubing. We made almost everything (including things that saw direct impacts from the field and other robots) out of .0625 6061, and didn't see any failures due to lack of strength. Honestly, when's the last time you saw a piece of tubing fail because it was too thin? It's much weaker to take thick tubing and pocket it than just use thin tubing. Our superstructure weighed 6lbs this year, becasue it was all .0625, and was probably the strongest superstructure we ever built. Here's one of our kids holding up the practice and comp frame in each hand:
On that note, get strength from geometry, not material thickness. If you're doing sheetmetal, use flanges liberally. If you do CNC and you need thick material just in one place (for a bearing, etc), pocket the rest down to .0625" thick. It usually takes out more weight than triangular or circular lightening patterns, and is a ton faster to design.
A lot of your weight is in motors and gears. Changing from steel to alu gears is a major weight saver (and usually, the steel FRC gears are worse quality anyway). Each CIM is almost 3 lbs, and MiniCIMs are 2.2lbs. Banebots motors are usually a lot lighter (and a 775 is more powerful than a MiniCIM). If you need to cut weight really fast, a good bet can be taking off motors.
You will use at least 2 lbs of welding wire on your robot if you weld your frame. If you powdercoat, plan on adding somewhere between 1 and 3 lbs. Wiring weighs at least 10 lbs (and can be much, much more). Sidepanels (even .030 lexan) weigh about 1 lb if they're decently large. Stuff like that can eat up weight pretty fast.
Changing from bolts and nuts to pop rivets saved us a sorely needed 3 lbs in 2012. We try to pop rivet everything possible now. They're even faster to remove and replace than a bolt (wanna race?).
Basically nothing on your robot should be steel if you can possibly help it. OK, if you're using really thin steel instead of alu (because you've done your strength calc/FEA homework), then maybe steel is a reasonable choice. But it really eats up the weight when you start using it in stuff like sprockets or hubs.
You can usually get away with ABS sideplates for gearboxes. It can save a lot of weight compared to alu, especially if you need a specific thickness and don't usually pocket. It machines really nicely too.
When cutting weight, you can usually only nickle-and-dime yourself one or two pounds of weight (by replacing fasteners, drilling holes, etc.). If you need to cut more than 5 lbs, seriously start thinking about whether you can take off any motors, motor controllers, or frame members. It's usually easier to withhold an entire mechanism and lighten it out of the bag than trying to file corners to get just bellow 120 ship day. And if you're more than 15 lbs over, start preparing to remove a subsystem. Something big has to go.
Lightening holes take a lot of time, and don't usually save "that much." Depending on what thicknesses you're using, you'll probably save on the order of 5 lbs over the entire robot by lightening stuff. Even if it's huge, you can probably only save a pound or so in one piece of tubing by lightening it. Most gearboxes, you'll take out less than a pound by lightening. It can make the difference, but there are often easier ways to cut weight. And, pocketing (and making the pockets look pretty) can really eat up a designer's time.
Beyond just making 120, weight up top maters a ton more in terms of performance than weight down low.
Every designer has certain ways they like to cut weight, those are a few of my tricks and pieces of information picked up from 4 years of FRC.