Dellenoam / NotPixelBot

Automated script for NotPixel with painting on canvas using a template, passing in-game proof-of-humanity checks and more
MIT License
5 stars 3 forks source link
nodejs notpixel notpixel-bot notpixel-script python telegram-bot

NotPX Bot ⬛

Automated script for NotPixel with painting on canvas using a template, passing in-game proof-of-humanity checks and more

Requirements

Python Node.js

Features

Feature Supported
SuperMegaCool Capybara intro included
Passing in-game proof-of-humanity checks
NotPX API change detection X badge
Packaged .exe file
Easy install and uninstall scripts
Proxy binding to session
User-Agent binding to session
Auto-detect new .session and register it in bot
Auto-paiting
Auto-tasks X badge
Auto-use bombs X badge
Auto-claim px
Auto-upgrade boosters
Night sleep mode
Async working

Why are we better than the rest of the public scripts?

✨ Capybara Intro (game changer, killer feature)

Capybara Intro

📝 Shortly about in-game events check

We are passing proof-of-humanity checks with a real task solution instead of using random responses like other public scripts do.

📊 Detailed about in-game events check

In the game, there are several types of events, which are collectively referred to as proof-of-humanity events. And our script is passing them with a real task solution instead of using random responses like other public scripts do.

🔹 TGAalytics Events: These events occur in various situations, but primarily when a player logs into the game. When a player successfully enters the game, a tganalytics event is triggered, sending a signal to the server indicating that the login was successful.
🔹 Plausible Events: These events is sent every time the player performs an in-game action. For example, it can be triggered when a player enters a shop to make purchases or decides to change the paint template.

The key aspect of plausible events is that they automatically send an event containing a reference to the location the player has navigated to. For instance, if the player enters a shop, the event will include:

🔹 A link to that shop
🔹 The type of event
🔹 The base URL from which the action originated

In contrast, tganalytics events have specific requirements. These events necessitate the completion of a task or challenge, which the player must solve in order to generate a valid response that is then sent back to the server. Unlike plausible events, which occur passively, tganalytics events demand in-game scripts to meet the conditions for the event to be registered.

⚠️ Again about in-game events check

Passing these checks with a real solution is important, as the project can shave you on this point, so using our script you slightly but secure yourself from this incident

📝 Shortly about auto-painting

Our script can paint on the canvas using real-time updated data instead of random pixels like the rest of the public scripts. This means that you will typically receive PX for painting, provided that no one has changed the color of that pixel during that time.

📊 Detailed about auto-painting

The game retrieves the canvas through an API and then initiates a WebSocket connection to update it. Once the connection is established, the game decodes the incoming data and utilizes this information to refresh the template. Our script fully implements this functionality, ensuring that your canvas is always up to date. For pixel painting, we employ an algorithm that identifies pixels on the canvas that have different colors compared to the template. As soon as such a pixel is detected, we send a request to paint it. This means that you will almost always receive PX for painting according to the template on the canvas. However, there are instances when the painting process may fail. This can occur if the script does not manage to paint the pixel before another user does, which can happen even with a real person. Thus, while our script optimizes the painting process, occasional delays may lead to missed opportunities for painting specific pixels.

⚠️ Again about auto-painting

Most scripts rely on random pixel painting, which can be easily detected by the game. This method not only increases the likelihood of being flagged by game but also means that you will not receive any PX, as any painting outside of the template will give you 0 PX.

🚩 Risks of Alternative Methods

Additionally, if you utilize different methods for identifying pixels, such as:

Using pixel information via the API
Retrieving the canvas via the API before each painting action

These practices can also have negative implications. The game may scrutinize your activity more closely, leading to potential penalties or bans.

🌟 Our Solution

Our script addresses these issues, offering a slight improvement in your situation. By focusing on legitimate pixel painting strategies that align with the game's mechanics, you can enhance your chances of successfully earning PX while minimizing the risk of detection.

🔗 We have a clear use of referrals

If you use change referral id to your own in the settings, it will be. Our script does not prevent you from doing this, unlike some public scripts.

Settings

