When I did my Flappy clone, I just used double sided pipes - like a large image with 4 pipes, side by side, and an end on each pipe, so it can dangle from the ceiling, stick up from the ground, but also be flipped vertically to provide more variation. I made the pipes large enough to not need to be scaled, scaling a sprite for this is a bad idea, as is using a thousand sprites. Used a handful and re-cycle them as the player progresses through the level.
By using 2 sided pipes, you just have to plonk them along your level - add a pipe at a random height, set the frame randomly from 1 to 4, and flip it around randomly. So for 1 image, you get 8 different pipes that can be used at the top or bottom of the screen. Remember you can flip and mirror sprites - so even if you have highlighting on one side, you can just flip it and it won't look silly because the light source would mostly stay the same. For example the following is a video of Diablo The Prawn - those pipes are stored on a single image and there's only 4 variations of them. Notice that it isn't obvious that there's a restriction, and also that the light source is always on the right hand side. I strongly advise this method, have 4 different pipes, like Greek style columns, tree trunks etc etc - have some fun with it, there are a million Flappy clones already, make yours unique!.
https://www.youtube.com/watch?v=oec_If73h0w
I did this as a standard for other things too, like some swaying seaweed, just did pretty much the exact same thing as with the pipes, used 4 sprites on a single image, random frame number, random flipping, it works very nicely. I just varied the layout of the pipes, some would be a gap inbetween 2 pipes, they'd be rotate randomly from -10 to 10 degrees, some would only stick up from the ground, some would only dangle. Anyway, I found that it allowed for very easy level handling and controlling difficulty was just a matter of reducing the gaps and increasing the speed. I think it's kinda cool to have your level in a way that has never been seen before, and will never be seen again - procedural generation, even on a small scale like in our situation can keep projects interesting - lets face it, nobody on this planet would ever want to design a Flappy Birds level by traditional means.
I did use lower resolution and softened versions of sprites in the distance, as I wanted a kinda underwater, blurry look to things with parallax scrolling and subtle lighting effects. The same technique could be used for trees, backdrop details, clouds, buildings - anything you can think of really.
So anyway, that's what I suggest - draw yourself some pipes, double sided so they can be flipped, and make a good load of sprites from that, like 16, flip them and frame them randomly and re-use them throughout your level. If you concentrate on getting the graphics first then we can always give more specific advice if needed.
I am the one who knocks...