mt-mods / telemosaic

A Minetest mod for user-generated teleportation pads.
GNU Lesser General Public License v2.1
1 stars 7 forks source link

Teleporting to protected beacons is possible #14

Closed Montandalar closed 1 year ago

Montandalar commented 1 year ago

It's possible to target any beacon, even protected ones in areas you have no access to, by assigning the destination with digilines. The privs of the area owner of the source and the destination should be compared to make sure they are compatible, and refuse if the player wouldn't be able to bypass the protection e.g. unless they have protection_bypass.

OgelGames commented 1 year ago

Yes, this is correct behavior. The same is possible without digilines, you can make a key for any beacon, protected or not.

And no, I don't think that behavior should be changed, it's one of the main advantages of using telemosaics for public places.

Montandalar commented 1 year ago

What is the purpose of the protected beacon if not to block travel to the unauthorised? Just to prevent removing it in case the area isn't protected with something like areas or protector mods?

Montandalar commented 1 year ago

Even if the protected beacon isn't changed, I'd like a private beacon that can only be used be authorised users, as a third option.

Maverick2797 commented 1 year ago

If the protection logic was moved from the linking process to the teleport process then you'd still be able to set the destination as per normal, except you can now block access to private areas by having the destination as a protected telemosaic. There would be no need for a third type of telemosaic, instead relying on area/protector mods to grant teleport access.

S-S-X commented 1 year ago

Protected beacon could be easily made private without adding new beacons in a way that it would just be additional configurable feature for current protected beacons. Without adding any additional user interfaces this could be done either through crafting, through digiline message or both.

That would also allow server wide configuration to enable/disable fully private beacons any time back and forth.

Also I think that @Maverick2797's suggestion should be implemented, it isn't exactly strictly necessary to achieve private beacons without new nodes but would offer restrictions for old sources that are linking to protected targets:

protection logic was moved from the linking process to the teleport process

S-S-X commented 1 year ago

Frame challenge @OgelGames:

main advantages of using telemosaics for public places.

Public places should not use protected beacons but instead public places should use normal beacons. I think it would be good to consider changing protection logic.

OgelGames commented 1 year ago

What is the purpose of the protected beacon if not to block travel to the unauthorised?

Protected beacons cannot be used by other players; their destination is protected.

protection logic was moved from the linking process to the teleport process

That's how it works already, but there's only a check for the source beacon, not the destination.

Public places should not use protected beacons but instead public places should use normal beacons. I think it would be good to consider changing protection logic.

Yeah, I think it makes sense to change it. Also, there's a use case the change would make possible: a digiline-powered multi-destination beacon with some public and some protected destinations.

Maverick2797 commented 1 year ago

What is the purpose of the protected beacon if not to block travel to the unauthorised?

Protected beacons cannot be used by other players; their destination is protected.

That does nothing to prevent other people with a telemosaic (protected or not) locking onto your landing pad in a private area to gain access. The protection check currently only stops people teleporting from a protected beacon, not to one.

Yeah, I think it makes sense to change it. Also, there's a use case the change would make possible: a digiline-powered multi-destination beacon with some public and some protected destinations.

That's what originally perked my interest to the telemosaic. I had a teleport-pad feed tape powered entirely by mesecon pistons and a node detector on another server, but full digiline programming would be much easier to maintain.

OgelGames commented 1 year ago

Done. Now protected beacons protect the source and the destination.