Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[aura]The debuff aura skill issue of punishing deserters in dungeons or battlefields #21254

Closed
moncat2005 opened this issue Jan 24, 2025 · 6 comments

Comments

@moncat2005
Copy link

moncat2005 commented Jan 24, 2025

Current Behaviour

The system assigns the punishment skill 'aura time' incorrectly.
The punishment aura 00:00 is displayed in the game client, but it never disappears and restarting is useless.
Upon checking the data table character_aura, it was found that maxDuration=1800000, which seems to be correct.
I don't know why the two skills 71041 and 26013 of the punishment character turn into a countdown without time.

Image

Expected Blizzlike Behaviour

After being punished for desertion, the character is endowed with two aura debuff skills (71041&26013), which should display a 1800 second countdown on the aura icon and automatically disappear after the time.

Source

No response

Steps to reproduce the problem

Sorry, I may have overlooked something. Let's start over:

  1. Enable the anti cheat mod function, reduce the speed detection trigger parameter, and activate the prison.
  2. Frequent use of warrior charge in the game triggers the overspeed threshold for antichet
  3. Being in the prison on GM Island, use the pocket-portal function to escape from the prison.
  4. Confirm that the system provides the aura skills for the two debuffs in the image as punishment
  5. Pay attention to whether there is a 15 and 30 minute countdown on the aura icon of the punishment skill

Extra Notes

No response

AC rev. hash/commit

commit 71644228836ebb5a88d0a975a5effb1e57869e24

Operating system

Ubuntu 22.04

Custom changes or Modules

mod-pocket-portal
mod-anticheat

@moncat2005 moncat2005 changed the title []The debuff aura skill issue of punishing deserters in dungeons or battlefields [aura]The debuff aura skill issue of punishing deserters in dungeons or battlefields Jan 24, 2025
@Nyeriah
Copy link
Member

Nyeriah commented Jan 24, 2025

I cannot reproduce this

Image

@blinkysc
Copy link
Contributor

Maybe your client is the problem? Try clearing cache or re download client?

@moncat2005
Copy link
Author

I don't know if the cheating punishment provided by the anticheat function is the same as the punishment for escaping from a random dungeon.

I am using the Simplified Chinese version of the client, version 13685, which seems to be slightly updated compared to version 12340.
The zhCN version of dbc and map I extracted from 13685 can make the server run normally.
On the surface, the relevant parameters of the punished aura can also be correctly written into the character_aura table
Does this seem to prove that the 13685 client can also be used normally for Azerothcore?

Considering that the execution of these skills in Aura seems to be achieved through client-side countdown and then written back to the server-side data table, I do have some doubts now that there may be a problem with the client-side.

Thank you all, I will find different versions of the client to verify.

@moncat2005
Copy link
Author

moncat2005 commented Jan 24, 2025

Maybe I have found the reason.
It seems that the antichet function triggered the capture of two aura skills (71041&26013) assigned to the GM Island prison.
Then, in order to prevent jailbreaking, two Aura skills was set to -1, which resulted in the issue of not being able to count down.

    if (Aura* dungdesert = pTarget->AddAura(LFG_SPELL_DUNGEON_DESERTER, pTarget))
    {
        dungdesert->SetDuration(-1);
    }
    if (Aura* bgdesert = pTarget->AddAura(BG_SPELL_DESERTER, pTarget))
    {
        bgdesert->SetDuration(-1);
    }
    if (Aura* silent = pTarget->AddAura(SILENCED, pTarget))
    {
        silent->SetDuration(-1);
    }

@EricksOliveira
Copy link
Contributor

This is a mod-anticheat issue and not a source issue. I believe this issue can be closed and opened in the module itself.

@kissingers
Copy link
Contributor

There's no problem. If you escape from the battlefield or dungeon, there's a countdown. However, if you're caught by the anti-cheat module and sent to prison, it's permanent. I've used this feature to implement an anti-escape system in conjunction with the anti-cheat module.

print(">>Script: Reprison system loading...OK")
local EverToPrison = {}

local function PrisonMapJudge(event,player)
if player:HasAura(71041) then
local pGUID = player:GetGUIDLow()
if player:GetAreaId() == 876 then
EverToPrison[pGUID] = 1
elseif EverToPrison[pGUID] then
if player:Teleport(1,16227.80,16403.01,-64.38,3.51117) then
player:SendBroadcastMessage("Do not escape from prison!")
end
end
end
end

--PLAYER_EVENT_ON_ChangeMap
RegisterPlayerEvent(27,PrisonMapJudge)

@Nyeriah Nyeriah closed this as not planned Won't fix, can't repro, duplicate, stale Jan 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants