Giter Club home page Giter Club logo

autojack's Introduction

AutomaticBlackJack πŸƒ

Gif Demo

Quick Note:

  • The project is no longer actively maintained or updated but it still remains fully functional and undetected. Dozens of people have used this without issue. See the Installation Instructions below to get started.
  • After installation:
    • Ensure you have space below your Chrome Window (that's where the UI will appear).
    • Also ensure after starting on Chumba, you double click your SC Balance once so the program will know how much you need to play through. It will display "Done" when you finish.
    • The offer spammer still works on Pulsz only for Skrill however it was only included as a quick addition so its relatively incomplete.
  • Tips:
    • BTC: 3DP4kqweWydfaN1Xd3X7KuBu2dQNQvQPxE
    • Eth: 0x7E5546922FEfE24171d7F6Aa8CcdE33922305F7f

What is this? πŸ”

  • JS Application that displays a visual indicator for the best action to take based on the dealer's hand and your hands. Currently supports Chumba Purple BJ and LuckyLand BJ. Uses the logic from the strategy chart (referenced at the bottom) and Chrome remote debugger to analyze network requests, track the current Game's State, and displays the optimal action to take for perfect strategy. Supports splitting, multiple hands, doubles, etc. Also shows some nifty analytics functions at the bottom.

Quick Facts: πŸ“Š

  • Yes, Automation Breaks TOS but this program is safe. Remote debugging is a feature built into chrome to help developers. Websites have no way of detecting it and even if they could, it's not a red flag.
  • I have redeemed around $30k across both sites all while using this app with zero issues. As long as you don't do something stupid like set up a macro or auto clicker, there is zero risk of detection/ban (seriously, don't do that).
  • The installation instructions might look scary if you're new to Open Source but I take you through it step by step. You don't need to know how to code. If you get lost, just ask a question in the chat and I or someone will help you.

For the Nerds πŸ€“

How does this work?

  • You just launch your chrome with an extra flag to enable remote debugging. This makes the dev tools available to other programs on your computer at port 9222. This code creates a Puppeteer instance that attaches to your dev tools through a Websocket and then reads the network request data and keeps track of your game state.

  • I then implemented the logic from the strategy charts to display a visual indicator for the appropriate action based on the game state as well as provided some handy analytics functions.

  • You can move the program window directly below the game window and the Optimal Action Indicator should line up with the actual game buttons and match their color, allowing you to play quickly while doing something else like watching youtube.

  • It displays helpful information like the hands detected, Amount Remaining To Wash, Estimated Wash Per Hour, Etc.

  • I highly recommend to compare the Dealer/PlayerHands detected to the Actual Game as well as the actual Chart to ensure its all being detected and displayed correctly. I've tested this heavily but bugs may exist.

    • I also had issues running this on my M1 Mac (the browser is very laggy due to Rosetta) but Windows and Intel Mac's appear to work fine.

Installation Instructions πŸ“œ

1. PRE-REQ: If you've never touched a line of code before, first do this

  • You will need to download a code editor (I personally use VS Code, available here: VS Code)
  • Install nodejs available here: Node JS
  • When installing nodejs make sure to check "Automatically install the necessary tools. Note this will install Chocolatey..." on Windows. When the powershell terminal shows Press Enter to Exit you can X it out (DO NOT X it out prematurely, it can take up to 30 minutes and appear to be frozen).
  • Install git, dont need to change anything from the default in the installer unless you know what your doing, available here: Git For Windows

