Dear Friends at Epic,
In beta4, if you forgot to add a replicated var to the replication list, then the client would simply crash.
Which was quite effective in letting me know that I forgot to add a variable to the replication list!
In unrealscript in UE3, you would get a lovely warning telling you that a repnotify var was not int he replication block
Now In Beta5, you get no warnings or feedback at all
The client does not crash
buuut
it makes it very hard to debug this relatively simply but easy to do mistake.
Can you please throw a compile or runtime error when a UPROPERY(Replicated) is not properly added tot he replication list?
Thanks!
Rama
In the current setup, it’s not very easy to assert, since you can legitimately skip a property in GetReplicationList, and it’s hard to tell the difference between the legitimate ones vs accidental omissions. (there are lots of secondary conditions with no context to them that will cause a property to not register that frame, but may on another frame).
This system is changing slightly though, where you will no longer be required to register properties via GetReplicationList (which is called every frame). You will instead register them via a function that only gets called once, and then the low level networking will handle it from there, with formal support for secondary conditions.
This will allow a single place to set off alarm bells if a property is not registered. Will definitely put this in the backlog of things to look at.
“You will instead register them via a function that only gets called once, and then the low level networking will handle it from there, with formal support for secondary conditions.”
This sounds very exciting!
Thanks for taking the time John!
Rama