Announcing Ark Homes for Ark: Survival Ascended!
AI was NOT used in the creation of this plugin.
Purchase at: https://store.dopeark.com/package/ARK-SA-ArkHomes
Features:
- Fully customizable teleport settings via permission groups
- Fully controller compatible UI with native navigation
- Add your own logo inside the UI and on the radial wheel
- PVP friendly configuration to prevent abuse on PVP servers
- Built-in PVP cooldowns to prevent teleporting while getting raided or while raiding
- Teleport everything in range or personal teleport only
Demo Video
JSON:
{
"License": {
"LicenseKey": "" //your license key here
},
"Config": {
"UseOverride": false, //if true config is loaded from a custom specified path
"OverridePath": "" //specify custom config path here, you can use this to make multiple servers use the same config
},
"UI": {
"RadialWheelIconPath": "ArkHomes.png", //specifies the icon that will be displayed in the radial wheel, can be a relative path if the icon is in the same folder as the plugin, or a full path for example C://Ark-SA-Servers//RWIcon.png
"UIIconPath": "ArkHomes.png", //specifies the icon that will be displayed in the UI itself, can be a relative path if the icon is in the same folder as the plugin, or a full path for example C://Ark-SA-Servers//UIIcon.png
"RadialWheelDisplayText": "ArkHomes", //sets the display name of the radial wheel entry
"UIDisplayText": "ArkHomes", //sets the display name inside the ArkHomes UI
"ConsolidateRadialWheel": false //if you have multiple mods that add an option to the radial wheel and the ArkHomes option doesn't show up anymore, set this to true
},
"ArkHomes": {
"HomeValidation": { //the plugin will periodically validate and remove homes which do not have enough friendly structures nearby anymore, this is made to remove homes placed inside bases that were raided
"DelayBetweenValidationsInSeconds": 0.5, //this controls how often the validation runs, a value of 0.5 seconds means it runs every 0.5 seconds, lower values mean CPU stress, higher values mean less CPU stress but the home validation will be delayed | DO NOT CHANGE THIS VALUE UNLESS YOU UNDERSTAND WHAT IT DOES!
"HomesPerTick": 10 //this controls how many homes the plugin can validate per the interval defined above, for example if there are a total of 100 homes inside the database, a value of 10 means it validates the first 10 homes and after the delay it validates the next 10 | DO NOT CHANGE THIS VALUE UNLESS YOU UNDERSTAND WHAT IT DOES!
},
"PvPCooldowns": {
"PlayerToPlayerDamageCancelsTeleport": true, //if set to true dealing damage to another player or receiving damage from another player will place both of you on a teleport cooldown
"PlayerToPlayerDamageAppliesCooldownToTribe": false, //when set to false only the players directly involved in PVP receive a teleport cooldown, if set to true, the entire tribes of the attacking and defending players will receive teleport cooldowns
"PlayerToPlayerDamagePlayerCooldownInSeconds": 60, //defines the teleport cooldown amount of PVP
"TribeToStructureDamageCancelsTeleport": true, //if set to true, damaging another tribe's structures or getting your own structures damaged by another tribe will apply a teleport cooldown to both the attacking and defending tribes
"TribeToStructureDamageThreshold": 5, //this specifies how many structures need to take damage in the below defined time in order for the teleport cooldown to apply
"TribeToStructureDamageWindowSeconds": 30, //this specifies the time in which the above defined structures have to be damaged in order for the teleport cooldown to apply
"TribeToStructureDamageCooldownInSeconds": 60 //defines the teleport cooldown amount of structure damage
},
"PreventActionsInStates": { //players will be unable to add homes or teleport in the following states
"Unconscious": true,
"Handcuffed": true,
"PickedUpByEnemyDino": true,
"Grappled": true,
"InBossArena": true
},
"HomeStructureChecks": {
"StructurePlacementCheckRangeInFoundations": 15, //this defines the radius in which the player must have enough structures to add a home
"MinRangeToEnemyStructuresInFoundations": 10, //this defines the minimum distance a player must be away from enemy structures to add a home
"MinRangeBetweenHomesInFoundations": 10 //this defines the minimum distance between a player's already added home
},
"TeleportStructureChecks": {
"MinRangeToEnemyStructuresInFoundations": 10 //this defines the minimum distance a player must be away from enemy structures in order to start a teleport
},
"PermissionRules": { //each permission group receives its own teleport settings here
"Default": {
"Priority": 1, //the priority controls which permission group the plugin will use if the player has multiple groups defined in config, higher priorities mean the permission is more important
"MaxHomes": 5, //the maximum number of homes a player can have with this permission group
"HomeCooldownAfterUsageInSeconds": 20, //the cooldown that gets applied to a home after a player teleports to it
"TeleportWaitTimeInSeconds": 15, //the time a player has to wait from starting a teleport to until when the player actually gets teleported
"MinStructuresInRangeToAddHome": 30, //the minimum friendly structures a player must have in range in order to add a home
"UseBubbleTeleport": true, //if set to true a bubble will be spawned with the player being in the center, as per the config settings everything that is allowed to teleport inside the bubble will be teleported, if this is set to false, ArkHomes works as a personal teleport only
"BubbleRadiusInFoundations": 3, //the radius of the bubble that will be spawned when a player requests a teleport
"BubbleTeleportSettings": { //this section only applies if UseBubbleTeleport is set to true
"OnlyTeleportTribeMembers": true, //if true only stuff that is in the same tribe as the player will get teleported
"TeleportPlayers": true, //if true teleports any players inside the bubble
"TeleportDinos": true, //if true teleports any dinos inside the bubble
"TeleportWildDinos": true //if true teleports wild dinos inside the bubble
},
"BubbleColor": {
"R": 1,
"G": 1,
"B": 0,
"A": 1
},
"BubbleBandColor": {
"R": 1,
"G": 0,
"B": 0,
"A": 1
}
}
}
},
"Messages": {
"SenderName": "ArkHomes",
"UnexpectedError": {
"Message": "An unexpected error has occurred, please contact a server administrator.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"UseBlocked": {
"Message": "You do not have the permission to use ArkHomes",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"Teleported": {
"Message": "You were teleported.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 0,
"G": 1,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"TeleportCanceled": {
"Message": "Your teleport was canceled.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"TeleportCanceledDueToPvP": {
"Message": "Your teleport was canceled due to PVP.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"TeleportNotAvailableDueToPvP": {
"Message": "You cannot teleport when on PvP cooldown.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"TeleportNotAvailableNearEnemyStructures": {
"Message": "You cannot teleport when near enemy structures.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"TeleportDelay": {
"Message": "Teleporting in {timeSeconds} seconds...",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 0,
"G": 1,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeOnCooldown": {
"Message": "Cannot teleport to this home, because it is on cooldown.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeNameTooLong": {
"Message": "Please use a shorter home name.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeLimit": {
"Message": "Cannot add anymore homes, your limit is {homeLimit}",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomePvPCooldown": {
"Message": "Cannot add a home when on PvP Cooldown.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeRidingDino": {
"Message": "Cannot add home while riding a dino.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeNotOnGround": {
"Message": "Cannot add home while not on the ground.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeTooCloseToEnemy": {
"Message": "Cannot add home, this location is too close to enemy structures.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeNotEnoughStructures": {
"Message": "Cannot add home, you do not have enough structures in range: {currentStructures}/{requiredStructures}",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeTooClose": {
"Message": "Cannot add home, this location is too close to: {homeName}",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"HomeRemovedInvalid": {
"Message": "Your Home: {homeName} was removed because it doesn't have enough friendly structures.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"StateUnconscious": {
"Message": "Cannot perform this action while unconscious.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"StateHandcuffed": {
"Message": "Cannot perform this action while handcuffed.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"StateCarriedByEnemyDino": {
"Message": "Cannot perform this action while being carried by an enemy dino.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"StateGrappled": {
"Message": "Cannot perform this action while being grappled.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
},
"StateInBossArena": {
"Message": "Cannot perform this action while in a boss arena.",
"SendAsNotification": false,
"SendAsServerChat": false,
"SendAsClientChat": true,
"R": 1,
"G": 0,
"B": 0,
"A": 1,
"DisplayScale": 3,
"DisplayTime": 3,
"UseIcon": false,
"IconPath": ""
}
}
}