What Deskrawl's anti-cheat actually detects, why 1.0.0g admitted false bans, and the one official appeal route at deskrawl.com/support via Steam OpenID.
Deskrawl Anti-Cheat and Ban Appeal: The Only Way to Appeal
There is exactly one place to appeal a Deskrawl suspension: deskrawl.com/support, and you must start it from the Steam account that was suspended. Discord, the store page and email are not appeal channels.
What Deskrawl's anti-cheat actually detects

Client-side anti-cheat arrived in build 0.1.13 on 2026-06-27 — the patch that introduced Online Mode. The developer has never described it again, and the public statement is three sentences:
We have implemented client side anti-cheat system that protects against memory modification, speed hack, source code tempering etc. For online characters, it will enjoy an additional layer of data protection from the server. If you found a vulnerability please let us know so we can enhance the system Official source: Steam announcement: [0.1.13] New Talents, Online Mode, Leaderboard and Anti-cheat
Thinner than it sounds: the shipped game wires up exactly two detectors. GameScene.unity has a GameObject named AntiCheat carrying a Transform, the studio's AntiCheatManager, and two CodeStage Anti-Cheat Toolkit detectors. Every detectionEventHasListener entry in the scene belongs to ACTk.Runtime.dll and there are exactly 2 — the injection, wall-hack and time-cheat detectors in that same DLL ship in the build but attach to nothing.
Component in GameScene.unity (1.0 launch build, 2026-09-28) |
Serialized values | Meaning |
|---|---|---|
AntiCheatManager (own code) |
KickMessage: Cheating detected. Returning to the main menu. |
The only reaction string shipped |
SpeedHackDetector (ACTk) |
interval: 1, threshold: 0.3, maxFalsePositives: 5, coolDown: 30, TimeJumpThreshold: 10, WatchTimeScale: 1 |
Compares game time to real time every second, with a false-positive allowance |
ObscuredCheatingDetector (ACTk) |
honeyPot: 0, float/doubleEpsilon: 0.001, vector/quaternion Epsilon: 0.1 |
Checks encrypted numbers were not rewritten in memory |
"Memory modification" is not marketing, and this is the part competitors never explain. Every numeric field on abilities, talents and enemies is wrapped in ACTk's ObscuredFloat: LeveledFloat — behind ability Range, ManaCost, Cooldown and XP — holds ObscuredFloat Base and PerLevel, and ObscuredFloat serializes hash, hiddenValue and currentCryptoKey while the real fakeValue is [NonSerialized] and never reaches disk:
Range:
Base:
hash: 1807961569
hiddenValue: 873557538
currentCryptoKey: 1949176098
Serialized in the 1.0 launch build of 2026-09-28. Live is at least 1.0.0g (2026-09-29), whose notes include a false-ban fix — assume the tuning changed. Method bodies in the decompile are stripped, so the firing rule can only be read from field names, never from logic.
A cheat kick is not a ban
Two things get called "banned" here, and only one is a suspension. The client only kicks — the string in the table above is the whole reaction — while the server suspends Online Mode, and CloudClient.cs carries the wire structs:
Struct in CloudClient.cs |
Fields | Role |
|---|---|---|
SessionRequest |
ticket, identity, gameVersion |
Signs in with the Steam OpenID ticket, reports client version |
AntiCheatReportRequest |
source, details |
What the client posts when a detector fires |
BannedResponse |
error, remaining |
Suspension reply, with a remaining-time field |
The shipped localization table then defines five suspension messages, every one of them scoped to Online Mode rather than to the whole game:
| UI key | Shipped English string |
|---|---|
UI.AccountBanned |
"Your account has been suspended from Online Mode. This suspension is due to a violation of our Online Mode policy." |
UI.AccountBannedPermanent |
"Your account has been permanently suspended from Online Mode. ..." |
UI.AccountBannedDays |
"Your account is suspended from Online Mode for another {0} days. ..." |
UI.AccountBannedHours |
"Your account is suspended from Online Mode for another {0} hours. ..." |
UI.AccountBannedSoon |
"Your account is suspended from Online Mode. Less than two hours remain. ..." |
Temporary suspensions with an hour/day countdown are therefore a supported state, not a guess — but which one you get, and for how long, is server-side and unpublished. The UI also carries UI.AccountBannedAppeal, "Appeal the suspension: {0}", and CloudClient.SupportUrl is hardcoded as https://deskrawl.com/support. That is why suspensions live in Online Mode — offline characters are client-side data, and demo and beta saves were auto-converted to offline characters in 0.1.13.
Why false bans happened, and the line that proves it
Patch 1.0.0g, published 2026-09-29 — one day after launch — admits it outright:
Fixed a few cases where cheat detection handed false bans. Fixed pirated game could access Online Mode. Official source: Steam announcement: [Patch 1.0.0g] Various Improvements and Fixes
Read that plainly: before 2026-09-29, known false bans existed in the build. The note says nothing about how many, which cases, or whether anyone was restored.
| Date | Event | Source |
|---|---|---|
| 2026-07-22 | Beta post: "We have processed and removed players who had been detected for using cheats. If you believe you were removed unfairly please ask for support in Discord or QQ." | announcement |
| 2026-09-26 | Pre-launch thread "Don't have the same problem as another idle game that was issuing false profile game bans" — 0 replies | thread |
| 2026-09-28 | Launch. Review at 30 minutes of play: "already have hackers using cheat engine to finish the game. save your money guys" (id 236398601, 58 up / 38 funny) | Steam reviews |
The 2026-07-22 line matters twice: earliest public confirmation that Deskrawl removed players over cheat detection, and proof that Discord and QQ were the appeal route at that time. Both are wrong now. And the mood is fear, not curiosity — the 2026-09-26 thread was opened two days before launch by someone never banned: "That scared me off enough to never touch that other game ... please DONT have that same problem." Across our corpus of Steam discussions, guides and reviews, the anti-cheat / false-ban / Cheat Engine family is the fifth most-cited complaint cluster — a keyword-filtered lower bound of 118 player posts.
The only official appeal route
Measured 2026-10-01 with headless Chrome against deskrawl.com/support?lang=en (16,863 bytes rendered). The whole page:
Ban Appeal If your account was suspended from Online Mode and you believe it's a mistake, sign in with that Steam account and tell us what happened. Our team reviews every appeal. Sign in through Steam You'll be sent to steamcommunity.com to sign in. This page never sees your password.
The chain under it is verifiable with plain HTTP:
| Step | Request | Result |
|---|---|---|
| 1 | GET deskrawl.com/ |
303 → deskrawl.com/support |
| 2 | GET deskrawl.com/support |
200 |
| 3 | GET deskrawl.com/support/login |
302 → steamcommunity.com/openid/login, openid.return_to=https://deskrawl.com/support/auth/return |
| 4 | GET deskrawl.com/support/auth/return with no session |
401 |
Step 3 is the trap: Steam OpenID 2.0 binds the appeal to whichever account signs in, so appeal from the suspended account. The page exists in five languages (?lang=en, ja, ko, zh-Hans, zh-Hant); the form you reach after signing in is not publicly inspectable, so nobody outside the studio can say what fields it asks for.
Not on the support page, not in any of the 26 official announcements, not in the full patch archive. Any response time you find quoted is invented.
Why every other "Deskrawl appeal" link is wrong
deskrawl.com is a single-page app with exactly one real route. Probed 2026-10-01, on top of the four chain steps above:
| Path | Status |
|---|---|
/support/appeal, /support/ban |
303 → /support — catch-all, same page |
/ban-appeal, /appeal, /faq, /policy, /legal, /privacy, /eula, /news, /patch-notes, /leaderboard, /discord and 17 more |
404 |
Any page advertising a Deskrawl "ban appeal portal", "policy page" or "leaderboard" outside that one URL is not the official route. Steam's listing agrees: support_info.url is empty, and the only contact Valve publishes is admin@firstdayentertainment.net — a contact address, not an appeal form.
What to put in the appeal
- Your Steam profile URL. The only identifier the studio can resolve without the OpenID login.
- The exact ban text, including whether it was the hours, days or permanent variant — five distinct client states, and they tell you how the server classified you.
- When it fired and your patch version. The 1.0 launch build of 2026-09-28 and the Hot Fix that followed it both sit inside the window the developer admitted was producing false bans.
- Machine and session context: laptop sleep, a stutter or crash, a clock change, Steam Deck or Proton. The detector compares game time to real time once a second with a
maxFalsePositivesallowance of 5 — a stall-heavy session is exactly the profile that produces. - Whether offline characters still work for you, since every shipped suspension string is Online Mode-scoped.
Nothing here explains how to hide modifications, spoof timings or defeat the check. Whether you were suspended legitimately or not, the appeal is the route. That is the whole point of it existing.
What Deskrawl has not published
| Question | Status |
|---|---|
| What "a violation of our Online Mode policy" means | Not published — no policy page exists, and Steam carries no legal notice |
| Appeal turnaround time | Not published |
| Suspension duration rules | Not published — the client supports hours, days and permanent, the mapping is server-side |
| Whether a suspension touches offline characters or the save | Not published |
Weigh the risk: what Online Mode gives you. If the appeal fails, Steam's refund window is the next lever.
FAQ
Does a Deskrawl ban delete my save or my offline characters? Not officially answered. Every suspension string is scoped to Online Mode and offline characters are client-side data, but nothing published covers a server-managed online character.
Can I appeal from another account or a family member's login?
No — the appeal runs through Steam OpenID at deskrawl.com/support/login, bound to whichever account signs in.
Is there still a Discord or QQ appeal channel? Not since 1.0. Those were named in the 2026-07-22 beta announcement; the current route is the Steam OpenID form.
Is Cheat Engine banned? No rules list has ever been published. A review posted 30 minutes into launch reported Cheat Engine users finishing the game — player-reported, not official.
I was suspended before 2026-09-29 — should I appeal? Yes, and say so in the appeal. 1.0.0g is the patch that fixed the false bans, so earlier suspensions fall inside the acknowledged window.
More Deskrawl: Idle ARPG Guides
Deskrawl has exactly three difficulties. Inferno multiplies enemy HP sixfold and is the only tier that drops Divine gear, rune sets and Mythic content.
The real Deskrawl loot table from the 1.0 build — 87-95% no-drop rolls on trash mobs, chest contents, and what patch 1.0.0g actually changed.
The verified Deskrawl +10 upgrade table: four guaranteed levels, then 75%, 50%, 40%, 30%, 20% and 10% — plus the material each slot needs.
The 68 official Deskrawl stat affixes and the per-slot roll pools, plus the 11-vs-12 equipment slot puzzle solved: rings occupy two slots.
Exact Deskrawl socket costs from the 1.0 build: 100 ore plus 400 gold per item level, level 30 to unlock, and the five slots that cannot be socketed.
There is no gold map in Deskrawl. Gold comes from offline mob rolls scaled by difficulty bonus, Life Skills gold find, and the lucky wheel.
Deskrawl has six rarity tiers ending in Divine, not Epic. The Divine drop chance, its Inferno-only gate, and why you should never salvage one.
The Deskrawl Life Skills tree explained: 85 official nodes, 84 with prerequisites, hidden until unlocked, and why only 0.9% of players have finished it.
