Add slope to existing flat porch/balcony
Slope is quite easy. 3 ways. First, is to cut full length wedges out of 2x4's or bigger &amp; screw them to the top of the sub-floor at the joist locations. Second, is to remove the sub-floor too &amp; sister-on pitched or sloped 2x4's or bigger. Third, is to use concrete or cement over the sub-floor &amp; new decking, the floor needs to be real stiff to avoid future cracking. Typically, just 1/8" per foot is enough to keep everything heading out ...anything more is better.

Yes, a level should easily indicate if the floor is already sloped outward or not or even sagged in either direction. As far as good waterproof material. I'd probably opt for a 3/4" plywood (not OSB) with Cement Board on top of Options 1 &amp; 2 for all taped &amp; cemented seams &amp; screw heads to then be covered in Concrete Resurfacer.

This would just need an Exterior Masonry Sealer to prevent dusting &amp;, if desired, could be painted with a porch or garage floor paint. Glued-down Aluminum Diamond Plate Panels or Textured Thick Plastic Sheeting would be my next option, seams would just be caulked &amp; painted (so they stay nice looking). I wouldn't try to protect any kind of wood though, as you've discovered it's a failure waiting to happen...this is true whether sloped or not.