A note on using shoe polish on cloth.,s hoe polish will permanently stain cloth, at least whatever is used in Marine Corps issue PT sweats. In boot camp we used shoe polish to 'paint' our platoon number on our sweatshirts and no matter how many times it's been washed it's never come out. So if you use shoe polish and some other more permanent methods of weathering your soft costume parts you shouldn't need to worry all that much about washing your costume.
Another method for weathering fabrics which I'm not sure was mentioned is the wear it around and be a slob with it on method. By this I mean wear it while eating messy foods, especially foods with earth toned sauces/gravies (soy sauce would work well), and don't be afraid to let it drip and once it does let it sit a bit and/or rub it in so that it creates a nice stain that will withstand all but the best detergents. Also wear it to work on your car, motorcycle, lawnmower, etc. anything that has grease on it and let it get on and stain the costume.
For hard parts and using the subtractive method I recommend 0000 (extra fine) steel wool to lightly sand the edges of weapons and your armor and anywhere else you want to simulate where the paint has worn/rubbed off over time. Just lightly sand at an area until the undercoat of silver or primer is exposed and it creates a pretty realistic look of worn off paint. The 0000 steel wool is fine enough that it won't leave a lot of heavy scratches but coarse enough that you won't have to spend hours sanding before enough wears away for the undercoat to show. I've used this method on a resin season 1 BSG pistol that I painted and the results (to me) look a lot better and more realistic than what I could accomplish by dry brushing. It