Need help with an escapable crusher.

Ask about ACS, DECORATE, ZScript, or any other scripting questions here!

Moderator: GZDoom Developers

Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.

Please bear in mind that the people helping you do not automatically know how much you know. You may be asked to upload your project file to look at. Don't be afraid to ask questions about what things mean, but also please be patient with the people trying to help you. (And helpers, please be patient with the person you're trying to help!)
User avatar
HellBlade64
Posts: 46
Joined: Tue May 13, 2014 3:00 pm

Need help with an escapable crusher.

Post by HellBlade64 »

Trying to set up a crusher penalty room so that you can escape it in coop play when someone clears the main area.
Crusher stops, but does not move back up, so if it stops too low I'm stuck and can't use the escape teleport.

Code: Select all

script 17 (void)
{
Ceiling_CrushStop(4);
Ceiling_RaiseToNearest(4,10);
}
User avatar
Enjay
 
 
Posts: 26697
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland

Re: Need help with an escapable crusher.

Post by Enjay »

There is a secret, undocumented feature of Ceiling_CrushStop. No, seriously.
Graf Zahl wrote: Sat Apr 15, 2017 5:31 am The actual parameters for Ceiling_CrushStop are

// Ceiling_CrushStop (tag, remove)

If you add 1 as the second parameter, the thinker will be removed entirely.
So, maybe that's the issue? The ceiling is still regarded as a crusher, and so normal operations can't be done on it. So, try setting that second argument to 1 and see what happened.

Maybe also try throwing a delay in between the two commands.

It's worth checking the thread that quote came from, because there is further discussion about it and I forget the exact status of how this operates these days.

The Wiki certainly still says "Note that ZDoom stores the ceiling's normal height and its current crushing height seperately, so stopping a crusher then attempting to use another special to lower or raise the ceiling will not work." So, I guess that's why the crusher property needs to be removed.
User avatar
Player701
 
 
Posts: 1697
Joined: Wed May 13, 2009 3:15 am
Graphics Processor: nVidia with Vulkan support

Re: Need help with an escapable crusher.

Post by Player701 »

Enjay wrote: Thu Jan 09, 2025 4:38 amSo, try setting that second argument to 1 and see what happened.
The actual value needed here is 2. Here is the correct description of what the second argument does:
Graf Zahl wrote:I checked again. 'Remove' is a game dependent parameter, because in Hexen this worked differently. So:

0: remain in Doom, remove in Hexen.
1: always remain
2: always remove
I can confirm it actually does work like that. I should probably update the wiki article too...

upd: One can also use Ceiling_Stop instead of Ceiling_CrushStop.
User avatar
Enjay
 
 
Posts: 26697
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland

Re: Need help with an escapable crusher.

Post by Enjay »

Thanks for that. I wasn't sure how correct/up to date the information in that thread was.

Looks like you updated the wiki too. :thumb:
User avatar
HellBlade64
Posts: 46
Joined: Tue May 13, 2014 3:00 pm

Re: Need help with an escapable crusher.

Post by HellBlade64 »

No luck with these, unfortunately. Might be a Zandronum specific issue.
User avatar
Enjay
 
 
Posts: 26697
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland

Re: Need help with an escapable crusher.

Post by Enjay »

Could easy be. I'm sure that Zandronum is still based off a very old version of GZDoom and, therefore, it will not have all the features and fixes of the current version of GZDoom.

Return to “Scripting”