BlockAll actor which blocks players, but not translocator

Tutorials and discussions about Mapping - Introduce your own ones!
User avatar
Berserker
Average
Posts: 60
Joined: Fri Sep 27, 2019 5:08 pm

BlockAll actor which blocks players, but not translocator

Post by Berserker » Tue Dec 28, 2021 4:08 pm

Hey guys!
I am looking for a solution which blocks players, but allows translocator discs to pass trough.
Can someone help me figure out how to make a BlockAll actor, which blocks players, but not translocator discs?

Other alternative solutions would be appreciated as well, for example, is it possible to apply such a collision to a mover?
Visit us on Discord:
https://discord.gg/fcRakgNCjR Image

User avatar
Aspide
Experienced
Posts: 106
Joined: Wed Jun 09, 2021 12:13 am

Re: BlockAll actor which blocks players, but not translocator

Post by Aspide » Tue Dec 28, 2021 10:24 pm

I'm not familiar with any actor that stops players but allows actors like the translocator disc to pass through. Ironically I know how to do the opposite :sad2: , however I have an alternative solution: Use a kicker that pushes players back, kickers interact with a specific actor, for example the default class that interacts with a kicker is Pawn, that means that projectiles, like the translocator disc, won't be affected by it.
Somewhere in Nevada...

Red_Fist
Godlike
Posts: 1969
Joined: Sun Oct 05, 2008 3:31 am

Re: BlockAll actor which blocks players, but not translocator

Post by Red_Fist » Tue Dec 28, 2021 11:49 pm

Seems like a good solution. Aspide

Messing with collision is hard because they won't let you mess with it very much, like an engine, constant.
It depends on what actor, for collision. Like a brush, won't change, can't change,

I did get collision to be on or off of a trigger using property flippers. By trying that method you would need a class trigger, then have that trigger the collision on off, and another set to turn it off on. Not practical unless you only needed it to work from one side or only work once.
Binary Space Partitioning

User avatar
Berserker
Average
Posts: 60
Joined: Fri Sep 27, 2019 5:08 pm

Re: BlockAll actor which blocks players, but not translocator

Post by Berserker » Wed Dec 29, 2021 12:45 am

Aspide wrote:
Tue Dec 28, 2021 10:24 pm
I'm not familiar with any actor that stops players but allows actors like the translocator disc to pass through. Ironically I know how to do the opposite :sad2: , however I have an alternative solution: Use a kicker that pushes players back, kickers interact with a specific actor, for example the default class that interacts with a kicker is Pawn, that means that projectiles, like the translocator disc, won't be affected by it.
Yeah its a good solution, I did had that idea initially. However, it wont work for my need. The area I am trying to block is a hole in the floor, if I set up a kicker there it will make you float/slide on the kicker when you walk on top of it. The way I see it, it has to be a custom actor script which blocks pawns and lets projectiles trough, there probably wont be other solutions, except scraping the idea I had in mind.
Visit us on Discord:
https://discord.gg/fcRakgNCjR Image

User avatar
Barbie
Godlike
Posts: 2317
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: BlockAll actor which blocks players, but not translocator

Post by Barbie » Wed Dec 29, 2021 1:34 am

Also possible: move an invisible mover in the way when a player approaches.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett

User avatar
Aspide
Experienced
Posts: 106
Joined: Wed Jun 09, 2021 12:13 am

Re: BlockAll actor which blocks players, but not translocator

Post by Aspide » Wed Dec 29, 2021 3:15 am

I have two more ideas:

-Make the hole small enough so that players cannot fit but the translocator disc can.
-Purposefully create an invisible wall by making a mistake building brushes (sometimes invisible walls are created in locations where there are no brushes). However I have no idea how to make this mistake on purpose. An example is NyLeve's Falls from the original Unreal, the starting area has a hole on the celling that has an invisible wall, the good thing about this type of invisible wall is that projectiles aren't affected by them.
Somewhere in Nevada...

Buggie
Godlike
Posts: 1313
Joined: Sat Mar 21, 2020 5:32 am

Re: BlockAll actor which blocks players, but not translocator

Post by Buggie » Wed Dec 29, 2021 4:52 am

In fact Actor BlockPlayer must fit for that.

Code: Select all

//=============================================================================
// BlockPlayers prevents players from passing, but allows monsters and projectiles to cross.
//=============================================================================
class BlockPlayer extends Keypoint;

