Hi! I’ve asked this question a while back Ghost affecting other ghosts prediction stability . What we did since then was to store prediction history for each tick to be able to resimulate all predicted entities from any tick when any receive partial snapshot.
We have not updated to 1.3 yet, so cannot say if it’s fully solved, but been told there should be fixes to some of the issues by enabling forced rollback since we reported issue with this. Unity Issue Tracker - [DOTS][NetCode for Entities] Predicted Spawned Ghost that affects other ghosts does not preserve prediction correctness
https://docs.unity3d.com/Packages/com.unity.netcode@1.3/changelog/CHANGELOG.html
- PredictedSpawnedGhostRollbackToSpawnTick property to the GhostAuthoringComponent to allow predicted ghost spawned by client to rollback and re-simulate their state starting from their spawn tick, until the authoritative spawn has been received from the server. The rollback only occurs if the client receives new snapshots from server that contains at least one predicted ghost."
Might still be issues with referencing prespawns Predicted spawn initial snapshot cannot reference self ghost
For your problem I’m not sure I understand the need of the Instant AOE Selector, why can’t it be resolved on the same tick by same entity or intermediate data structure? It seems a bit unecessary to sync for just one tick of lifetime. If I remember correctly, destroying ghosts instantly may remove it from ever being sent as well. Thus we try to keep things networked for at least some extra seconds by marking it “destroyed” in logic. If you still need it one tick later & predicted, have you considered moving it to a “singleton ghost” with a dynamic circle buffer?
Feel free to poke me on discord as well