To give you an idea of the scale of the problem:
At its peak, the webserver was being hit with 980mbit/s at ~17 million packets per second. Every second, the server had to process ~17 million little packets of information, decide what to do with them, then actually do it. Even ignoring a packet takes resources, because the computer must decide that it should be ignored. This is the equivalent of 2600 cable modems uploading packets at maximum speed. Essentially, the server had to process 2600 times more network data than your PC would at full tilt. The webserver literally has special processors designed for just this job (Called ToCs) and all four of them in parallel were running at near maximum.
The webserver was fairly easy to protect from a technical standpoint, as HTTP is a well documented, open protocol that has been in place for decades. I needed only to install a piece of hardware and connect a nice fat pipe to it, do some configuration, and we are in business.
The gameserver is different. Minecraft's protocol is not open, its not documented to an open standard level, and rules had to be custom designed to protect the server. The protocol itself doesn't understand forwarding, so the DDoS Protection Service (JavaPipe.com) had to custom engineer everything. Incoming rules, ddos detection, packet analysis, mangling, and forwarding. They had to learn how to decode Minecraft data packets and analyze them, modify them, and shoot them out to us. They have done a freaking phenomenal job, and now the last bits of work are on us.