Skip to content

Speed hack improvements): implement walk and attack speedhack anti-cheat checks#813

Closed
Rhefew wants to merge 124 commits into
MUnique:masterfrom
Rhefew:feature/speedhack-anti-cheat
Closed

Speed hack improvements): implement walk and attack speedhack anti-cheat checks#813
Rhefew wants to merge 124 commits into
MUnique:masterfrom
Rhefew:feature/speedhack-anti-cheat

Conversation

@Rhefew

@Rhefew Rhefew commented Jul 5, 2026

Copy link
Copy Markdown

This PR introduces real-time anti-cheat checks for player movement (walking) and skill casting (attacks) to identify and prevent speed-hacking.

Walk Speed Checks:

  • Keeps a rolling history of the player's recent walks (_recentWalks).
  • Computes expected travel times using the player's dynamic client movement speed (factoring in underwater stats, safezone overrides, and speed attributes).
  • Automatically flags walks that occur too rapidly or have abnormal start coordinate offsets, warps/rubberbands players back, and records warning violations leading to an account ban if limits are exceeded.

Attack Speed Checks:

  • Compares attack/skill cast intervals against the expected timing of the player's current Stats.AttackSpeed attribute.
  • Applies checks across normal hits, targeted skills, and area skills.
    Verification & Unit Tests:
  • Adds SpeedHackAntiCheatTests.cs covering safezone bypasses, normal/mount speed variations, warp resets, attack speedhack detection, and automatic account bans.

eduardosmaniotto and others added 27 commits July 6, 2026 00:18
Move the game logic out of EnterMarketPlaceHandlerPlugIn into a new
EnterMarketPlaceAction in the GameLogic project, so the packet handler
only parses the packet and delegates, matching the convention of the
other handlers.

No behavior change: the NPC-window guard, both-way map selection and the
warp itself are unchanged, just relocated.
Resolve the UpdateVersion enum conflict: master meanwhile took 87 for
AddMissingMerchantStores (enum now goes up to 92), so the Julia warp
update is renumbered from 87 to AddLorenMarketJuliaWarp = 93.

Also fix a stray tab indentation in AddLorenMarketJuliaWarpPlugIn.
… into merge-test

# Conflicts:
#	src/Web/Shared/wwwroot/css/shared.css
#	src/Web/Shared/wwwroot/css/shared.min.css
@Rhefew Rhefew closed this Jul 10, 2026
@Rhefew Rhefew deleted the feature/speedhack-anti-cheat branch July 10, 2026 10:00
@Rhefew

Rhefew commented Jul 10, 2026

Copy link
Copy Markdown
Author

Closed to avoid a mess with the tracking history

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

Successfully merging this pull request may close these issues.

5 participants