I still can't understand why you don't want to go the anno route. It means you simply have to modify the blocks to include a wipeout inside their definition (one modification per block type), and also to set them to annotative. Once you've done that you can overwrite the new version into any other drawing so you don't need to re-do the modification every time.
Next you can set all the pipe widths=0 and rather use ObjectLineWeight to differentiate how "thick" they should appear. Then set LTScale=1.0, MSLTScale=1 and PSLTScale=1.
As a sample I've done just that to your sample Drawing1.DWG (the pipes and sprinkler head modified) and included 2 viewports at different scales: 1/32", 1/8" and 1/4". All showing the exact same linework. See attached eTransmit (extract fully to see the CTB file as well). It took me all of 1 minute to achieve this.
IMO this is a lot simpler and faster to do, and even easier to accomplish in lisp - so if you want to automate this process it won't be as complex to achieve.