defaultproperties
{
     bBlockPlayers=True
}
But there mistake - not set bCollideActors=True, so bBlockPlayers=True not count at all.
If you set bCollideActors=True it act almost exactly as you want - projectiles pass, players - no.
But by unknown reason translocator module too not pass. Even ignore the fact it is too projectile.

Automatically merged

Also if you try use Bots you fast found it is not a PlayerPawn and not block by bBlockPlayers, but block by bBlockActors, same as projectiles.
So bots just fall into this hole.

You can try make custom actor which collide with all, but on Bump handle all not pawns for teleport them down via SetLocation. Or maybe only Projectile.

Red_Fist
Godlike
Posts: 1969
Joined: Sun Oct 05, 2008 3:31 am

Re: BlockAll actor which blocks players, but not translocator

Post by Red_Fist » Wed Dec 29, 2021 8:10 pm

I dunno, but I think a class trigger for the translocator to give an event for some use.

Or make code that just adds the translocator exempt in the blockplayer. somehow LoL

Then it would probably need a new class translocator2, anyway

Plus I think the translocator IS thought of as the player, because if all you had to do was block a player, but won't, the player can still pass right through.
Binary Space Partitioning

User avatar
ExpEM
Skilled
Posts: 234
Joined: Wed Nov 09, 2016 1:48 am

Re: BlockAll actor which blocks players, but not translocator

Post by ExpEM » Fri Dec 31, 2021 9:06 pm

I messed around with some code for a few hours this morning trying to make an actor solid for pawns but nothing else, no luck I'm afraid.
Someone with access to the native collision handling code maybe able to figure out a way to hack it into working.

User avatar
jmartin
Experienced
Posts: 82
Joined: Tue Mar 23, 2021 11:38 pm

Re: BlockAll actor which blocks players, but not translocator

Post by jmartin » Mon Jan 24, 2022 2:05 am

I was able to narrow down the parameters for a non-script solution if that helps at all.

You basically want to limit the size of the hole to 44 for your Collision Height, or 30 for the Collision Radius.

1). Build a wall.

2). SUBTRACT a cylindrical hole from it (ie. height 32, radius 64)

3). Now ADD a hollow cylinder (outer radius 62, inner radius 44)

4). Make it INVISIBLE and place it just inside the cylindrical hole (so it's not touching).

That way, a Transporter disc can pass through but a player cannot.

I believe Aspide had this same idea.

The only advantage to the invisible cylinder is that the hole looks larger than it actually is.

For floors, since a player's Collision Radius is about 25% less than their Collision Height, make sure the inner radius is 30.

However, for a hole this size, if the plug is invisible, the disc will be destroyed and won't pass through.

I made a test file you can tinker with if you want.

By the way, congrats on the win! :tu:

Good luck.
You do not have the required permissions to view the files attached to this post.

Buggie
Godlike
Posts: 1313
Joined: Sat Mar 21, 2020 5:32 am

Re: BlockAll actor which blocks players, but not translocator

Post by Buggie » Mon Jan 24, 2022 3:10 am

You can make hole any size, cover it with non-solid sheet and in space place a lot small cubes which make grid which allow pass small transloc, but not allow pass big player.

User avatar
Berserker
Average
Posts: 60
Joined: Fri Sep 27, 2019 5:08 pm

Re: BlockAll actor which blocks players, but not translocator

Post by Berserker » Mon Jan 24, 2022 7:25 pm

jmartin wrote:
Mon Jan 24, 2022 2:05 am
I was able to narrow down the parameters for a non-script solution if that helps at all.

You basically want to limit the size of the hole to 44 for your Collision Height, or 30 for the Collision Radius.

1). Build a wall.

2). SUBTRACT a cylindrical hole from it (ie. height 32, radius 64)

3). Now ADD a hollow cylinder (outer radius 62, inner radius 44)

