All these fields are static which means any mod using these constants are going to get null instead of their desired values when they do Vec2.ONE and such. I assume you thought these were non static. But because they are static, all Vec2 objects point to the same reference for these fields. You aren't saving any memory as a result really. Just breaking mods instead.
Yes, you are right this will break a lot of mods, This is fixed in 0.0.8 in 1.18.2, and 0.0.7 for the other versions 1.19.2, 1.19.3, 1.19.4, 1.20.1 and 1.20.2, i hope you have a good day.
This mixin is not safe https://github.com/AbdElAziz333/Saturn/blob/mc1.20.1/dev/src/main/java/com/abdelaziz/saturn/mixin/allocations/vec2/Vec2Mixin.java
All these fields are static which means any mod using these constants are going to get null instead of their desired values when they do
Vec2.ONE
and such. I assume you thought these were non static. But because they are static, all Vec2 objects point to the same reference for these fields. You aren't saving any memory as a result really. Just breaking mods instead.