I have spent an awful lot of hours trying to figure out why predicted spawns were not properly classified.
It appears the sole reason is that this does not work consistently in the Editor, once compiled there are seemingly no issues.
Attached is a project with a simple setup a spawner that shoots out spheres.
Th sample will predict one sphere but also shoot a purely interpolated version to make it obvious where the client predicted sphere is in relation to the actual sphere on the server.
When run in the editor with the Entities Hierarchy tab active, the prediction classification will fail most of the time, as can be seen in the console.
The reason being that the list of predicted spawns is empty even though it clearly shouldnât be.
If the Entities Hierarchy is deselected, classification completes successfully.
The issue is clearer if the latency is set to something like 40ms.
Hey! Thanks for the detailed report and repro.
Can you file this as a Unity bug report (via the Editor) and link that IN-XXXX here, please?
Please make the title include both âEntities Hierarchyâ and âNetcodeâ. Thanks!
@NikiWalker Despite the fact that I responded instantly (October 5th) to the questions asked by the support team, the case has now been closed with the reason that I didnât respond.
It explicitly says Please reply to this email if you have any additional information that could help us solve the issue.
That clearly doesnât work and if responding to the email sent out by the bug system doesnât actually work, coupled with the fact that the link to the case
produces the following.
How exactly am I supposed to communicate with the support?
I have another pending bug report to which I have also replied, likely in vain. IN-57247 someone is awaiting my response there as well.
Ah, yeah thatâs a problem. Iâll try to repro this myself with your project soon. Thanks again for the direct repro, itâs incredibly helpful. It may take about a week. Iâll also forward this workflow issue, as youâre right that it doesnât make any sense. Apologies for this.
Yeah that seems to be the issue, replies do not get into the system.
I simply replied to the request (email) for a video that shows the problem. So email format.
I have now attached the video here instead
First, thanks for the update.
However, which dashboard are you referring to, the Atlassian one to which there is a link in the email?
Because as stated in an earlier post above, that unfortunately, does not work, I simply get an access denied page.
I have also checked the Unity Gaming Services dashboard, but that does not seem to have any connection to this.
The first time this proceeds to an account creation flow.
Once the account is created, I arrive at the âNo Accessâ page.
Same thing on subsequent logins.
So if the link is supposed to simply grant access, as is suggested by the Please do not share this URL with anyone else because the information youâve submitted is accessible by anyone with this link
Then that is not the case.
Would you mind retrying your existing URLs? Weâre able to find you (as a user) via the email address you used, and weâve manually added said email address to our customers list.
Iâm seeing frequent Classification failures in Editor (~40fps) fps, and less but often enough in bulit player (~180fps)
Entities/Netcode/ect 1.2.1
Is there a NetCodeConfig setting that may add to and/or alleviate this issue that I may have adjusted, because it seems to be a lot more frequent recently.
The issues seems to be that when it reaches our custom ClassificationSystem job, the PredictedGhostSpawn buffer doesnât contain the client predicted spawned projectile entity. Our client always spawns the projectile before the server, so itâs either not getting added, or getting added and then deleted before the server snapshot hits the client. How can I tell which? I do always see the client projectile being spawned first on the client, but then itâs not in the PredictedGhostSpawn buffer and the client entity gets despawned and replaced by the snapshot entity spawn.
In presence of tick batching on the server (that is by default active for the server) there is high chance of mismatch in the predicted spawn tick (because the server didnât take it into account).
Also, if it may be the case that if the server run slow or the client didnât receive the ghost before the current interpolation tick equals the spawn tick of the entity (that is used as marker to detect a misprediction) the entity may have been delete client side.
In order to fix the latter, we are going to add a way to customize how to wait for the despawning a predicted entity.
For the first issue, mostly due to batching in the editor, we need to fix that our side and provide:
a more reliable way to match predicted spawned ghost (working on it)
fix the tick mismatch because of catching up ticks on the server