MantisBT - Zandronum
View Issue Details
0004200Zandronum[All Projects] Bugpublic2024-03-06 03:342024-04-08 23:16
Trillster 
 
normalminoralways
resolvedfixed 
3.1 
3.23.2 
0004200: A_SpawnItemEx does not sync AAPTR_TARGET always
Whenever a +MISSILE actor is spawned using A_SpawnItemEx, the AAPTR_TARGET actor pointer is not always synced to clients, compared to offline behavior and online A_FireCustomMissile behavior.
I've attached an example file which has a few test cases. First, you can use the file offline and run the following commands to see intended output:

summon OriginActor
give FireOriginActor
give SpawnOriginActor

You should see that every print statement correctly prints the player's actor class as the target.

Once you run those same commands online, you'll see that the "Client Target" logs with the "Spawned-" actors will be incorrect depending on which command you ran.
This also occurs in the latest 3.2 betas.
No tags attached.
? ClientTargetCarryoverFail.pk3 (1,413) 2024-03-06 03:34
https://zandronum.com/tracker/file_download.php?file_id=2906&type=bug
patch 4200.patch (2,126) 2024-03-07 02:42
https://zandronum.com/tracker/file_download.php?file_id=2908&type=bug
patch 4200_2.patch (2,092) 2024-03-30 19:47
https://zandronum.com/tracker/file_download.php?file_id=2953&type=bug
Issue History
2024-03-06 03:34TrillsterNew Issue
2024-03-06 03:34TrillsterFile Added: ClientTargetCarryoverFail.pk3
2024-03-07 02:42TrillsterFile Added: 4200.patch
2024-03-07 02:44TrillsterNote Added: 0023306
2024-03-07 03:50Ru5tK1ngStatusnew => needs review
2024-03-30 19:47TrillsterFile Added: 4200_2.patch
2024-03-30 19:47TrillsterNote Added: 0023511
2024-04-07 20:36Ru5tK1ngNote Added: 0023530
2024-04-07 20:36Ru5tK1ngStatusneeds review => needs testing
2024-04-07 20:36Ru5tK1ngTarget Version => 3.2
2024-04-08 23:16Ru5tK1ngNote Added: 0023562
2024-04-08 23:16Ru5tK1ngStatusneeds testing => resolved
2024-04-08 23:16Ru5tK1ngResolutionopen => fixed
2024-04-08 23:16Ru5tK1ngFixed in Version => 3.2

Notes
(0023306)
Trillster   
2024-03-07 02:44   
I've uploaded a patch which fixes this issue. I'm not certain if there's any bad ramifications with A_SpawnItemEx always syncing AAPTR_TARGET, but it does make the client behavior match offline.
(0023511)
Trillster   
2024-03-30 19:47   
To mitigate any potential performance concerns, I've uploaded a modified patch which applies this change only for +MISSILE actors.

Although it's possible that the initial patch could be fine with testing, after further thought, I'm personally content with only missile actors, since that's mainly where I've seen this issue have impact.
(0023530)
Ru5tK1ng   
2024-04-07 20:36   
Patch was merged in:'https://foss.heptapod.net/zandronum/zandronum-stable/-/commit/24cb4e787ef6cc79501ae1862b7717065b2eb7cd [^]'
(0023562)
Ru5tK1ng   
2024-04-08 23:16   
Using the latest 3.2 beta, I didn't find any issue and the change was tested previously by Trillster.