recent finding that might be worthwhile to someone who understands this better than me:
changing "ProjectileType" in tf_weapon_particle_cannon.txt from "projectile_energy_ball" to "projectile_rocket" seems to fix the nosmoke mod (ie no massive blast particle) but breaks the weapon. moreover it does not work in casual mode (even though it seemed to work on an sv_pure 2 listen server).
the weapon behaved exactly like a rocket launcher with this change, except it did not need ammo, and still had the alt attack, except this attack just fired a regular rocket after charging.
"ProjectileType" "projectile_rocket" // ORIGINALLY projectile_energy_ball