Limit your players from placing a lot of various structures!
Plugin features:
- Set global limit of structures.
- Set exact structure limit.
- Make some structures ignore limits.
- Block players from inviting or merging someone to break limits.
- Allow admins to ignore limits.
- Make tribe limits by their players permissions.
Commands:
TargetBP (Console) - Display blueprint in console & chat of the structure you're looking at./showlimits (Chat) - Display current limits and amount of placed structures.
/showcluster (Chat) - Display amount of connected structures of the structure you're looking at.
StructureLimits.Reload (Console & RCON) - Reload plugin configuration.
JSON:
{
# Cluster - Multiple structures connected between them all. (For example - 4 Foundations connected to eachother)
# -1 number in limits will disable them.
"General": {
"LogInFile": false, # Applies for TargetBP command to show logging in files
"IgnoreAdmin": false, # Ignore admins in tribe merge & structure placement
"MaxAmount": 500, # Max Amount of structures on map
"MaxClusteredStructures": 100, # Max Amount of structures in 1 cluster, may be duplicating some snapping structures like pillars
"CheckInterval": 15, # Check interval for structure updater (Recommended to set 15-30)
"AsyncUpdateStructures": true, # Asynchronous structures update mode (Massive performance gain)
"NotificationDisplayTime": 10, # Time for notifications to display
"UseOldPermissionsMethod": false # Make permissions system to use tribe groups instead of highest tribemember group
},
"Permissions": { # Permissions system (Tribe & Player based)
# Tribe based - will use permissions tribe group
# Player based - will check all tribe players and choose highest found group
"Admins": { # Group name to search for (Highest group example) (This group has no limits for all structures)
"Priority": 2, # Group priority (If there's 2 groups then it will use group with higher priority)
"MaxStructures": -1, # Max Amount of structures on map for this group
"MaxClusteredStructures": -1, # Max Amount of structures in 1 cluster for this group
"Structures": { # Override exact structure limit
# Use ONLY what you set in the Structures field down below
# Alt Structures must be set as main identifier only.
"Blueprint'/Game/PrimalEarth/Structures/TekTier/Wall_Tek.Wall_Tek'": -1, # Structure identifier with alternative structures field example
"Blueprint'/Game/PrimalEarth/Structures/Metal/Floor_Metal.Floor_Metal'": -1 # Normal structure example
}
},
"VIP": { # VIP group as another example of priority and numbers
"Priority": 1,
"MaxStructures": 1000,
"MaxClusteredStructures": 200,
"Structures": {
"Blueprint'/Game/PrimalEarth/Structures/TekTier/Wall_Tek.Wall_Tek'": 40,
"Blueprint'/Game/PrimalEarth/Structures/Metal/Floor_Metal.Floor_Metal'": 30
}
},
"Default": { # Default group (Not required and was added for example)
"Priority": 0,
"MaxStructures": 500,
"MaxClusteredStructures": 100,
"Structures": {
"Blueprint'/Game/PrimalEarth/Structures/TekTier/Wall_Tek.Wall_Tek'": 30,
"Blueprint'/Game/PrimalEarth/Structures/Metal/Floor_Metal.Floor_Metal'": 20
}
}
},
"Structures": {
"Blueprint'/Game/PrimalEarth/Structures/Metal/Floor_Metal.Floor_Metal'": 20, # Simplified version of adding structures, will use name from the game. Name will display in your servers culture
"Blueprint'/Game/PrimalEarth/Structures/TekTier/Wall_Tek.Wall_Tek'": { # Structure blueprint (Main identifier) (Tek Wall)
"AltStructures": [ # Alternative structures (Could be skipped and removed)
"Blueprint'/Game/PrimalEarth/Structures/Metal/Wall_Metal.Wall_Metal'", # Metal Wall
"Blueprint'/Game/PrimalEarth/Structures/Stone/Stone_Wall/Wall_Stone.Wall_Stone'", # Stone Wall
"Blueprint'/Game/PrimalEarth/Structures/Wooden/Wall_Wood_Small_SM_New.Wall_Wood_Small_SM_New'" # Wooden Wall
],
"Name": "Walls", # Group name (Displays only in /ShowLimits command)
"Count": 30 # Max Amount of structures allowed to place from this group
}
},
"IgnoreStructures": [ # Ignore types of structures from ALL limits
"Blueprint'/Game/PrimalEarth/Structures/C4Charge.C4Charge'" # C4 Charge
],
"Messages": {
"Sender": "StructureLimits", # Chat messages sender
"ReachLimit": "You have reached structure global limit or limit of the exact structure!", # Displays when player reaches absolute limit of structures
"ReachLimitClustered": "You have reached structures limit for that cluster!", # Displays when player reaches limit of structures in 1 cluster
"MergeFail": "Tribe you are trying to merge with has too many structures combined with yours!", # Displays when tribes are merged and when their combined limits are higher than allowed
"InviteFail": "Player you are trying to invite has too many structures combined with yours!", # Displays when tribe fails to invite a player and their combined structures are higher than allowed limit
"InvitedFail": "Tribe you are trying to join has too many structures combined with yours!", # Displays to player when invite was failed
"ShowLimitsCommand": "/showlimits", # Command to display overall structure limits
"ShowClusterCommand": "/showcluster", # Command to display all structures in 1 cluster and compare them to limit
"ShowMessage": "{}: {}/{}\n", # Form of the display for type limited structures 1 - Name, 2 - Amount of structures, 3 - Total Amount of structures
"TotalMessage": "Total Structures: {}/{}" # Form of the display for total structures 1 - Amount of structures, 3 Total Amount of structures
}
}