[2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
Post Reply
User avatar
Yholl
Posts: 1953
Joined: Mon Dec 17, 2012 11:08 am
Location: Here, stupid.

[2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Yholl »

The RGF_CORPSES flag in A_RadiusGive doesn't appear to work at all right now. I need it to be able to recreate the skull items from DoomRL properly.
User avatar
Major Cooke
Posts: 8176
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Major Cooke »

Pre-dead corpses or monsters that were actually killed?

Pre-dead monsters don't have the +CORPSE flag (see Skip_Super).
User avatar
Yholl
Posts: 1953
Joined: Mon Dec 17, 2012 11:08 am
Location: Here, stupid.

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Yholl »

Major Cooke wrote:Pre-dead corpses or monsters that were actually killed?

Pre-dead monsters don't have the +CORPSE flag (see Skip_Super).
Killed, I know about how the pre-dead ones are. I spawn imps, kill imps, and the RadiusGive has no effect on them. Changing the flag from the corpse flag to the monster flag, and using it on living monsters works fine, using the corpse flag on dead ones doesn't work at all.
User avatar
edward850
Posts: 5886
Joined: Tue Jul 19, 2005 9:06 pm
Location: New Zealand
Contact:

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by edward850 »

Lacking an example, I can't actually test this, but I have noticed a potential logical hole. While all monsters can have MF_CORPSE, so can anything that dies with a raise state (thanks Batman Doom), and players.
More over, RGF_CORPSES on its own wont actually include anything, so you still need to check for another flag type. RGF_MONSTERS is required to check for all corpses of monsters, but the kicker here is it also means that normal monsters are also inclusive. Something tells me this isn't what you want, and the flag check logic here is rather poorly designed.

... Almost as if it was never actually tested.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49073
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Graf Zahl »

Poorly designed indeed. The fact that all checks are for exclusion, not inclusion means that there's basically no way to change this.
User avatar
Major Cooke
Posts: 8176
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Major Cooke »

Would remaking the function as another work better, or would that just be a waste of time? I.e. A_RadiusGive2 or A_RadiusGiveEx... It's something I'd very much like to fix but it appears that would be the only course of action if we want to avoid breaking anything.
User avatar
NeuralStunner
 
 
Posts: 12326
Joined: Tue Jul 21, 2009 12:04 pm
Preferred Pronouns: He/Him
Graphics Processor: nVidia with Vulkan support
Location: capital N, capital S, no space
Contact:

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by NeuralStunner »

I'm all for an improved remake, especially if it actually does work just like A_Explode.
User avatar
Major Cooke
Posts: 8176
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Major Cooke »

Agreed, but couple things. First, I'm going to ensure I don't waste time if Graf doesn't approve, or Randi. Second, even if approved, don't expect the pull request to be merged anytime soon.
User avatar
phantombeta
Posts: 2089
Joined: Thu May 02, 2013 1:27 am
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: Brazil

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by phantombeta »

NeuralStunner wrote:I'm all for an improved remake, especially if it actually does work just like A_Explode.
I asked Edward850 to take a look at that bug.

Code: Select all

[...] [02:51.32 AM] <@Edward850> The bounding box iteration is just a blockmap. Distance checks are still needed, and explosions do actually check the radius. [...]
[...] [02:55.18 AM] <@Edward850> I think what I might do if I get the chance to look at this tonight, is actually just make common functions between these two... uhm... functions. [...]
[edit]I think a new function should not be made...
A_RadiusGive is completely broken and the current implementation should be deleted and replaced with a rewritten version of the function. Compatibility doesn't even matter, the function doesn't even work like it's supposed to so it should be completely rewritten.[/edit]
User avatar
Beed28
Posts: 598
Joined: Sun Feb 24, 2013 4:07 pm
Location: United Kingdom

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Beed28 »

I'm up for it being rewritten. If the new one can be made to actually work with a mad-wide radius, I wouldn't need to use such a hacky method in Doom: Megabounce. Also, if it's going to be completely rewritten, would it be possible to make it work with RGF_ITEMS, or would that still be impossible?
User avatar
NeuralStunner
 
 
Posts: 12326
Joined: Tue Jul 21, 2009 12:04 pm
Preferred Pronouns: He/Him
Graphics Processor: nVidia with Vulkan support
Location: capital N, capital S, no space
Contact:

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by NeuralStunner »

phantombeta wrote:I asked Edward850 to take a look at that bug.
Ah, cool. I was going to mention it to him myself but never got around to it. (Been taking a break from ZDoom for the most part, lately.)
User avatar
edward850
Posts: 5886
Joined: Tue Jul 19, 2005 9:06 pm
Location: New Zealand
Contact:

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by edward850 »

Well if it's being rewritten there really isn't much for me to do anymore. :P
Edward-san
Posts: 1774
Joined: Sat Oct 17, 2009 9:40 am

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Edward-san »

edward850 wrote:While all monsters can have MF_CORPSE, so can anything that dies with a raise state (thanks Batman Doom), and players.
More over [...]
Uh, I miss the meaning of that sentence, as there isn't the grammatical main clause.
User avatar
Major Cooke
Posts: 8176
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [2.8pre-1675-g7be6041] RGF_CORPSES does nothing.

Post by Major Cooke »

Post Reply

Return to “Closed Bugs [GZDoom]”