Commit 13774b7
authored
fix: detect entity deletion by Zeus and scripts via null tracking (#109)
The dedup optimization (commits 83/84) combined with extension gap-fill
caused Zeus-deleted entities to persist in recordings. Without an
explicit DELETE command, gap-fill extends the last alive state to the
end of the recording.
Units: add trackedUnits HashMap mirroring trackedVehicles. Each frame,
check for null object handles and send :SOLDIER:DELETE: when detected.
Remove from HashMap on disconnect/respawn to avoid duplicate DELETEs.
Vehicles: the existing isNull detection sent a final dead state but no
:VEHICLE:DELETE:, so gap-fill had no boundary. Now sends DELETE after
the dead state.
Catches all deletion sources: Zeus, deleteVehicle, garbage collection.1 parent 4acbb25 commit 13774b7
3 files changed
Lines changed: 25 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
83 | 86 | | |
84 | 87 | | |
85 | 88 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
44 | 45 | | |
45 | 46 | | |
46 | 47 | | |
| |||
120 | 121 | | |
121 | 122 | | |
122 | 123 | | |
| 124 | + | |
123 | 125 | | |
124 | 126 | | |
125 | 127 | | |
| |||
186 | 188 | | |
187 | 189 | | |
188 | 190 | | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
189 | 204 | | |
190 | 205 | | |
191 | 206 | | |
| |||
305 | 320 | | |
306 | 321 | | |
307 | 322 | | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
308 | 327 | | |
309 | 328 | | |
310 | 329 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
45 | 48 | | |
46 | 49 | | |
47 | 50 | | |
| |||
0 commit comments