Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
Krull

How to prevent the player from operating switches through walls

Question

I've been trying to replicate the now standard mechanic among slaughtermaps of putting a switch behind a slowly lowering section of wall. Unfortunately, if the wall is thin enough to put the player within 'operating distance' of the switch they can flip it before the wall lowers. I don't want to use bullet-activated switches as a workaround; other people's maps don't have this problem in the first place. It doesn't seem to be the nodebuilder playing up either.

Share this post


Link to post

11 answers to this question

Recommended Posts

  • 1

The simplest thing to do is to make sure the switch is far enough away from the front of the lowering wall that the player can't reach the switch until the wall is out of the way.

Share this post


Link to post
  • 1

I believe you can use a WR line type placed on the line between you and the switch to waste the use (Doom doesn't check if a special actually exists for this, so you could also set it to a special that doesn't exist, I think, though be careful as you might accidentally set a boom generalized type, or some other port's special. Using something known like a lift might be safest). You can make it do something useless like activate a platform outside of the field of play.

 

Note that frustratingly, GZDoom does not work with this trick and you can still use through it.

Share this post


Link to post
  • 1
4 hours ago, InsanityBringer said:

you can use a WR line type placed on the line between you and the switch to waste the use [...] GZDoom does not work with this trick and you can still use through it.

If you use a SR line type instead of WR, it will work even in GZDoom.

Share this post


Link to post
  • 1
On 3/2/2018 at 1:05 AM, Empyre said:

The simplest thing to do is to make sure the switch is far enough away from the front of the lowering wall that the player can't reach the switch until the wall is out of the way.

Coincidently this is the solution I used recently. What surprised me was I had to place the line 52 units away before it stopped being triggerable before it was meant to be. Doomguy got long arms!

Share this post


Link to post
  • 0

Sunder didn't have this problem so why should I? This is a glitch.

Share this post


Link to post
  • 0
1 hour ago, Krull said:

Sunder didn't have this problem so why should I? This is a glitch.

 

If the thin slow wall concealing a switch that you can't switch early was already done in Sunder, why not open the map and see how the effect was achieved?

Share this post


Link to post
  • 0
49 minutes ago, Pegleg said:

 

If the thin slow wall concealing a switch that you can't switch early was already done in Sunder, why not open the map and see how the effect was achieved?

The author didn't do anything special to achieve the effect there.

 

1 hour ago, InsanityBringer said:

I believe you can use a WR line type placed on the line between you and the switch to waste the use (Doom doesn't check if a special actually exists for this, so you could also set it to a special that doesn't exist, I think, though be careful as you might accidentally set a boom generalized type, or some other port's special. Using something known like a lift might be safest). You can make it do something useless like activate a platform outside of the field of play.

 

Note that frustratingly, GZDoom does not work with this trick and you can still use through it.

Thanks, I'll try that.

Share this post


Link to post
  • 0

you could punish the player for trying to bump switches by having a line closer to them set to repeatedly turn off all the lights in the room :P~

Share this post


Link to post
  • 0
7 hours ago, scifista42 said:

If you use a SR line type instead of WR, it will work even in GZDoom.

Wouldn't that make the switch unusable even after the wall has lowered?

 

If your using a port that supports it, you could use ACS. Make the switch with a tag but no special on it at all, and have a script lower the wall and wait until the wall has finished lowering before putting the special on the switch. I have done something similar before.

Share this post


Link to post
  • 0

I know the question has already been answered, but I believe there is an option where you can set a linedef to block use actions. That might not be available in all formats though lol

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×