Probably already mentioned, but I'll post it anyway:
The Spray Can and FX Can cannot paint non-raycasting bricks. A datablock option like "collideWithFxBrickAlways" (similar to "collideWithPlayers" for the Radio Wave) would be helpful. Perhaps even a field where you can enter several type masks? (e.g. $TypeMasks::PlayerObjectType | $TypeMasks::StaticObjectType | $TypeMasks::VehicleObjectType)