vector() function creates a temporary vector, in your case containing entity scale values. so modifying it won't affect anything. The correct way is vec_set(my.scale_x,vector(0.5 ,0.5 ,0.5 )), it directly changes entity's scale. PS i guess it belongs to C-script section