[{"data":1,"prerenderedAt":81},["ShallowReactive",2],{"site":3,"config-slug-site":15,"config-product-en-x3d-anticheat":21,"config-public-x3d-anticheat":80},{"site":4,"contact":10,"seo":13,"payment":14},{"name":5,"host":6,"default_locale":7,"locales":8},"X3D Developer","fivem.x3d-developer.com","th",[7,9],"en",{"discord_invite":11,"email":12,"line":12},"https:\u002F\u002Fdiscord.gg\u002FNA5kPVynFv","",{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"site":16,"contact":18,"seo":19,"payment":20},{"name":5,"host":6,"default_locale":7,"locales":17},[7,9],{"discord_invite":11,"email":12,"line":12},{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"id":22,"slug":23,"name":24,"summary":25,"price_thb":26,"license_mode":27,"cover_key":28,"cover_url":29,"category_slugs":30,"tags":32,"latest_version":46,"latest_released_at":47,"published_at":48,"has_docs":49,"config":50,"rent_price_satang":51,"description_md":52,"docs_md":53,"seo_title":54,"seo_description":55,"media":56,"versions":77},"ff948fa9-6fc5-410e-b952-ee88b15f0c9d","x3d-anticheat","X3D Anti-Cheat","BETA pricing, join the testing. Evidence-first anti-cheat: Discord embeds with screenshots, HWID bans, Steam\u002FDiscord account lock, two-line event guard.",59900,"shop_license","public\u002Fproducts\u002Fx3d-anticheat\u002Fcover\u002Fd90612eed4448164.jpg","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fcover\u002Fd90612eed4448164.jpg",[31],"anticheat",[33,34,35,31,36,37,38,39,40,41,42,43,44,45],"esx","standalone","แอนตี้โกง","ป้องกันแฮก","กันโกง","HWID ban","กันโปร","ภาพหลักฐาน","ล็อกบัญชี Steam Discord","แบนเครื่อง","คิวยศ Discord","กัน event สแปม","แอนตี้โกง ESX","1.0.0","2026-09-16T09:45:51.78533Z","2026-09-16T09:46:00.05928Z",true,"owners",12000,"# Evidence-first anti-cheat — no blind bans, nothing slips through\r\n\r\nEvery detector writes evidence to the database, posts a Discord embed with the **screenshot of the player attached right there in the post** (no public port, no server disk use, no third-party image host), and pings in-city admins. Admins review, then decide — or enable auto-ban only for the certain cases (vehicle\u002Fweapon spawn, money edits, script injection).\r\n\r\n## Special BETA pricing — help test and improve X3D\r\n\r\nX3D Anti-Cheat is currently in **BETA**. We keep the price accessible so more customers can join testing across a wider range of servers. Report issues and share feedback through Discord to help us improve the system before the full release.\r\n\r\n## What it detects\r\n\r\n- **God mode \u002F health \u002F armor** above legit values (grace window after spawn and revive)\r\n- **Speed hack** in vehicles and on foot · **No-clip** · **Invisible** · **Teleport**\r\n- **Vehicle \u002F ped \u002F object \u002F weapon spawns** that did not come from a server script (deleted at once, banned on spam)\r\n- **Blacklisted weapons** (Railgun, Minigun, RPG …) removed automatically\r\n- **Explosion spam \u002F blocked explosion types** read from the server-side event, never trusted from the client\r\n- **Silent aim \u002F hitbox** · **ClearPedTasks on others** · **giving\u002Fremoving others' weapons**\r\n- **Script injection \u002F rogue resources** (Eulen, RedEngine, Lynx … list is yours to extend)\r\n- **Heartbeat token** — a hooked client drops instantly\r\n\r\n## Guard the door\r\n\r\n- **HWID bans** — new Steam\u002FDiscord\u002Flicense won't get them back in\r\n- **Account Lock** — require Steam + Discord, bind them on first login, profile confirm card\r\n- **Duplicate \u002F alt accounts** across every identifier plus HWID\r\n- **Priority join queue** by Discord role, reserved staff slots, reconnect boost\r\n- **Connect guard** — ping ceiling and reconnect throttle\r\n- **Global ban** across servers (optional)\r\n\r\n## Protect any script with two lines\r\n\r\nAdd `@x3d_anticheat\u002Fcore\u002Fserver\u002Finject.lua` to any resource's fxmanifest and every net event in it is rate-limited, source-checked and logged on spam. No changes to existing code.\r\nMiddleware is included for callbacks that need more: tokens, distance, items, money, job, admin rights.\r\n\r\n## Why X3D\r\n\r\n- **ESX Legacy + standalone** — one bridge file to switch frameworks\r\n- **Readable config, every detector switchable** — no black box you can't control\r\n- **Evidence is the real image in the post**, not just text\r\n- **Frequent updates** — buy once, get every version\r\n- Discord support\r\n\r\n## Requirements\r\n\r\nESX Legacy 1.9+ (or standalone) · oxmysql · screenshot-basic recommended for image evidence\r\n","## Installation\n\n### 1. Database\n\nRun the bundled `install.sql` against the same database `oxmysql` uses.\n\n```\nmysql -u \u003Cuser> -p \u003Cdatabase> \u003C install.sql\n```\n\nOr paste the whole file into HeidiSQL \u002F phpMyAdmin \u002F DBeaver and run it. Safe to re-run.\nThe resource never creates tables itself; a missing one is reported in console.\n\n### 2. Files\n\nPut the `x3d_anticheat` folder in `resources\u002F` — **do not rename the folder** (other resources include it by this name).\n\n### 3. server.cfg\n\n`ensure` it after oxmysql \u002F es_extended and before any resource that uses the injection layer.\n\n```cfg\nensure oxmysql\nensure es_extended\nensure x3d_anticheat\n\nset x3d_license_x3d-anticheat \"X3D-XXXXX-XXXXX-XXXXX-XXXXX\"\nset x3d_anticheat_webhook \"https:\u002F\u002Fdiscord.com\u002Fapi\u002Fwebhooks\u002F...\"\n\nadd_ace group.admin x3d_anticheat.admin allow\nadd_ace group.admin x3d_anticheat.bypass allow\n```\n\nUse `set`, not `sets` — `sets` replicates the value to players.\n\n### 4. Start the server and verify\n\nConsole should show `Anti-Cheat system fully initialized` and `Captured NNN expected resources`.\nJoin the server, then type `ac status` in the console — it should report the players being tracked.\n\nA red `LICENSE CHECK FAILED` box means the key has not passed yet. Your server keeps running and players can still join; the detectors just stay idle.\n\n### 5. Protect your own resources\n\nTwo lines in that resource's `fxmanifest.lua` (first line of each block). No changes to existing code.\n\n```lua\nserver_scripts { '@x3d_anticheat\u002Fcore\u002Fserver\u002Finject.lua', 'server\u002Fmain.lua' }\nclient_scripts { '@x3d_anticheat\u002Fcore\u002Fclient\u002Finject.lua', 'client\u002Fmain.lua' }\n```\n\n## Configuration — `config\u002F`\n\n| File | What |\n|---|---|\n| `config.general.lua` | debug · admin groups · player\u002Fresource whitelist · heartbeat · screenshot |\n| `config.detect.lua` | detector switches · `Config.Ban.AutoBan` · speed\u002Fdistance thresholds · weapon blacklist · explosions |\n| `config.connect.lua` | connect guard · duplicate accounts · Account Lock · queue · global ban |\n| `config.discord.lua` | embed name\u002Fcolors |\n| `config.license.lua` | key |\n| `functions\u002Fconfig.functions.server.lua` | hooks `onReady` · `onPunished` · `onAdminAction` · `onScreenshot` |\n\nDefault = **evidence-only**: detect, store evidence, notify admins; auto-ban only on vehicle\u002Fweapon spawn, money cheat, injection, event manipulation, armor. Enable more in `Config.Ban.AutoBan` once real logs show no false positives.\n\n## Discord\n\nWebhooks are set through convars only (players cannot read them): `x3d_anticheat_webhook` plus per-channel `_playercaptured` `_localbanned` `_adminactivities` `_suspiciousaction` `_globalbanned`.\n\nScreenshots need `screenshot-basic`. By default (`Config.Screenshot.Upload = 'discord'`) the image is attached to the embed directly — **nothing is written to disk and no port has to be reachable**; the image lives in RAM until the upload answers, then it is dropped.\n\nWant your own archive? `Upload = 'link'` writes a ring buffer of `x3d_anticheat_shots_keep` files (default 500) under `shots\u002F` and needs a publicly reachable `x3d_anticheat_shots_baseurl`.\n\n## Optional features (off out of the box)\n\n| Feature | Enable at | Needs |\n|---|---|---|\n| Account Lock | `Config.AccountLock.Enabled` | `steam_webApiKey` + `x3d_anticheat_discord_bottoken` |\n| Require Discord membership | `Config.AccountLock.Guild.RequireMember` | `GuildId` + bot token |\n| Priority queue | `Config.Queue.Enabled` | bot token + `RolePoints` |\n| Global ban | `Config.GlobalBan.Enabled` | `ApiEndpoint` + `x3d_anticheat_globalban_apikey` |\n\n## Other frameworks \u002F standalone — `addons\u002Fframework\u002F`\n\nThe core never touches ESX; everything goes through `Framework.*` in `addons\u002Fframework\u002Fserver.lua` and `client.lua`. A standalone example sits at the bottom of both files — copy it over. Notifications live in `addons\u002Fnotify\u002F`.\n\n## Commands\n\n`\u002Fac help` · `\u002Fac status` · `\u002Fac check \u003Cid>` · `\u002Fac violations \u003Cid>` · `\u002Fac ban \u003Cid> \u003Cdays|0> \u003Creason>` · `\u002Fac unban \u003Cidentifier>` · `\u002Fac kick \u003Cid> \u003Creason>` · `\u002Fac banlist` · `\u002Fac account \u003CdiscordId|id>` · `\u002Fac unbind …` · `\u002Fac queue` · `\u002Fspectate \u003Cid>`\n\n## Exports\n\n```lua\nexports.x3d_anticheat:BanPlayer(src, reason, days, by)\nexports.x3d_anticheat:RecordViolation(src, 'MY_TYPE', 'details', 'medium')\nexports.x3d_anticheat:CaptureShot(src, 'tag')\nexports.x3d_anticheat:GrantTeleportGrace(src, ms)      -- before a legit teleport\nexports.x3d_anticheat:RegisterVehicle(netId, src)      -- \u002F RegisterPed \u002F RegisterObject\nexports.x3d_anticheat:RegisterWeapon(src, weaponHash)\n-- client\nexports.x3d_anticheat:SetGodModeExempt(true)           -- entering a safezone that grants god mode\n```\n\n## Troubleshooting\n\n- **`LICENSE CHECK FAILED`** — `LICENSE_INVALID` key belongs to another product · `NETWORK` cannot reach the licence server · `LICENSE_IP_MISMATCH` server IP changed, update it on your account page\n- **`Table 'x3d_anticheat_xxx' is missing`** — `install.sql` has not been run\n- **god mode false positive** — safezone scripts must call `SetGodModeExempt(true)`\n- **script vehicles\u002Fpeds deleted** — add the resource to `Config.Whitelist.Resources` or call `RegisterVehicle` \u002F `RegisterPed`\n- **ox_lib callbacks rate-limited** — `exports.\u003Cres>:InjectSetRateLimit(200, 10000)` inside that resource\n- **no image in Discord** — `ensure screenshot-basic` (`link` mode also needs a base URL reachable from outside)\n","FiveM ESX Anti-Cheat Script","FiveM anti-cheat for ESX\u002Fstandalone: god mode, noclip, spawn and injection detection, Discord evidence with screenshots, HWID bans, account lock.",[57,60,63,65,67,69,71,73,75],{"kind":58,"url":59},"video_url","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=neVIkQX2GsI",{"kind":61,"url":62},"image","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-discord-evidence.png",{"kind":61,"url":64},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-godmode-detection.png",{"kind":61,"url":66},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-blacklisted-weapon.png",{"kind":61,"url":68},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-account-lock-card.png",{"kind":61,"url":70},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-ban-kick.png",{"kind":61,"url":72},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-admin-violations.png",{"kind":61,"url":74},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-config.png",{"kind":61,"url":76},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-anticheat\u002Fmedia\u002Fx3d-anticheat-fivem-inject.png",[78],{"version":46,"released_at":47,"changelog_md":79},"### Added\r\n- Evidence-first detection: god mode \u002F health \u002F armor, vehicle + on-foot speed, no-clip, invisible, teleport, entity + weapon spawns, weapon blacklist, explosion spam, silent aim \u002F hitbox, ClearPedTasks, weapon give\u002Fremove, script injection, rogue resources, heartbeat token\r\n- Discord embeds per channel (webhooks via convar) with the screenshot attached to the embed itself — nothing written to disk, no public URL, no third-party image host (optional `link` mode keeps a local ring buffer instead)\r\n- HWID bans with expiry, duplicate \u002F alt account detection, optional cross-server global ban\r\n- Account Lock (Steam + Discord required, bound on first login, profile confirm card)\r\n- Priority join queue by Discord role, reserved staff slots, reconnect boost\r\n- Connect guard: ping ceiling + reconnect throttle\r\n- Two-line per-resource event protection (`core\u002Fserver\u002Finject.lua` + `core\u002Fclient\u002Finject.lua`): rate limit, source check, payload size limit\r\n- Middleware for sensitive callbacks: token, distance, item, money, job, admin\r\n- Admin: `\u002Fac` command set, `\u002Fspectate`, in-city admin notify\r\n- Framework bridge (`addons\u002Fframework\u002F`, ESX default + standalone example) and notify bridge (`addons\u002Fnotify\u002F`)\r\n- Hooks: `onReady` · `onPunished` · `onAdminAction` · `onScreenshot`",null,1792316314706]