As far as I know, we can change a unit's range by changing its unitweaponrealfield named UNIT_WEAPON_RF_ATTACK_RANGE and the native native BlzGetUnitWeaponRealField takes unit whichUnit, unitweaponrealfield whichField, integer index returns real
or with an upgrade.
You can also change the acquisition range with the native native SetUnitAcquireRange takes unit whichUnit, real newAcquireRange returns nothing
.
But I can't find anything in the entire common.j related to sight radius.
Maybe using a morphing ability to change the unit to a similar unit with the same sight radius for day/night as the "different unit" you are mentioning would work, but I have not yet tested this.