Currently, there are some hidden constants that are used to in networking to limit sizes of arrays.

After discussion, these were just chosen without much consideration other than to limit bad behaving clients from negatively impacting a server.

It would be nice to document these limits so users know they are there (instead of relying on just log files). Further, if these were exposed to project settings, using could do their own heuristics for limits.

Steps to Reproduce
  1. Download and open the attached project.
  2. Go to Edit > Project Settings > Engine > Network Settings.
  3. Modify the Max Array Size value.
  4. Open the MyDefaultPawn BP.
  5. Modify the Max Array Size so it's equal to the current Project Setting.
  6. Open the output log.
  7. PIE.
  8. Open the MyDefault Pawn BP.
  9. Modify the Max Array Size so it's one greater than the current Project Setting.

When the ArraySize in MyDefaultPawn is less than or equal to the Project Setting, the replication should occur and the server should print the arrays size. When the ArraySize is greater than the Project Setting, a log message should print instead showing the size was too great.

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-35660 in the post.

Login to Vote

Target Fix4.15
Fix Commit3183409
Main Commit3198987
CreatedSep 7, 2016
ResolvedNov 2, 2016
UpdatedApr 27, 2018