Psyyke / A.C.A.S

Advanced Chess Assistance System for Chess.com, Lichess.org, Pychess.org and more. Hassle-free 1-click install, no downloading. All devices and browsers supported.
https://psyyke.github.io/A.C.A.S/
GNU General Public License v3.0
79 stars 25 forks source link
artificial-intelligence assistance cheat chess chess-cheat cross-window-communication deep-learning fairy-stockfish lc0 lczero multipv userscript web-assembly

A.C.A.S (Advanced Chess Assistance System)

[!WARNING] A.C.A.S is currently in development. Expect bugs, especially on variants.

A.C.A.S is an advanced chess assistance system which helps you make better moves with the help of a chess engine. Just install the userscript, open the A.C.A.S GUI and you're good to go! No downloading needed.

277160104-791ad4ef-96c8-4679-ad78-e1188c73d5e4

[!CAUTION] Please be advised that the use of A.C.A.S may violate the rules and lead to disqualification or banning from tournaments and online platforms. The developers of A.C.A.S and related systems will NOT be held accountable for any consequences resulting from its use. We strongly advise to use A.C.A.S only in a controlled environment ethically.

▶️ Open A.C.A.S ⬇️ Install (GreasyFork) 💬 Discuss With Community

Example Gameplay

example-gameplay

Getting Started

Simply install the A.C.A.S userscript, open the A.C.A.S GUI and a supported chess game site. Then, just start playing!

[!IMPORTANT] You need to keep the A.C.A.S GUI tab active to keep the whole system functional. Think of the tab as an engine of a car, the userscript alone is simply an empty hull, it won't run, nor move. The A.C.A.S GUI has the chess engine which calculates the moves.

Fundamental Idea

A.C.A.S (Tab #1) Chess Website (Tab #2)
image image
The engine runs on a completely different tab than the chess game page, completely isolated from it. The site cannot block the usage of A.C.A.S. A.C.A.S sends move data via CommLink and the userscript displays the data on the board using UniversalBoardDrawer. (If "Display Moves On External Site" setting is activated!)

Arrow Meaning

Color Meaning
🟩 Best Move
🟦 Secondary Move
🟥 Enemy Move

[!NOTE] Enemy move is shown if "Display Opponent Move Guess" setting is activated and the square an arrow starts from is hovered. The enemy move arrow is just a guess made by the engine and means that the engine thinks after you make the move the arrow suggests, the enemy will make the move the enemy arrow suggests.

Q&A

Why did I get banned, wasn't this impossible to detect?

Chess engines simply play differently than humans. It's fairly easy to detect by pure statistics. For example, chess.com bans about 16 000 players for fair play abuse each month.

Your ban most likely wasn't because of the site detecting A.C.A.S, it was because of your suspicious behaviour patterns. A.C.A.S cannot fix this, it's your responsiblity to play as a human.

Don't want to get banned again? Don't use A.C.A.S against other humans.

Why doesn't it work?

Before making an issue, please read these and also join the Userscript Hub Discord server for assistance,

Otherwise, it could be a bug, please make an issue here.

[!NOTE] When making an issue, please be descriptive! Mention,

  • The chess site and the variant you were playing.
  • The browser and the userscript manager you were using.
  • What did you do for the bug to happen, does it happen often? How could I reproduce it?
  • You can also include a screenshot of the browser console (e.g. CTRL + SHIFT + I or right click, inspect, and go to the console tab), look for grey underlined text at the beginning of a red background area, on the right side of the screen, which has the word 'A.C.A.S'. That's an error from the userscript.

Development

A.C.A.S GUI

Hosting on localhost

1) Install the A.C.A.S userscript. 2) Select a webserver of your choosing, e.g. UwAmp. 3) Create a folder named A.C.A.S to the root folder of your webserver. (e.g. www/A.C.A.S) 4) Clone the repository and put the files inside the folder you just created. 6) You should now see A.C.A.S running on http://localhost/A.C.A.S/. 7) Make sure the A.C.A.S userscript is on and you should be good to go!

[!WARNING] Make sure there are no additional folders which would make the URL like http://localhost/A.C.A.S/A.C.A.S/.

[!TIP] You can use GitHub Desktop to make Git actions such as cloning easy.

A.C.A.S Userscript

Developing the userscript is easy, simply develop it as you'd any other userscripts.

[!NOTE] Browsers might cache userscripts after you've refreshed the site enough times. If you notice your userscript being cached, disable the userscript, refresh the page, then enable the userscript and refresh the page again.

Used Libraries

Used Libraries (Made for A.C.A.S)

Contact

Discussion about A.C.A.S can be had on the Userscript Hub Discord server.

Other

You can find the userscript on GreasyFork as well.

You can find A.C.A.S v1 here. It is no longer updated.