Join the jraServerAPI Discord Server!
Check out the jraServerAPI community on Discord - hang out with 706 other members and enjoy free voice and text chat.
discord.gg
If you enjoy my plugins, please leave a rating!
This is a simple plugin that takes aim at preventing the common meshing techniques that are exploited by using teleporters.
If you are not familiar with these exploits, please watch these two videos before continuing. This could be happening on your server and you would not even know it unless a player reports it happening.
- How to mesh anywhere on any map:
- How to mesh Big Lunar Cave:
This plugin attacks both of those exploits by:
- Preventing low ceilings and cliff platforms from being placed above the teleporter. If a player wants to place a ceiling above a teleporter then it must be taller than a Mek (configurable with CeilingBuffer). The reason for this is because low ceilings placed above a teleporter is one of the techniques used to push objects into the mesh below the teleporter. The teleporter cannot be placed and will not work if ceilings are detected above it.
- Forcing structure requirements in order to place and also use the teleporter. This is to prevent stuffing the teleporter 90% into a wall and then use it to get into the mesh.
- It is recommended to require 85 foundations (basically a 10x10 foundation grid) at the very least. This is to ensure enough detection coverage to prevent the meshing exploits. If you go any smaller then could open the door for meshing exploits to happen.
- When using the teleporter (E), only the foundation and ceiling requirements are enforced.
Thank you and enjoy!
Some examples of the plugin in action:
Trying to place a teleporter:
Here is a very poor build (and image) of the default requirements to place a teleporter.
This is the default configuration in the config.json file:
This is displayed when you use the /tpbubble command:
Red is the ceiling check
Green is the foundation check
Blue is the walls check
Yellow is everything else
Configuration:
JSON:
{
"NoMeshTeleporting":{
"Enabled": true, // enables the plugin
"SenderNameInChat": "Teleporter Error", // the sender name in chat
"TeleporterBubblesCommand": "/tpbubble", // the in game chat command to display the radius bubbles
// the red bubbles are for the ceiling height check
// the green bubble is for the foundation check
// the blue bubble is for the walls check
// the yellow bubble is for checking everything else
"Teleporters": [ // teleporters to handle
"TekTeleporter",
"TeleporterPlus"
],
"OnlyAllowVanillaTeleporter": false, // force only vanilla teleporter
"OnlyAllowVanillaFoundations": false, // force only vanilla foundations
"PreventCeiling": true, // prevent ceilings above the teleporter
"PreventCliffPlatform": true, // prevent cliff platforms above the teleporter
"CeilingRadius": 5, // the radius of the sphere the plugin uses to check for ceilings, this covers the size of the vanilla teleporter
// this should match the foundation radius
"FoundationRadius": 5, // the radius of the sphere the plugin uses to check for foundations
"WallRadius": 10, // the radius of the sphere the plugin uses to check for walls
"EverythingElseRadius": 15, // the radius of the sphere the plugin uses to check for everything else
"CeilingBuffer": 700, // the height buffer size for when looking for ceilings above the teleporter
"StructuresRequired":{
"Foundation": {
"Amount": 85 // the amount of structures required
},
"Wall": {
"Amount": 40 // the amount of structures required
},
"Turret": {
"MustBeOnToPlace": true, // requires power to be turned on first to place teleporter
"Amount": 10 // the amount of structures required
},
"Bed": {
"Amount": 1 // the amount of structures required
},
"Transmitter": {
"MustBeOnToPlace": true, // requires power to be turned on first to place teleporter
"Amount": 1 // the amount of structures required
}
},
"WallDefinition": { // this section is to handle the wall count for larger wall sizes and modded walls
"LargeWall": {
"WallCount": 4
},
"XLWall": {
"WallCount": 12
}
},
"Messages":{
"GroupPermission":{
"Default": {
"LowCeiling": "Your ceiling is too low.",
"NotEnoughStructures": "Not enough structures.",
"NotEnoughStructuresDetail": "You need {} {} structure(s) nearby to place this teleporter. {} were found.",
"MustBePoweredOn": "The {} must be powered on to place this teleporter.",
"MustUseVanillaTeleporter": "Only the vanilla teleporter is supported.",
"MustUseVanillaFoundations": "Only vanilla foundations are supported for placing teleporters."
}
}
}
}
}
If you enjoy my plugins, please leave a rating! I'd also like to give a shoutout to Kalendell for helping me with the sphere placement. I highly recommend ALL of his plugins!!! I'd also like to give a shoutout to WetBatman and Pelayori for helping me with my plugin development. I highly recommend ALL of their plugins!!!
Please join my discord channel for any questions or support. Thank you!
Join the jraServerAPI Discord Server!
Check out the jraServerAPI community on Discord - hang out with 706 other members and enjoy free voice and text chat.
discord.gg