We gonna waiting solution from developers this plug.
I'll send pm to Antidote bro, who drop this plugin, but he not response :(
Merged post
We have some troubles guys :)
Merged post
https://ibb.co/vYwQ4ZT
We gonna waiting solution from developers this plug.
I'll send pm to Antidote bro, who drop this plugin, but he not response :(
I won't be able to make a fix for this issue. The issue is on the Facepunch side. After the last update, OnProjectileAttack began to return an incorrect hitInfo.PointEnd value for entities that are mounted on moving entities. I submitted a request with this issue to Facepunch. Whether they want to fix it is a big question.
Antidote
I won't be able to make a fix for this issue. The issue is on the Facepunch side. After the last update, OnProjectileAttack began to return an incorrect hitInfo.PointEnd value for entities that are mounted on moving entities. I submitted a request with this issue to Facepunch. Whether they want to fix it is a big question.
In any case, thank you very much for reading our post and deciding to help.
Your support is invaluable to us. Thank you.
We will wait for the update of the oxide and believe that they will fix it :3
Antidote
I won't be able to make a fix for this issue. The issue is on the Facepunch side. After the last update, OnProjectileAttack began to return an incorrect hitInfo.PointEnd value for entities that are mounted on moving entities. I submitted a request with this issue to Facepunch. Whether they want to fix it is a big question.
Thank you for the Reply Sir. We needed at least to know where we stand. You are much appreciated. and let's hope they do!
That might be an idea in the meantime. Just discount everything if the player is mounted. I might have a fiddle with that. Not ideal obviously but better than nothing.Zaphire@Antidote Is there a code snipped we can put into the plugin to check if a player is mounted and then not send those reports?
Zaphire@Antidote Is there a code snipped we can put into the plugin to check if a player is mounted and then not send those reports?
Lines 1213-1232 should be replaced with the following code.
if (entity.GetParentEntity() != null)
{
isTargetMount = true;
BaseEntity targetParentEntity1 = entity.GetParentEntity();
targetMountParentName = targetParentEntity1.ShortPrefabName;
}
else
if (entity.isMounted)
{
BaseMountable parentMount1 = entity.GetMounted();
if (parentMount1 != null)
{
BaseEntity _parentEntity1 = parentMount1.GetParentEntity();
if (_parentEntity1 != null)
{
isTargetMount = true;
targetMountParentName = _parentEntity1.ShortPrefabName;
}
}
}
if (isTargetMount) return;
By the way, just now I saw that in lines 1247 and 1248 there were incorrect variable names.
Antidote
Lines 1213-1232 should be replaced with the following code.
if (entity.GetParentEntity() != null) { isTargetMount = true; BaseEntity targetParentEntity1 = entity.GetParentEntity(); targetMountParentName = targetParentEntity1.ShortPrefabName; } else if (entity.isMounted) { BaseMountable parentMount1 = entity.GetMounted(); if (parentMount1 != null) { BaseEntity _parentEntity1 = parentMount1.GetParentEntity(); if (_parentEntity1 != null) { isTargetMount = true; targetMountParentName = _parentEntity1.ShortPrefabName; } } } if (isTargetMount) return;By the way, just now I saw that in lines 1247 and 1248 there were incorrect variable names.
There will be a small update of the plugin, or can I take the information from your answer?
There will be no plugin updates in the near future. The plugin will work as before if Facepunch fixes the issue on their side. The code above allows the plugin to ignore victims that are mounted on moving entities.
Antidote
There will be no plugin updates in the near future. The plugin will work as before if Facepunch fixes the issue on their side. The code above allows the plugin to ignore victims that are mounted on moving entities.
Two questions.
1. Upon testing the code snippet fix you just sent, I got a few flags almost immediately from players who were fighting on tug boats. I would assume these must be false flags?
2. Has FP responded to your inquiry regarding having them fix it on their end, and would you like us to also push for this fix from Facepunch?
DickyTwo questions.
1. Upon testing the code snippet fix you just sent, I got a few flags almost immediately from players who were fighting on tug boats. I would assume these must be false flags?
2. Has FP responded to your inquiry regarding having them fix it on their end, and would you like us to also push for this fix from Facepunch?
I also tested this fix on all 7 of my servers and still getting some false flags on Tugboats, how can we stop these so it only tracks on land?
Antidote
Lines 1213-1232 should be replaced with the following code.
if (entity.GetParentEntity() != null) { isTargetMount = true; BaseEntity targetParentEntity1 = entity.GetParentEntity(); targetMountParentName = targetParentEntity1.ShortPrefabName; } else if (entity.isMounted) { BaseMountable parentMount1 = entity.GetMounted(); if (parentMount1 != null) { BaseEntity _parentEntity1 = parentMount1.GetParentEntity(); if (_parentEntity1 != null) { isTargetMount = true; targetMountParentName = _parentEntity1.ShortPrefabName; } } } if (isTargetMount) return;By the way, just now I saw that in lines 1247 and 1248 there were incorrect variable names.
It will not works on cargo.
I tried -
Anyway outside methods:
bool IsAnyEntityNearby(BasePlayer player, float radius, List<string> entityNames) //FixNew2Update
{
var colliders = Physics.OverlapSphere(player.transform.position, radius);
foreach (var collider in colliders)
{
var entity = collider.GetComponent<BaseEntity>();
if (entity && entityNames.Any(name => entity.ShortPrefabName.Contains(name)))
{
return true;
}
}
return false;
}And after:
aimvd.playerEyesPosition = fp.playerEyesPosition;
aimvd.attachments = fp.attachments;
Remove:
if (PlayersViolations.Players.ContainsKey(attacker.userID))
aimvd.violationID = PlayersViolations.Players[attacker.userID].AIMViolations.Count + 1;
else
aimvd.violationID = 1;
AddAIMViolationToPlayer(attacker, aimvd);
int AIMViolationsCnt = PlayersViolations.Players[attacker.userID].AIMViolations.Count;And add:
List<string> nearbyEntities = new List<string>
{
"boat", "horse", "sedancar", "modular", "snowmobile", "minicopter", "ch47", "patrolheli"
};
int AIMViolationsCnt = PlayersViolations.Players[attacker.userID].AIMViolations.Count;
if (
(target.GetParentEntity() == null || !target.isInAir || !target.isMounted ||
!IsAnyEntityNearby(target, 1.5f, nearbyEntities)) &&
(attacker.GetParentEntity() == null || !attacker.isInAir || !attacker.isMounted ||
!IsAnyEntityNearby(attacker, 1.5f, nearbyEntities))
)
{
if (PlayersViolations.Players.ContainsKey(attacker.userID))
aimvd.violationID = PlayersViolations.Players[attacker.userID].AIMViolations.Count + 1;
else aimvd.violationID = 1;
AddAIMViolationToPlayer(attacker, aimvd);
} 2 more questions regarding this response 😅
Antidote
There will be no plugin updates in the near future. The plugin will work as before if Facepunch fixes the issue on their side. The code above allows the plugin to ignore victims that are mounted on moving entities.
I've decided to temporarily disable the plugin due to the current reliability concerns.
Dmitriy4991
It will not works on cargo.
I tried -
Anyway outside methods:
bool IsAnyEntityNearby(BasePlayer player, float radius, List<string> entityNames) //FixNew2Update { var colliders = Physics.OverlapSphere(player.transform.position, radius); foreach (var collider in colliders) { var entity = collider.GetComponent<BaseEntity>(); if (entity && entityNames.Any(name => entity.ShortPrefabName.Contains(name))) { return true; } } return false; }And after:aimvd.playerEyesPosition = fp.playerEyesPosition;
aimvd.attachments = fp.attachments;Remove:
if (PlayersViolations.Players.ContainsKey(attacker.userID)) aimvd.violationID = PlayersViolations.Players[attacker.userID].AIMViolations.Count + 1; else aimvd.violationID = 1; AddAIMViolationToPlayer(attacker, aimvd); int AIMViolationsCnt = PlayersViolations.Players[attacker.userID].AIMViolations.Count;And add:
List<string> nearbyEntities = new List<string> { "boat", "horse", "sedancar", "modular", "snowmobile", "minicopter", "ch47", "patrolheli" }; int AIMViolationsCnt = PlayersViolations.Players[attacker.userID].AIMViolations.Count; if ( (target.GetParentEntity() == null || !target.isInAir || !target.isMounted || !IsAnyEntityNearby(target, 1.5f, nearbyEntities)) && (attacker.GetParentEntity() == null || !attacker.isInAir || !attacker.isMounted || !IsAnyEntityNearby(attacker, 1.5f, nearbyEntities)) ) { if (PlayersViolations.Players.ContainsKey(attacker.userID)) aimvd.violationID = PlayersViolations.Players[attacker.userID].AIMViolations.Count + 1; else aimvd.violationID = 1; AddAIMViolationToPlayer(attacker, aimvd); }
@dmitriy4991 Could you paste your working .cs file here for me? I tried making these changes you made to stop getting the false positives on cargo ship but getting errors. Would be really helpful thank you :)
Antidote
There will be no plugin updates in the near future. The plugin will work as before if Facepunch fixes the issue on their side. The code above allows the plugin to ignore victims that are mounted on moving entities.
Update theme, actually, maybe after recent update somethink maybe try to fix or nothing needed?