4). Make it INVISIBLE and place it just inside the cylindrical hole (so it's not touching).

That way, a Transporter disc can pass through but a player cannot.

I believe Aspide had this same idea.

The only advantage to the invisible cylinder is that the hole looks larger than it actually is.

For floors, since a player's Collision Radius is about 25% less than their Collision Height, make sure the inner radius is 30.

However, for a hole this size, if the plug is invisible, the disc will be destroyed and won't pass through.

I made a test file you can tinker with if you want.

By the way, congrats on the win! :tu:

Good luck.
Thanks a lot!! Quite an Interesting solution for sure. However, if you try to shoot your trans around the sides of the hole, it collides with the wall and bounces the trans disc away. In the floor example you also need to make the hole smaller than that because players can fall torugh them without translocating.
Visit us on Discord:
https://discord.gg/fcRakgNCjR Image

User avatar
jmartin
Experienced
Posts: 82
Joined: Tue Mar 23, 2021 11:38 pm

Re: BlockAll actor which blocks players, but not translocator

Post by jmartin » Thu Jan 27, 2022 1:37 am

Berserker wrote:
Mon Jan 24, 2022 7:25 pm
In the floor example you also need to make the hole smaller than that because players can fall torugh them without translocating.
Yes, I saw that. Easy enough, I just reduced the inner radius by increments of 1 until I reached 25 which seems to be the magic number. I also made a 24 and 23 just to be safe. I also raised the hollow cylinders so if you make it invisible it won't destroy the Translocator disc. Now the player can't pass through but the Translocator disc can. Some results may vary. You might have to tinker around with it. (v.3 has an invisible floor cylinder)
Berserker wrote:
Mon Jan 24, 2022 7:25 pm
Thanks a lot!! Quite an Interesting solution for sure. However, if you try to shoot your trans around the sides of the hole, it collides with the wall and bounces the trans disc away.
True. The invisible cylinder is for appearances only, otherwise a regular cylinder could be used (included below) with an outer radius of 44. Which ever works better.

What type of map are you making? This sounds like maybe a puzzle map, similar to a "Portal" kind of thing?

Cheers!
You do not have the required permissions to view the files attached to this post.

User avatar
Berserker
Average
Posts: 60
Joined: Fri Sep 27, 2019 5:08 pm

Re: BlockAll actor which blocks players, but not translocator

Post by Berserker » Fri Jan 28, 2022 6:17 pm

jmartin wrote:
Thu Jan 27, 2022 1:37 am
What type of map are you making? This sounds like maybe a puzzle map, similar to a "Portal" kind of thing?
I was doing a "League Edition" edit of my Hightown map for competitive pugs and cups, since I come from a competitive background and I have been participating in a lot of cups and tournaments since years. But, I didn't manage to balance it properly and the gameplay wasn't very well received from the competitive community, so the LE project was stopped and dropped shortly after I made this thread.

When I made this thread, I was trying to figure out how to make a hole, which can be accessed only with translocator. I was basically trying to connect different areas with the map using a "translocator" tunnel. Since my BlockAll question wasn't solved, I had to make a very small hole with a cross shape, so it can be slightly easier to access with trans. The "cross" solution did work out, players couldn't fall trough the hole and they could pass trough it only with translocator.. But if I'm honest, I wasn't quite satisfied with this solution as I wished the hole was bigger and easier to squeeze an easy trans disc from the basement, without much effort.

Image
^ Cross hole near the shock area

Map is 25% smaller than the original Hightown for NRMC. It was not intended for Singleplayer, so it has no bot support. A ton of visual elements from the NRMC version have been removed to improve FPS performance, as well as the filesize. There are couple of new elements added to the map, including a new rooftop structure in the middle of the map - it was mostly placed to block the long distance view and drastically improve FPS performance. Here is the map file if you're curious. It's a dropped project, so it will never be released or finished.
You do not have the required permissions to view the files attached to this post.
Visit us on Discord:
https://discord.gg/fcRakgNCjR Image

User avatar
sektor2111
Godlike
Posts: 5810
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: BlockAll actor which blocks players, but not translocator

Post by sektor2111 » Sat Jan 29, 2022 5:05 pm

The question would be if game's owner doesn't use any Translocator... Why so much brainstorming ?
Let me see... Sometimes (not always) in CTF-Coret bots are using a Translocator route through some hole pointing to minigun spot... said sometimes because they might fail and run in wall as long as that hole it's small for everyone.

Note: Last time I touched some "LE" maps, really nice, an extreme beautiful design but... no paths, detracting Off-Line players from enjoying them... To me this way of doing it's a loss for the game...

Edit: Discussion here to me seems in opposite direction with this viewtopic.php?f=15&t=13202 regarding to LE maps without relics paths because they aim ONLY ON-Line game-play between human players... :noidea .