Settings Description
API_ID / API_HASH API credentials for Telegram API
PLAY_INTRO True/False playing intro on script start (DON'T YOU DARE TO TURN THIS OFF)
INITIAL_START_DELAY_SECONDS Delay range in seconds to use for a random delay when starting the session
ITERATION_SLEEP_MINUTES How long the script will wait before starting the next iteration of the script (painting, claiming and e.t.c)
USE_REF True/False the use of a referral to start the bot
REF_ID Referral ID to be used
SLEEP_AT_NIGHT True/False sleep at night
NIGHT_START_HOURS Start hours range of the night
NIGHT_END_HOURS End hours range of the night
ADDITIONAL_NIGHT_SLEEP_MINUTES Additional minutes range to sleep at night
CLAIM_PX True/False auto-claim px
UPGRADE_BOOSTS True/False auto-upgrade boosters
PAINT_PIXELS True/False auto-painting

How to start 📚

Before you begin, make sure you have meet the requirements

Obtaining API Keys

  1. Go to my.telegram.org and log in using your phone number.
  2. Select "API development tools" and fill out the form to register a new application.
  3. Record the API_ID and API_HASH provided after registering your application in the .env file.

Sometimes when creating a new application, it may display an error. It is still not clear what causes this, but you can try the solutions described on stackoverflow.

Linux manual installation

python3 -m venv .venv
source .venv/bin/activate
pip install poetry
poetry install --only main
cp .env-example .env
nano .env  # Specify your API_ID and API_HASH, the rest is taken by default

Windows manual installation

python -m venv .venv
.venv\Scripts\activate
pip install poetry
poetry install --only main
copy .env-example .env
# Then open .env in any text editor and specify your API_ID and API_HASH, the rest is taken by default

Windows installation using powershell script

NOTE: The install.ps1 script installs Chocolatey, a package manager for Windows, and uses it to install Python, Git, and NodeJS, if they are not already installed

We have also created powershell script which allows you to easily install NotPixelBot on Windows. So far it has been tested only on Windows 10, but also on Windows 11 with minor issues (maybe you woun't have any)

Before running the script, you must do some preparation

Open powershell and enter there this command. This will allow you to run scripts without restrictions.

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

Ok, now we are ready. Execute following commands:

Invoke-WebRequest -Uri "https://github.com/Dellenoam/NotPixelBot/blob/master/windows_scripts/install.ps1" -OutFile "$env:TEMP\install.ps1"

powershell -ExecutionPolicy Bypass -File "$env:TEMP\install.ps1"

After that script will be downloaded to the temp folder and executed. When it asks you to enter path where to do git clone, just enter the path where you want to do git clone. For example C:\Users\username\Scripts\NotPixelBot without any quotes.

Well, now you can proceed to the Run the script section.

Windows uninstallation using powershell script

NOTE: The install.ps1 script installs Chocolatey, which is then used to install Python, Git, and Node.js. This uninstall.ps1 script will also uninstall these programs using Chocolatey, including Chocolatey itself. However, it will not remove the NotPixelBot folder. Therefore, please be cautious and ensure you manually delete the NotPixelBot folder if needed.

If you want to uninstall NotPixelBot, run following commands:

Invoke-WebRequest -Uri "https://github.com/Dellenoam/NotPixelBot/blob/master/windows_scripts/uninstall.ps1" -OutFile "$env:TEMP\uninstall.ps1"

powershell -ExecutionPolicy Bypass -File "$env:TEMP\uninstall.ps1"

Run the script

NotPixel Intro

Before running the script, you always need to activate the virtual environment.

# Linux
source .venv\bin\activate
# Windows
.venv\Scripts\activate

To run the script, use python3 main.py on Linux or python main.py on Windows.

Also, you can use flag --action or -a to quickly run the script with specified action.

# Linux
python3 main.py --action [1/2]
# Windows
python main.py --action [1/2]

# Or

# Linux
python3 main.py -a [1/2]
# Windows
python main.py -a [1/2]

Where [1/2] is:

1 - Creates a session
2 - Run bot

So for example if you want to create a session, you can run this command:

# Linux
python3 main.py --action 1
# Windows
python main.py --action 1

# Or

# Linux
python3 main.py -a 1
# Windows
python main.py -a 1

Contacts

If you have any questions or suggestions, please feel free to contact us in comments.

Capybara Society Telegram Channel