[level refactor]compat_limitpain no longer checkable

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
Major Cooke
Posts: 8170
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

[level refactor]compat_limitpain no longer checkable

Post by Major Cooke »

I was using compat_limitpain in order to customize the behavior of A_PainShootSkull while also maintaining respect for the compatibility option.

But since this was made into a private function, this effectively breaks D4D so it cannot even start. I could easily remove it but that might be breaking an option someone may really be wanting.

This issue does not occur in the master branch.

The reason why I made an alternative function is because the lost souls explode when they impact any enemy and I wanted to attribute the monster responsible being the pain elemental, allowing them to infight with other monsters. I.e. the lost soul attributes the pain elemental as the one dishing out the damage, the source actor.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [level refactor]compat_limitpain no longer checkable

Post by Graf Zahl »

Hm, I never considered that defining the function would hide the CVAR.

The reason for the change is that due to the level refactor the CVAR can no longer reflect a map specific setting on top of the CVAR itself, either in MAPINFO or through compatibility settings. Ultimately the entire implementation was a bad hack and just bit me in the ass when it stopped working.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [level refactor]compat_limitpain no longer checkable

Post by Graf Zahl »

I couldn't fix this in a way that won't require code changes, but those access functions are gone now. Instead you can access the current level's compatibility flags as a single integer variable and get the flags as bit masks.

Use of the CVARs is explicitly discouraged because those only reflect the user's setting, not the map's.
User avatar
Major Cooke
Posts: 8170
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [level refactor]compat_limitpain no longer checkable

Post by Major Cooke »

Understood. Thanks!
Post Reply

Return to “Closed Bugs [GZDoom]”