Anonymous | Login | Signup for a new account | 2025-06-17 16:14 UTC | ![]() |
My View | View Issues | Change Log | Roadmap | All Projects Issue Support Ranking | Rules | My Account |
View Revisions: Issue #2021 | [ All Revisions ] [ Back to Issue ] | ||
Summary | 0002021: Clients are not made aware of Target pointer if bulletpuff has +PUFFGETSOWNER | ||
Revision | 2014-12-06 17:16 by Dusk | ||
Additional Information | Quote |
||
Revision | 2014-12-06 03:27 by Dusk | ||
Additional Information | Quote |
||
Revision | 2014-12-06 02:34 by StrikerMan780 | ||
Additional Information | 22:03 <TheEnigma> The bullet tracer code that I put together works wonderfully offline, but has a major fucking freakout online. 22:05 <TheEnigma> I'm guessing the pointers of bullet puffs are either not sent to clients at all 22:06 <TheEnigma> or, the pointers of an actor spawned by the server rather than clientside, aren't transferred to clientside spawned actors/effects later (which is a major problem). 22:08 <> Joseph|Away (~joseph_hick@JosephHicks-12929.users.zandronum.com) is now known as Joseph_Hicks 22:14 <TheEnigma> Also:'http://zandronum.com/tracker/file_download.php?file_id=1338&type=bug [^]' 22:14 <Dusk> bullet puffs have no net ids 22:14 <- Devil-AFK (DatAss@argon.rfc1337.net) has quit IRC [Ping timeout: 300 seconds] 22:14 <Dusk> anything that scripts them is prone to break online.. 22:15 <TheEnigma> Any way for them to at least have it so that they spawn with the correct pointers, if at least assigned by the client? Ie, my bulletpuffs that use +PUFFGETSOWNER still has the Target Pointer set correctly/visibly to the client? 22:15 <TheEnigma> Because, that really seems like a bug to me if they don't. 22:15 <TheEnigma> Could REALLY cause problems down the road with one of the new ZDoom features down the road that I can think of 22:16 <TheEnigma> where Teleport Fogs target the owner of the fog. 22:16 <Dusk> problem is that sending netids with bullet puffs will considerably increase bandwidth usage 22:16 <Dusk> perhaps they should be sent with netids if they have PUFFGETSOWNER 22:18 <TheEnigma> I'm just thinking though, is there some way to fix it so that they get assigned the proper owner even if they don't have netids? 22:19 <TheEnigma> Hope I'm making sense 22:19 <Dusk> they have the proper owner 22:20 <Dusk> the problem is that without a netid, the puff is completely unaddressable online 22:20 <Dusk> i.e. it becomes peer-local 22:20 <TheEnigma> And that's understandable, but the effect that I'm pulling off is purely clientside 22:21 <- TheCitrusKiwi (TheCitrusKi@I.am.the.Law) has quit IRC [Connection closed] 22:22 <TheEnigma> Maybe the issue is elsewhere. Perhaps SXF_TRANSFERPOINTERS isn't working on clientside actors, or A_ReArrangePointers 22:22 <TheEnigma> er, A_RearrangePointers* 22:23 <TheEnigma> The whole thing works this way, the bulletpuff spawns a clientside actor, ie: A_SpawnItemEx("MinigunTracerSpawner", 0, 0, 0, 0, 0, 0, 0, SXF_CLIENTSIDE | SXF_SETMASTER | SXF_TRANSFERPOINTERS, 0) 22:23 <TheEnigma> Then 22:23 <TheEnigma> The new actor does this: TNT1 A 0 A_RearrangePointers(AAPTR_MASTER, AAPTR_TRACER, AAPTR_TARGET, PTROP_NOSAFEGUARDS) 22:24 <Dusk> hmm 22:24 <TheEnigma> Then fires a tracer projectile at the new target, from the source (the puff). 22:24 <TheEnigma> the source being the clientside actor moved in front of the player via A_Fire 22:25 <TheEnigma> I should put together a test wad. 22:25 <Dusk> does the miniguntracerspawner get spawned at all? 22:25 <TheEnigma> Yes 22:25 <Dusk> yeah a testcase would be nice 22:25 <Dusk> i could look into it because even without a netid that should work 22:25 <TheEnigma> The MinigunTracerSpawner does get spawned 22:25 <TheEnigma> and it shoots the tracer 22:26 <Dusk> hmmmmmmmmmmm wait 22:26 <TheEnigma> but not from the player like it should 22:26 <Dusk> but it needs to know the target pointer? 22:26 <- Joseph_Hicks (~joseph_hick@JosephHicks-12929.users.zandronum.com) has quit IRC ["sleeeeeeep pls"] 22:26 <TheEnigma> it spawns from the puff, and shoots in an awkward direction 22:26 <Dusk> it needs to know the target pointer of the puff? 22:26 <TheEnigma> It needs to know the target, and the rearranged pointers to the tracer. 22:26 <Dusk> okay well the client doesn't know this 22:26 <Dusk> which is why this isn't working 22:27 <TheEnigma> Wait 22:27 <TheEnigma> As in the target the puff recieves from PUFFGETSOWNER? 22:27 <TheEnigma> ie, the player who fired it 22:27 <Dusk> yeah the client doesn't know this 22:28 <TheEnigma> Thought you said it did... 22:28 <Dusk> so i'm thinking maybe it should be told it if the puff has PUFFGETSOWNER 22:28 <Dusk> no i never said anything like that 22:28 <TheEnigma> 22:19 <Dusk> they have the proper owner 22:28 <Dusk> they have the owner but only on the server 22:28 <Dusk> i guess i was a bit unclear there 22:29 <TheEnigma> Hmm. 22:29 <Dusk> but yeah as a fix i think the server should sync the target field for puffs if they have PUFFGETSOWNER 22:29 <TheEnigma> Yeah, it'd be nice if they were made aware 22:29 <Dusk> please make a ticket for this, i'll hack it away tomorrow 22:30 <TheEnigma> Also, if clientside predicted puffs are on, they should just get the owner through the clientside. 22:30 <TheEnigma> Since it should already know that you're the shooter... 22:30 <TheEnigma> Dusk: what should I call my report? 22:31 <Dusk> uhh i honestly don't know 22:31 <TheEnigma> "Clients are not made aware of Target pointer if puff has +PUFFGETSOWNER"? 22:31 <Dusk> this is getting a little abstract 22:31 <Dusk> yeah sounds good enough |
Copyright © 2000 - 2025 MantisBT Team |