NetSerialize is required if we ever need to replicate.
RequiresNetIdentical
Likewise for NetIdentical, but also if we plan to invoke during Resimulate too (even if non replicated, we use NetIdentical for comparisons. though this is probably a non practical use case).