1) Prediction - Guessing what your opponent does before they pull out thier attack, then finding a way to counter it for your benefit.
2) Case Construction - Knowing all your opponent's possible actions when the opponent does a specific thing, remembering what he commonly does, then punishing it accordingly.
3) Spontaneity - Being random so your opponent has a harder time reading you.
4) Dynamic Reactions - Changing your actions to keep your opponent from punishing you.
5) Patience - Waiting for an opening or a specific thing your opponent does to punish.
6) Unpredictability / Conditioning - Guess what your opponent thinks you will do, and change it up in his face.
7) Strong mindset / emotional control - Don't get frustrated or flustered and if you can't do something you wanna, find another way to do it without harming your chances of winning.
8) I tend not to be patient in my smashing, I'm a tad agro-aggressive. Lately I have been changing my style to implement this (some scrubby player has been bugging me with constant roll or shield > dsmashes with pikachu. I don't like to not 4-stock this guy...) Instead of attacking all the time, I try to wait for his roll and i grab him, wait for his tech roll or ground roll, approaching SHL to another grab. I also wait for his up > b when recovering and punish accordingly.
A basic drill I could do is play against my other friend (Ganon, best person in my area =( ) and try to figure out when he does his fairs (main move he manages to hit me with) and stop him. (He changes it up a lot, so I can be patient and try to read his changes as he comes up with them)
9) 4 stock Ganon vs Falco on FD
Stock 1: Take a Ganon and pillar him with nair > shine > dair > double shine > bair , wait till he rushes me, wavedash backwards, grab, bthrow towards edge, and nair. Laser him while he's off the edge, jump off and nair (tip of the foot so he moves horizontally) to a double jump where I phantasm back to the edge where I'm under him just far enough so if he fast falls he'll get meteor spiked, but quick enough so he can't stomp me. If he gets phantasomed he's dead, if not i'll hold the edge till he dies.
Stock 2: Stay on the edge till he tries to rush (his invincibility runs out) double laser from edge to stop him then SHFFL'd fair > jab > jab > grab > uthrow > full hopped rising dair > laser whichever way he techs. When he comes do a triangle jump at ground level behind him, utilt > SHFFL'd bair > turn around and dair him to his doom.
Stock 3: Wait till they aren't invincible and approach with a nair. Get gayed by a wizard's kick to an edge-guard =(. Laser at the Ganon when he comes back to the level. Approaching laser once, then a full hop triple laser to prevent jumping > SHFFL'd uair > bair > approaching laser > grab > fthrow > wavedash towards them > ftilt > grab the edge for invincibility and instantly jump up > bair. Hold the edge and try to be invincible as the Ganon comes each time till he dies.
Stock 4 : Approaching laser them and stop just out of Ganon's grab range and shield. When Ganon attempts to shield grab, wd > shine > pillar up to 50'ish%. Keep attacking till about 120%, and approaching laser him and stop out of his shield grabbing range again and shield. When he attempts to grab, wd > dtilt and win =)
That was a long assignment =p