Rift Stabilizer (Incompatibles mods)
SigmaFlame opened this issue ยท 6 comments
Issue description
Hello,
The Rift Stabilizer does not block the teleportation from these mods :
- FTB Essentials (TP commands like /home and /back)
- Eternal Starlight (Wand of Teleportation)
- Actually Additions (Teleport Staff)
- Waystone (they should have their own category in the smart module)
- Warp Drive (Artifacts)
The problem is when a teleportation method allows a player to enter inside a base from outside of a wall (Wand of Teleportation from Eternal Starlight) or to returns inside the base after already being inside and placed their /home (FTB Essentials) or died and used /back
The Teleport Staff from Actually Additions is less a problem since it requires a sight of view.
About waystones, I suggest their own category inside the smart module since if you have FTB Chunks, it already disallow to place a waystone inside a base, and the existing one placed by the owner is probably already in a secure room or outside.
Maybe Relics & Actifacts too, I think some relics can teleport the player but I did not tested yet.
Steps to reproduce
Tested in singleplayer, cheat enabled but in survival, with all teleportation method blocked inside the Rift Stabilizer.
The owner is excluded in the setting of the Rift Stabilizer. Tested with a Chorus Fruit and it prevents the teleport.
Tested from outside to inside and from inside to outside.
Minecraft version
1.21.1
Forge/NeoForge version
21.1.133
SecurityCraft version
v1.9.12
Other relevant versions
No response
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
No response
The Rift Stabilizer works by listening to teleports that happen in the world. It is notified about them through the event system from Neo-/Forge. If a teleport happens, an event is posted. This is added to all vanilla teleportation types, but mods have to specifically add support for that event. The Rift Stabilizer then listens to the teleport event, and acts based on the type of teleport. If the event is not posted by a mod, then there is no way for it to know about the teleport. Certain teleport types are explicitly allowed (and cannot be disallowed), like commands, as they're an admin utility that players should not be able to control. As such, the issue you are experiencing can happen if 1. a mod does not post a teleport event or 2. a mod posts a teleport event that the Rift Stabilizer ignores. For 2, it can be that an unfitting event is posted (e.g. command teleport event for an action not involving a command), or that the event fits, but has a use case for being configurable (like you mentioned with /home and /back).
In conclusion, this issue is nothing we can universally solve and instead have to check for each mod what the precise issue is, and potentially report the problem to them, or try to figure out a unique solution.
Regarding "own category": The entries in the exclusion list are based on and handled through the teleport event types I mentioned. If a mod uses a built-in type, it would not be possible to add a custom entry to the exclusion list. Furthermore, looking at the broader picture: If we were to start adding support for custom teleport event types that any mod may add, we would likely have a whole bunch of mod support to continuously maintain, which we simply cannot sustain in the long run. That's why there is a simple "Modded" fallback for any unknown event type. It's a middle ground that we chose to still have some customizability for modded teleports, while not needing to increase maintenance burden over time.
Hello, it is possible to add a config option (in the mod config) to allow blocking of TP commands as well?
Exception are for the owner of the Rift, green listed players in the Rift settings and players who have OP privileges.
You can also add a permission, configurable with FTB Ranks or LuckyPerms, to allow a player to bypass a Rift with TP commands.
This setting would be disabled by default, to prevent any problem with any already existing server.
Useful for servers like ours where moderators all have ops privileges and players have TP commands like /home available.
Maybe why not, another config, that requires OP and either creative or spectator mode to bypass a Rift.
This allow OP players to play normally and switch to Creative only when they have to bypass a Rift.
Thank you in advance. ^^
It's possible, but we'll have to see if that's a fix we want to go for. Don't expect something in the next update.
It is possible to make that the Rift Stabilizer prevent the respawn event as well? (with bed)
I mean, if a non unthorized player sleeps in a bed inside a Rift Stabilizer zone, if the Rift is working and the player die and is not the owner of the Rift and not inside its whitelist, he respawns at the spawn with the message "your bed is obstructed" ?