2. Clone (download) this project

  • Go back to the github page for this project, and click the green Code button, then copy the link it has under HTTPS ( its https://github.com/camheff/AutomaticBlackJack.git )
  • Open VS Code, on the left sidebar, click the Explorer button (just above the Magnifying glass), then click the blue "Clone Repository" button. (If you dont see this, try exiting and reopening VS Code).
  • Paste this link into the little bar at the top of your screen for Clone from GitHub, then click "Clone from ...."
  • After selecting a location to download it to, once the download completes click "Open" on the popup.
  • Click Yes, I trust the authors.

3. AFTER Cloning

  • Open a VS Code Integrated Terminal by selecting Terminal then New Terminal (On the Bar on the Top Left with File, Edit, etc.)

Run the command:

npm install
  • If you get an error try running it a second time

  • This will install dependencies for the project so it can run.

The project is now installed, you just need to configure Chrome so it can be accessed by this code.

4. Setting up Chrome

  • Find or create a shortcut to your Google Chrome, then right click it, select "Properties", and add " --remote-debugging-port=9222" (without the quotes, with the space in front) to the end target field.

So it should look something like:

"C:\Program Files\Google\Chrome\Application\chrome_dev.exe" --remote-debugging-port=9222
  • You will probably need to either turn off your Firewall or add an exception for this Chrome in your firewall rules, otherwise it will probably block the remote debugger.

To ensure this is working, launch the Chrome with this short cut, and open a command prompt (search command prompt in the Windows Start Menu) then run

netstat -an | find "9222"

This should display a line like

TCP 127.0.0.1:9222 0.0.0.0:0 LISTENING
  • If it shows nothing, its likely a firewall issue. If it shows a bunch of entries and the program cant connect to chrome when ran, try running the command:
taskkill /f /im chrome.exe
  • Then try opening chrome from your shortcut again, or try restarting your PC and make sure you launch the Chrome shortcut with remote debugging before a regular Chrome instance.

  • If you see LISTENING your Chrome is setup correctly.

    • If you dont want to make a shortcut, or this doesn't make any sense, you could alternatively try launching it like this Youtube Video

5. Running it

  • Back in your VS Code window, after running npm install, you can run the Application with:
npm run start:luckyland

or

npm run start:chumba
  • You need to have your remote debugging Chrome window opened at either chumba or luckyland before running this command (I run the command when im on the BJ page).
  • Only have one single window/tab opened per Casino, having multiple tabs open on the same site will likely mess things up.

CHAD MODE πŸ’ͺ

  • Try it out with:
npm run start:ChadMode
  • The mode for the true degen. Allows you to run the code on both sites at the same time
  • Will correctly track each one individually, allowing you to wash on both sites for 2X playthrough
  • Id recommend having your windows arranged as I do in the GIF to make it easier
    • (If you get a GPU Cache error in the terminal when running this, dont worry about it thats normal)

Weird Things to Note about Each Site⚠️

Chumba

  • Launch the Code while on the main lobby page at Chumba, then open Purple BlackJack.
  • You need to click the Sweeps Coins thing at the top atleast once (so it displays your Balance and Redeemable Balance) for the program to know those values and make the appropriate calculations for analytics.
  • NEW Added a reminder to the UI if you haven't clicked this when playing

LuckyLand

  • After Dealer BlackJack, it displays Hit instead of Repeat. It also doesn't start showing the correct values for Time, Bets Per hour, etc. until one or two wins.

Since these are super minor quirks they arent on my radar to fix. The code is pretty rough with a lot of duplications. This is because it was initially designed only for Chumba but LuckyLand had a much different (shittier) process for how the game works with its state management and network requests and I was too lazy to make the code modular and efficient. Its not an enterprise app or a resume builder, the code does its job and I'm busy working on many other important automations that everyone in the group can take advantage of soon.

Commands Reference: ⌨️

For a Single Site

npm run start:luckyland

or

npm run start:chumba

For both:

npm run start:ChadMode
  • (IF YOU GET AN ERROR MESSAGE ABOUT GPU CACHE DONT WORRY, ITS NOT AN ISSUE)

(Run these from Command Prompt, not VS Code terminal)

Useful to fix your chrome without restarting:

taskkill /f /im chrome.exe

Check to see if your Chrome Started Correctly:

netstat -an | find "9222"
  • NOTE: X'ing out the application window might not stop the program, to stop it properly type in your VS Code Terminal:

    • Ctrl and C
  • Which will kill the process.

Updates in V4.0: πŸ“’

  • Added New Mode Pulsz OFFER SPAMMER_ that automatically sets up your Skrill Multi-Tab's and then clicks purchase on all tabs simultaneously.
    • Currently tested up to 30 tabs, likely works on up to 60-70

To update your code, just run

git pull
npm install
  • To run the offerSpam mode, run:
npm run start:offerSpam
  • To configure it:
    • To change the number of packages to buy, open offerSpam.js and see line 81. Change this value to the number of packages you want to buy MINUS one (so 29 buys 30 packages)
let numberOfPackagesToBuy = 29;
  • To set the correct package to buy:

    • See line 177. IF your offer is a pop up (that shows whenever you open pulsz.com/store) SET offerIsPopup equal to true;
    • IF your offer is NOT a popup, see line 186. Change the price inside those quotes to the price of the package you want. Currently its set to click the $23.99 package (the one I got).
  • IMPORTANT: This requires you to have Skrill linked to your Pulsz account and you MUST have Pulsz set as a trusted Merchant and your Device set as a trusted device. If you dont have this, just buy the $2 package and click the check box during checkout before running.

  • If you have a pack that you want to purchase but it has the same price as a normal package, you can change line 447 of offerSpam.js to: "let priceSelector = "(//button[normalize-space()='" + price + "'])[2]";" and it will now buy the second package with the specified price on the screen instead.

FAQ ❓

Are you going to make this fully automated for actually clicking the buttons too?

  • Probably not, I dont view this as worth the risk. Automation breaks TOS and is bannable.
  • While we can read the data with a 100% guarantee of that being undetectable, actually interacting with the browser will always carry a possiblity of detection (albeit very small one).
    • Given the size of the deposits we are making on these websites this is not worth the risk to save a couple hours of time per week. The hourly profit is at Lawyer/Surgeon levels, dont risk a ban out of greed/laziness.

If I already memorized the chart is this program useless?

  • Besides the added benefit of not having to actually play/follow the game (which I find super boring and tedious), since the program tracks the game state through network requests it has access to the hand data before your screen animations complete

  • This means its guaranteed to speed up your game (you will already see the correct action to take before the hands even finish dealing).

  • It can also help prevent you from making any mistakes, very useful considering that even a single mistake can heavily effect your sessions RTP and the profitability of this method.

  • And with the addition of ChadMode, it opens up the opportunities to complete your daily wash simultaneously on both sites without mistakes, greatly reducing the time needed.

Are you planning any more updates?

  • Unless a breaking change happens like a site layour change, not at this time. I believe all useful features have been added but am always open to suggestions.
  • If more 5% Casino's open I will definitely investigate adding support to those but for the time being I believe all goals have been met.

Will you add support for Chumba Green?

  • I dont see any point in adding this. Play through is slower than Purple and there is not an EV difference between playing multiple small hands versus playing one large hand, plus it has slightly worse RTP. Purple is Goated.

If you've found any kind of bug, have trouble getting it running, or have an interesting idea to add to it let me know on discord Camheff (Username to add me: omni_soft )

Sources For Tables πŸ“œ

Sponsorships/Donations 🀝

  • This code is open source and 100% free for anyone to use, but it did take me a lot of effort and I spent a few weeks researching and working on the best way to implement something like this for everyone's benefit while I could have just been doing the 5% method during that time.
  • If you like the software, find it useful and want to show your appreciation the Sponsors button at the top of the Github page is the best way to do so and I would greatly appreciate any tips, otherwise my BTC/ETH addresses are below
  • BTC: 3DP4kqweWydfaN1Xd3X7KuBu2dQNQvQPxE
  • ETH: 0x7E5546922FEfE24171d7F6Aa8CcdE33922305F7f

OmniTrader Early Access, the Automated Trading CLI πŸ“ˆ

  • My other major project currently in development, OmniTrader. A project that allows you to interact with your Brokerage Accounts through an easy to use CLI.
    • The project allows you to automate your trading so you can place hundreds of Buy and Sell orders accross ALL your seperate brokerage accounts with a single command. No more pulling over on the side of highways to get last minute trades in or fumbling with clunky Brokerage UI's repeating the same orders over and over again spending hours each day. This will cut the time it takes to place all your trades down to a few minutes.
    • Currently it supports:
      • TastyTrade
      • Tradier
      • Wells Fargo
      • Vanguard
      • Ally
      • Fidelity
      • Chase
      • Firstrade
      • Robinhood
      • TRowe Price
      • Truist
      • Schwab
    • And more coming very soon. Its currently an active work in progress and I plan to add support for just about every major broker starting with the slowest and most annoying to trade on.
    • Private Access is on Pre-Sale now, reach me on Discord ( omni_soft ) for more details

autojack's People

Contributors

camheff avatar

Stargazers

Siam Rahman avatar Casey Strouse avatar  avatar Anatoly Tverdovsky avatar  avatar zeusec avatar  avatar  avatar  avatar  avatar sunk818 avatar

Watchers

sunk818 avatar  avatar  avatar  avatar

Forkers

sydneydanger

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.