PokemonGo-Bot - The Pokemon Go Bot, baking with community.

Overview

PokemonGo-Bot

PokemonGo-Bot is a project created by the PokemonGoF team. Since no public API available for now, a patch to use HASH-Server was applied. PokemonGoF is not part of HASH-Server dev team and has no connection with it.

Bot Map and Terminal

Donation

Bitcoin: 1PJMCx9NNQRasQYaa4MMff9yyNFffhHgLu

Table of Contents

The project is currently setup in two main branches:

  • dev also known as beta - This is where the latest features are, but you may also experience some issues with stability/crashes.
  • master also known as stable - The bot 'should' be stable on this branch, and is generally well tested.

Discord

Bugs / Issues

If you discover a bug in the bot, please search our issue tracker first. If it hasn't been reported, please create a new issue and ensure you follow the template guide so that our team can assist you as quickly as possible.

Feature Requests

If you have a great idea to improve the bot, please search our feature tracker first to ensure someone else hasn't already come up with the same great idea. If it hasn't been requested, please create a new request and ensure you follow the template guide so that it doesnt get lost with the bug reports. While you're there vote on other feature requests to let the devs know what is most important to you.

Pull Requests

If you'd like to make your own changes, make sure you follow the pull request template, and ensure your PR is made against the 'dev' branch.

If this is your first time making a PR or aren't sure of the standard practice of making a PR, here are some articles to get you started.

Features

  • Based on Python for botting on any operating system - Windows, macOS and Linux
  • Multi-bot supported
  • Able to edit bot if certain level has reached
  • Allow custom hash service provider, if any
  • GPS Location configuration
  • Search & spin Pokestops / Gyms
  • Diverse options for humanlike behavior from movement to overall game play
  • Ability to add multiple coordinates to select between your favorite botting locations
  • Support self defined path / route
  • Advanced catch, evolve and transfer confuration using our PokemonOptimizer settings
  • Determine which pokeball to use
  • Rules to determine the use of Razz and Pinap Berries
  • Exchange, evolve and catch Pokemon base on pre-configured rules
  • Transfer Pokemon in bulk
  • Auto switch mode (Inventory Checks - switches between catch/farming items)
  • Limit the step to farm specific area for pokestops
  • Limit Spin Pokestops/Catch Pokemons per day
  • IV Functionality filter
  • Mass rename of Pokemon with comprehenive rules
  • Adjust delay between Pokemon capture & Transfer as per configuration
  • Telegram integration - reporting of bot's events
  • Snipe Pokemon within a radius of 30Km, either through telegram command or local map (Example Rocket Map)
  • Issue command through telegream - Activate Lucky egg / Incense, Snipping
  • Support dropping of Lure Module
  • Incubate eggs & Buddy walk
  • Bot is able to identify pokemon in their family
  • Set family ID as VIP and prioritize bot to catch it!
  • Transfer red slashed pokemons
  • Set shiny pokemons as VIP
  • Deploy a pokemon in Gym if there are slots available
  • Docker support
  • Auto heal Pokemons
  • Displaying of Hash expiration date and RPM information

Credits

Contributors

  • eggins [first pull request]
  • crack00r
  • ethervoid
  • Bashin
  • tstumm
  • AdaptCharm
  • Reaver01
  • rarshonsky
  • earthchie
  • haykuro
  • 05-032
  • sinistance
  • CapCap
  • YvesHenri
  • mzupan
  • gnekic(GeXx)
  • Shoh
  • JSchwerberg
  • luizperes
  • brantje
  • VirtualSatai
  • dmateusp
  • jtdroste
  • msoedov
  • Grace
  • Calcyfer
  • asaf400
  • guyz
  • DavidK1m
  • budi-khoirudin
  • riberod07
  • th3w4y
  • Leaklessgfy
  • steffwiz
  • pulgalipe
  • BartKoppelmans
  • phil9l
  • VictorChen
  • AlvaroGzP
  • fierysolid
  • surfaace
  • surceis
  • SpaceWhale
  • klingan
  • reddivision
  • DayBr3ak
  • kbinani
  • mhdasding
  • MFizz
  • NamPNQ
  • z4ppy.bbc
  • matheussampaio
  • Abraxas000
  • lucasfevi
  • pokepal
  • Moonlight-Angel
  • mjmadsen
  • nikofil
  • bigkraig
  • nikhil-pandey
  • thebigjc
  • JaapMoolenaar
  • eevee-github
  • g0vanish
  • cmezh
  • Nivong
  • kestel
  • simonsmh
  • joaodragao
  • extink
  • Quantra
  • pmquan
  • net8q
  • SyncX
  • umbreon222
  • DeXtroTip
  • rawgni
  • Breeze Ro
  • bruno-kenji
  • Gobberwart
  • javajohnHub
  • kolinkorr839
  • lepeli
  • davidakachaos
  • MerlionRock
  • walaoaaa1234
  • pogarek
  • goedzo
  • solderzzc aka BIG BOSS
  • nbq aka Holoshed

Disclaimer

©2016 Niantic, Inc. ©2016 Pokémon. ©1995–2016 Nintendo / Creatures Inc. / GAME FREAK inc. © 2016 Pokémon/Nintendo Pokémon and Pokémon character names are trademarks of Nintendo. The Google Maps Pin is a trademark of Google Inc. and the trade dress in the product design is a trademark of Google Inc. under license to The Pokémon Company. Other trademarks are the property of their respective owners. Privacy Policy

PokemonGo-Bot is intended for academic purposes and should not be used to play the game PokemonGo as it violates the TOS and is unfair to the community. Use the bot at your own risk.

PokemonGoF does not support the use of 3rd party apps or apps that violate the TOS.

Analytics

Comments
  • Perm Ban Test Results

    Perm Ban Test Results

    Greetings,

    Was a casualty of the first wave of perma-bans. Most of the bot activity was limited to activity in and around the neighborhood where I live and work.

    After the ban I created a test account via PTC. I wanted to understand what would trigger a ban. I decided that until I reached level 20 I would keep no Pokemon nor visit a Gym. I would basically walk, spin and transfer whatever I encountered. The longest session would be no more than 1 hour long. I would keep the activity to two locations; home and work. No teleports, just the two locations I happened to be physically. The goal was to keep a low profile and emulate player behaviors.

    The new account was setup on 8/12. Over the next four days the bot would run in roughly hour long blocks, 2-4 times a day. Typically in the AM, then lunch, then dinner. Two of the days I did a late night session around midnight. Never encountered any bans with this approach. The last session I ran was during lunch today. I was level 17 at this point. However, this session I forgot to kill it after an hours. It ended up running for about 2 hours. Since Im in a city with dense pokestops and pokemon a ton were encountered.

    I went to run the next test. Launched it again and got the "failed to get game data" message. The bot reported "Probably permabanned, Game Over ! Play again at https://club.pokemon.com/us/pokemon-trainer-club/sign-up/"

    Used a non-test account and was able to login without issue. This told me it was not a server issue.

    There was clearly something that triggered this ban.

    Can it be that I reached level 17 too quickly? Could be that the frequency of play was too often? 4-5 hours a day? I was not teleporting and had no inventory of high level pokemon. Could it be the rate at which they were turned in for candy?

    Including my config for reference. Going to try another test account and adjust the rate of play. Any other suggestions I'm happy to test out.

    {
        "auth_service": "",
        "username": "",
        "password": "",
        "location": "",
        "gmapkey": "",
          "tasks": [
            {
              "type": "HandleSoftBan"
            },
            {
              "type": "SleepSchedule",
              "config": {
                "enabled": true,
                "time": "22:54",
                "duration":"7:46",
                "time_random_offset": "00:24",
                "duration_random_offset": "00:43"
              }
            },
            {
              "type": "CollectLevelUpReward"
            },
            {
              "type": "IncubateEggs",
              "config": {
                "longer_eggs_first": true
              }
            },
            {
              "type": "UpdateLiveStats",
              "config": {
                "enabled": true,
                "min_interval": 10,
                "stats": ["uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited"],
                "terminal_log": true,
                "terminal_title": true
              }
            },
            {
              "type": "TransferPokemon"
            },
            {
              "type": "NicknamePokemon",
              "config": {
                "enabled": true,
                "nickname_template": "{iv_pct}_{iv_ads}"
              }
            },
            {
              "type": "EvolvePokemon",
              "config": {
                  "evolve_all": "none",
                  "first_evolve_by": "cp",
                  "evolve_above_cp": 500,
                  "evolve_above_iv": 0.8,
                  "logic": "or",
                  "evolve_speed": 20,
                  "use_lucky_egg": false
              }
            },
            {
              "type": "RecycleItems",
              "config": {
                "min_empty_space": 15,
                "item_filter": {
                  "Pokeball":       { "keep" : 25 },
              "Greatball":      { "keep" : 125 },
                  "Potion":         { "keep" : 10 },
                  "Super Potion":   { "keep" : 20 },
                  "Hyper Potion":   { "keep" : 30 },
                  "Revive":         { "keep" : 15 },
                  "Razz Berry":     { "keep" : 45 }
                }
              }
            },
            {
              "type": "CatchVisiblePokemon"
            },
            {
              "type": "CatchLuredPokemon"
            },
            {
              "type": "SpinFort"
            },
            {
              "type": "MoveToFort",
              "config": {
                  "lure_attraction": true,
                  "lure_max_distance": 2000
              }
            },
            {
              "type": "FollowSpiral",
              "config": {
                "diameter": 4,
                "step_size": 70
              }
            }
          ],
          "map_object_cache_time": 5,
          "forts": {
            "avoid_circles": true,
            "max_circle_size": 50,
            "cache_recent_forts": true
          },
          "websocket_server": false,
          "walk": 4.16,
          "action_wait_min": 1,
          "action_wait_max": 4,
          "debug": false,
          "test": false,
          "health_record": true,
          "location_cache": false,
          "distance_unit": "km",
          "reconnecting_timeout": 15,
          "catch_randomize_reticle_factor": 0.5,
          "catch_randomize_spin_factor": 0.5,
          "min_ultraball_to_keep": 10,
          "logging_color": true,
          "catch": {
            "any": {"catch_above_cp": 0, "catch_above_iv": 0, "logic": "or"},
            "// Example of always catching Rattata:": {},
            "// Rattata": { "always_catch" : true }
          },
          "catch_throw_parameters": {
            "excellent_rate": 0.1,
            "great_rate": 0.5,
            "nice_rate": 0.3,
            "normal_rate": 0.1,
            "spin_success_rate" : 0.5
          },
          "release": {
            "any": {"release_below_cp": 1000, "release_below_iv": 0.9, "logic": "and"},
            "// Example of always releasing Rattata:": {},
            "// any": {"always_release": true},
            "// Example of keeping 3 stronger (based on CP) Pidgey:": {},
            "// Pidgey": {"keep_best_cp": 3},
            "// Example of keeping 2 stronger (based on IV) Zubat:": {},
            "// Zubat": {"keep_best_iv": 2},
            "// Also, it is working with any": {},
            "// any": {"keep_best_iv": 3},
            "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": {},
            "// Zubat": {"keep_best_cp": 2, "keep_best_iv": 3}
          },
          "vips" : {
               "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate!": {},
              "any": {"catch_above_cp": 1200, "catch_above_iv": 0.9, "logic": "or" },
              "Lapras": {},
              "Moltres": {},
              "Zapdos": {},
              "Articuno": {},
    
              "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": {},
              "Mewtwo": {},
              "Dragonite": {},
              "Snorlax": {},
              "// Mew evolves to Mewtwo": {},
              "Mew": {},
              "Arcanine": {},
              "Vaporeon": {},
              "Gyarados": {},
              "Exeggutor": {},
              "Muk": {},
              "Weezing": {},
              "Flareon": {}
    
          }
      }
    
    Enhancement Help Wanted Help to Test 
    opened by talobear 236
  • Niantic Server responses changed. Can't catch pokemon or see pokestops

    Niantic Server responses changed. Can't catch pokemon or see pokestops

    EDIT from TheSavior:

    It looks like the request structure has changed. Every bot, map, and 3rd party app is currently working to update.

    Niantic changed their API. People are working on a fix but there is no ETA yet. If you want to know what changed read this: https://www.reddit.com/r/pokemongodev/comments/4w1cvr/pokemongo_current_api_status/

    Original Post:

    [15:04:18] PokemonGO Bot v1.0 [15:04:18] Configuration initialized [15:04:18] [x] Coordinates found in passed in location, not geocoding. [15:04:18] [15:04:18] Location Found: 40.776426, -73.969657 [15:04:18] GeoPosition: (40.776426, -73.969657, 0) [15:04:18] [15:04:18] [x] Parsing cached location... [15:04:18] [15:04:18] [x] Last location flag used. Overriding passed in location [15:04:18] [x] Last in-game location was set as: (40.7761427978432, -73.9701562 916473, 0) [15:04:18] [15:04:18] Attempting login to Pokemon Go. 2016-08-03 15:04:20,665 [pgoapi.pgoapi] [ERROR] Login failed - unexpected serve response! [15:04:20] [X] Login Error, server busy [15:04:20] [X] Waiting 10 seconds to try again 2016-08-03 15:04:32,917 [pgoapi.pgoapi] [ERROR] Login failed - unexpected serve response! [15:04:32] [X] Login Error, server busy [15:04:32] [X] Waiting 10 seconds to try again [15:04:37] Exiting PokemonGo Bot [15:04:42] Server seems to be busy or offline - try again - 4/15 [15:04:43] Server seems to be busy or offline - try again - 5/15 [15:04:44] Server seems to be busy or offline - try again - 6/15 [15:04:45] Server seems to be busy or offline - try again - 7/15 [15:04:47] Server seems to be busy or offline - try again - 8/15 [15:04:48] Server seems to be busy or offline - try again - 9/15

    This happens to all my accounts including the ones I only use with the bot. Login from phone is fine, however.

    opened by TianCNCA 198
  • PokemonGo-Map Synergy

    PokemonGo-Map Synergy

    Description: This worker will fetch current pokemon spawns from /raw_data of an PokemonGo-Map instance. It will also update the location of PokemonGo-Map when the bot is moving away. There are two modes available:

    distance: will move to the nearest pokemon priority: will move to the pokemon with the highest priority assigned (tie breaking by distance)

    other configs: address address of the webserver of PokemonGo-Map prioritize vips will prioritize vips in distance and priority mode above normal pokemon min_time: minimum time the pokemon has to be available before despawn max_distance: maximum distance the pokemon is allowed to be when walking, ignored when sniping snipe if enabled will teleport to target pokemon, encounter it, teleport back then catch it if disabled will walk update_map disable/enable if the map location should be automatically updated catch a dictionary of pokemon to catch with an assigned priority (higher => better) vip pokemon are automatically catched without an entry here

    Second Review Required Waiting on Changes Help to Test 
    opened by mhdasding 152
  • **META** Server busy or offline issues

    **META** Server busy or offline issues

    Edited by moderator:

    Please keep all discussions about Server busy or offline in this issue only, do not create new issues or they will be closed without warning.

    At this stage it's unconfirmed if there is server issues or hard bans being placed on accounts

    Other current META issues:

    #3682 - META Server busy or offline issues #3308 - META Stuck between two forts / Moving to 2 forts at the same time / Constant Loop #3700 - META Soft bans - Try again spins / Pokemon vanishing #3746 - META Banwaves - Permanent Bans

    opened by fe-ax 115
  • Improve step_walker

    Improve step_walker

    Improve step_walker

    • Can instanciate walkers one time and call step() multiple times on the same walker
    • Speed randomized at each step
    • Speed can be overridden in the step parameter to pass 0 to anything
    Enhancement New Functionality Approved 
    opened by julienlavergne 111
  • follow_* and walkers set_position through StepWalker

    follow_* and walkers set_position through StepWalker

    I do not feel this is ready to merge. But I want to get testers.

    Goals it to drive all set position api calls through StepWalker. That includes centralizing noise and humanizing to position to one location. Outputting position updates from one location.

    Repeat, I'm not done. Do not merge.

    Second Review Required Help to Test 
    opened by mjmadsen 98
  • Some XP efficiency improvements

    Some XP efficiency improvements

    All this code was based on PR #2491 (thx a lot, @matheussampaio).

    Run tasks in a time based way

    BaseTask now adds two helpers to every single task: _update_last_ran and _time_to_run. Both can be used in any task to ensure will only run from time to time and not in every single tick. Example:

    def work(self):
        if not self._time_to_run():
            return False
        self._update_last_ran()
    

    Then if the task config someone like this can be used to customise the time interval (in seconds):

    {
        "type": "TransferPokemon",
        "config": {
            "run_interval": 60 
         }
    }
    

    Added option in SpinFort and MoveToFort to run even without inventory space (because RecycleItem may be run only after more time)

    {
        "type": "SpinFort",
        "config": {
            "ignore_item_count": true
        }
    },
    

    Exp result:

    I saw a bigger than 50% experience per hour increase in my bot. Everyone should see something similar unless in a bad place to bot or with poor configuration.

    2016-08-07 19:59:34,083 [ cli] [INFO] Total XP Earned: 13540 Average: 66236.29/h

    Second Review Required Help to Test Approved 
    opened by douglascamata 96
  • **META** Soft bans - Try again spins / Pokemon vanishing

    **META** Soft bans - Try again spins / Pokemon vanishing

    Edited by moderator:

    Please keep all discussions about being Try again spins / Pokemon vanishing in this issue only, do not create new issues or they will be closed without warning.

    At this stage it looks like softbans are occurring for some users (try again spins & Pokemon vanishing) while others are experiencing hard bans (being unable to log in - Server busy or offline)

    Other current META issues:

    #3682 - META Server busy or offline issues #3308 - META Stuck between two forts / Moving to 2 forts at the same time / Constant Loop #3700 - META Soft bans - Try again spins / Pokemon vanishing #3746 - META Banwaves - Permanent Bans

    opened by Coburnss 88
  • TO DEVS

    TO DEVS

    Hi. As u know, a new API model wil be soon ready. That means while pogodevs RE are still try crack the last API, pokefarmer RE's has done, and they'll rent hash service to others by supscription. My question is if this proyect will adapt to this new service, or not.

    After few days testing pokefarmer desktop, only can say this proyect still is best ever bot made. More configurable, thousands of options and very easy to use.

    Thx to all

    opened by Jcolomar 69
  • Improve humanize walking variance

    Improve humanize walking variance

    • Account for bearing when adding in walking "sway"
    • We now only sway "left" and "right" as we head towards our destination
    Enhancement Second Review Required Help to Test Approved 
    opened by mjmadsen 66
  • bot crashed

    bot crashed

    Actual Behavior

    Traceback (most recent call last): File "pokecli.py", line 502, in main() File "pokecli.py", line 133, in main raise e IndexError: list index out of range

    Steps to Reproduce

    Other Information

    OS: windows 7 Git Commit: (run 'git log -n 1 --pretty=format:"%H"' and paste it here) Python Version: (run 'python -V' and paste it here)

    opened by skywalker878 62
  • Install Failure - Docker - ERROR: unable to select packages:

    Install Failure - Docker - ERROR: unable to select packages:

    Expected Behavior

    Expected Docker Image to be built

    Actual Behavior

    docker build -t pokemongo-bot . [+] Building 3.9s (9/21)
    => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 37B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 35B 0.0s => [internal] load metadata for docker.io/library/alpine:latest 1.1s => [auth] library/alpine:pull token for registry-1.docker.io 0.0s => CACHED https://api.github.com/repos/PokemonGoF/PokemonGo-Bot/commits/master 0.0s => [ 1/15] FROM docker.io/library/alpine@sha256:686d8c9dfa6f3ccfc8230bc3178d23f84eeaf7e457f36f271ab1acc53015037c 0.0s => CACHED https://raw.githubusercontent.com/PokemonGoF/PokemonGo-Bot/master/requirements.txt 0.0s => CACHED [ 2/15] WORKDIR /usr/src/app 0.0s => ERROR [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 2.7s

    [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 rm -f:
    #7 0.206 fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/main/aarch64/APKINDEX.tar.gz #7 1.633 fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/community/aarch64/APKINDEX.tar.gz #7 2.696 ERROR: unable to select packages: #7 2.710 python (no such package): #7 2.710 required by: world[python]


    executor failed running [/bin/sh -c apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 rm -f]: exit code: 1

    Your FULL config.json (remove your username, password, gmapkey and any other private info)

    { "websocket_server": false, "heartbeat_threshold": 10, "enable_social": false, "killswitch": true, "check_niantic_api": false, "solve_captcha": false, "bypass_warning": false, "live_config_update": { "enabled": false, "tasks_only": false }, "tasks": [ { "type": "TelegramTask", "config": { "enabled": false, "master": null, "password": null, "// old syntax, still supported: alert_catch": [ "all" ], "// new syntax:": { }, "alert_catch": { "all": { "operator": "and", "cp": 1300, "iv": 0.95 }, "Snorlax": { "operator": "or", "cp": 900, "iv": 0.9 } } } }, { "type": "DiscordTask", "config": { "enabled": false, "master": null, "// old syntax, still supported: alert_catch": [ "all" ], "// new syntax:": { }, "alert_catch": { "all": { "operator": "and", "cp": 1300, "iv": 0.95 }, "Snorlax": { "operator": "or", "cp": 900, "iv": 0.9 } } } }, { "//NOTE: This task MUST be placed on the top of task list": { }, "type": "RandomAlivePause", "config": { "enabled": false, "min_duration": "00:00:10", "max_duration": "00:10:00", "min_interval": "00:05:00", "max_interval": "01:30:00" } }, { "type": "HandleSoftBan" }, { "type": "RandomPause", "config": { "enabled": false, "min_duration": "00:00:10", "max_duration": "00:10:00", "min_interval": "00:10:00", "max_interval": "02:00:00" } }, { "type": "CompleteTutorial", "config": { "enabled": false, "// set a name": "", "nickname": "", "// 0 = No Team, 1 = Blue, 2 = Red, 3 = Yellow": "", "team": 0 } }, { "type": "CollectLevelUpReward", "config": { "collect_reward": true, "level_limit": -1 } }, { "type": "BuddyPokemon", "config": { "enabled": true, "buddy_list": "dratini, magikarp", "best_in_family": true, "// candy_limit = 0 means no limit, so it will never change current buddy": { }, "candy_limit": 0, "candy_limit_absolute": 0, "// force_first_change = true will always change buddy at start removing current one": { }, "force_first_change": false, "buddy_change_wait_min": 3, "buddy_change_wait_max": 5, "min_interval": 120 } }, { "type": "IncubateEggs", "config": { "enabled": true, "infinite_longer_eggs_first": false, "infinite_random_eggs": false, "breakable_longer_eggs_first": true, "min_interval": 120, "infinite": [ 2, 5, 10 ], "breakable": [ 2, 5, 10 ] } }, { "type": "UpdateLiveStats", "config": { "enabled": false, "min_interval": 10, "stats": [ "username", "uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited", "total_stardust" ], "terminal_log": true, "terminal_title": true } }, { "type": "UpdateLiveInventory", "config": { "enabled": false, "min_interval": 120, "show_all_multiple_lines": false, "items": [ "pokemon_bag", "space_info", "pokeballs", "greatballs", "ultraballs", "razzberries", "luckyegg" ] } }, { "type": "UpdateHashStats", "config": { "enabled": true, "min_interval": 60, "stats": [ "period", "remaining", "maximum", "expiration" ] } }, { "type": "ShowBestPokemon", "config": { "enabled": true, "min_interval": 60, "amount": 5, "order_by": "cp", "info_to_show": [ "cp", "ivcp", "dps", "hp" ] } }, { "type": "TransferPokemon", "config": { "enabled": true, "min_free_slot": 5, "transfer_wait_min": 3, "transfer_wait_max": 5 } }, { "type": "NicknamePokemon", "config": { "enabled": false, "nickname_above_iv": 0.9, "nickname_template": "{iv_pct}-{iv_ads}", "nickname_wait_min": 3, "nickname_wait_max": 5 } }, { "type": "EvolvePokemon", "config": { "enabled": false, "log_interval": 120, "// evolve only pidgey and drowzee": "", "// evolve_list": [ "pidgey, drowzee", "all" ], "// donot_evolve_list": [ "none", "pidgey, drowzee" ], "// evolve all but pidgey and drowzee": "", "evolve_list": "all", "donot_evolve_list": "none", "first_evolve_by": "cp", "evolve_above_cp": 500, "evolve_above_iv": 0.8, "logic": "or", "min_evolve_speed": 25, "max_evolve_speed": 30, "min_pokemon_to_be_evolved": 1, "use_lucky_egg": false } }, { "type": "UseIncense", "config": { "use_incense": false, "use_order": [ "ordinary" ] } }, { "type": "RecycleItems", "config": { "enabled": true, "min_empty_space": 15, "max_balls_keep": 150, "max_potions_keep": 50, "max_berries_keep": 70, "max_revives_keep": 70, "item_filter": { "Pokeball": { "keep": 100 }, "Potion": { "keep": 10 }, "Super Potion": { "keep": 20 }, "Hyper Potion": { "keep": 30 }, "Revive": { "keep": 30 }, "Razz Berry": { "keep": 100 } }, "recycle_wait_min": 3, "recycle_wait_max": 5, "recycle_force": true, "recycle_force_min": "00:01:00", "recycle_force_max": "00:05:00" } }, { "type": "CatchLimiter", "config": { "enabled": false, "min_balls": 20, "duration": 15 } }, { "type": "Sniper", "config": { "enabled": false, "mode": "social", "bullets": 1, "homing_shots": true, "cooldown_enabled": false, "loiter_after_snipe": false, "special_iv": 100, "order": [ "missing", "vip", "priority" ], "teleport_back_to_last_location": false, "sources": [ { "enabled": false, "url": "http://localhost:5000/raw_data", "timeout": 3, "key": "pokemons", "mappings": { "id": { "param": "pokemon_id" }, "name": { "param": "pokemon_name" }, "latitude": { "param": "latitude" }, "longitude": { "param": "longitude" }, "expiration": { "param": "disappear_time", "format": "milliseconds" } } }, { "enabled": false, "url": "https://pokewatchers.com/grab/", "timeout": 10, "mappings": { "iv": { "param": "iv" }, "id": { "param": "pid" }, "name": { "param": "pokemon" }, "latitude": { "param": "cords" }, "longitude": { "param": "cords" }, "expiration": { "param": "timeend", "format": "seconds" } } }, { "enabled": false, "url": "http://pokesnipers.com/api/v1/pokemon.json", "timeout": 10, "key": "results", "mappings": { "iv": { "param": "iv" }, "name": { "param": "name" }, "latitude": { "param": "coords" }, "longitude": { "param": "coords" }, "expiration": { "param": "until", "format": "utc" } } } ], "catch": { "Snorlax": 1000, "Dragonite": 1000, "Growlithe": 600, "Clefairy": 500, "Kabuto": 500, "Dratini": 500, "Dragonair": 500, "Mr. Mime": 500, "Magmar": 500, "Electabuzz": 500, "Tangela": 500, "Tauros": 500, "Primeape": 500, "Chansey": 500, "Pidgey": 100, "Caterpie": 100, "Weedle": 100 } } }, { "type": "CatchPokemon", "config": { "enabled": true, "catch_visible_pokemon": true, "catch_lured_pokemon": true, "catch_incensed_pokemon": true, "min_ultraball_to_keep": 5, "berry_threshold": 0.35, "golden_razz_threshold": 0.2, "golden_razz_to_keep": 30, "use_golden_razz_on_vip_only": true, "use_pinap_on_vip": false, "pinap_on_level_below": 0, "pinap_operator": "or", "pinap_ignore_threshold": false, "smart_pinap_enabled": true, "smart_pinap_threshold": 0.85, "smart_pinap_to_keep": 3, "vip_berry_threshold": 0.9, "treat_unseen_as_vip": true, "daily_catch_limit": 500, "exit_on_limit_reached": false, "vanish_settings": { "consecutive_vanish_limit": 10, "rest_duration_min": "02:00:00", "rest_duration_max": "04:00:00" }, "catch_throw_parameters": { "excellent_rate": 0.1, "great_rate": 0.5, "nice_rate": 0.3, "normal_rate": 0.1, "spin_success_rate": 0.6, "hit_rate": 0.75 }, "catch_simulation": { "flee_count": 3, "flee_duration": 2, "catch_wait_min": 3, "catch_wait_max": 6, "berry_wait_min": 3, "berry_wait_max": 5, "changeball_wait_min": 3, "changeball_wait_max": 5, "newtodex_wait_min": 20, "newtodex_wait_max": 30 } } }, { "type": "SpinFort", "config": { "enabled": true, "spin_wait_min": 3, "spin_wait_max": 5, "daily_spin_limit": 1900, "use_lure": false } }, { "type": "UpdateWebInventory", "config": { "enabled": true } }, { "type": "GymPokemon", "config": { "enabled": false, "order_by": "cp", "min_interval": 360, "min_recheck": 30, "max_recheck": 120, "chain_fill_gyms": true, "ignore_max_cp_pokemon": [ "Blissey" ], "never_place": [ "Machamp" ], "leave_at_least_spots": 1, "take_at_most": 10, "pick_random_pokemon": true, "can_be_disabled_by_catch_limter": false } }, { "type": "MoveToFort", "config": { "enabled": true, "lure_attraction": true, "lure_max_distance": 2000, "walker": "StepWalker", "log_interval": 5 } }, { "type": "FollowSpiral", "config": { "enabled": true, "diameter": 4, "step_size": 70 } } ], "map_object_cache_time": 5, "forts": { "avoid_circles": true, "max_circle_size": 50, "cache_recent_forts": true }, "pokemon_bag": { "// if 'show_at_start' is true, it will log all the pokemons in the bag (not eggs) at bot start": { }, "show_at_start": true, "// if 'show_count' is true, it will show the amount of each pokemon (minimum 1)": { }, "show_count": false, "// if 'show_candies' is true, it will show the amount of candies for each pokemon": { }, "show_candies": false, "// 'pokemon_info' parameter define which info to show for each pokemon": { }, "// the available options are": { }, "// ['cp', 'iv_ads', 'iv_pct', 'ivcp', 'ncp', 'level', 'hp', 'moveset', 'dps']": { }, "pokemon_info": [ "cp", "iv_pct" ] }, "walk_max": 4.16, "walk_min": 2.16, "alt_min": 500, "alt_max": 1000, "sleep_schedule": { "enabled": true, "enable_reminder": false, "reminder_interval": 600, "entries": [ { "enabled": true, "time": "12:00", "duration": "5:30", "time_random_offset": "00:30", "duration_random_offset": "00:30", "wake_up_at_location": "" }, { "enabled": true, "time": "17:45", "duration": "3:00", "time_random_offset": "01:00", "duration_random_offset": "00:30", "wake_up_at_location": "" } ] }, "gps_default_altitude": 8, "replicate_gps_xy_noise": false, "replicate_gps_z_noise": false, "gps_xy_noise_range": 0.000125, "gps_z_noise_range": 12.5, "debug": false, "test": false, "walker_limit_output": false, "health_record": true, "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, "logging": { "color": true, "show_datetime": true, "show_process_name": true, "show_log_level": true, "show_thread_name": false }, "catch": { "any": { "candy_threshold": 400, "catch_above_cp": 0, "catch_above_iv": 0, "logic": "or" }, "// Example of always catching Rattata:": { }, "// Rattata": { "always_catch": true }, "// Example of catching only Diglett and Horsea needed for Bubblestrat; you might want to also configure sniping (MoveToMap - helps you get hold of neede pokemons faster) and disable SpinFort (or you will advance past level 2 which will make it impossible to catch level-1 pokemons)": { }, "Diglett": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": [ "Scratch", "Mud Slap" ] }, "Horsea": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": [ "Bubble" ] }, "// Example of catching Vaporeon only with Water Gun and Hydro Pump": { }, "Vaporeon": { "catch_above_iv": 0.99, "charged_attack": [ "Hydro Pump" ], "fast_attack": [ "Water Gun" ] } }, "release": { "any": { "release_below_cp": 0, "release_below_iv": 0, "release_below_ivcp": 0, "logic": "or" }, "// Example of always releasing Rattata:": { }, "// Rattata": { "always_release": true }, "// Example of keeping 3 stronger (based on CP) Pidgey:": { }, "// Pidgey": { "keep_best_cp": 3 }, "// Example of keeping 2 best (based on IV) Zubat:": { }, "// Zubat": [ { "keep_best_iv": 2 }, { "keep_best_cp": 2, "keep_best_iv": 3 }, { "keep_best_custom": "iv, cp, hp_max", "amount": 2 } ], "// Keep no more than 3 best IV pokemon for every pokemon type": { }, "// any": [ { "keep_best_iv": 3 }, { "keep_best_ivcp": 3 } ], "// Keep no more than 3 best IVCP pokemon for every pokemon type": { }, "// Discard all pokemon in bag except 100 pokemon with best CP": { }, "// all": { "keep_best_cp": 100 }, "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": { }, "// Example of custom order of static criterion": { } }, "vips": { "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate": { }, "any": { "catch_above_cp": 1200, "catch_above_iv": 0.9, "logic": "or" }, "Lapras": { }, "Moltres": { }, "Zapdos": { }, "Articuno": { }, "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": { }, "Mewtwo": { }, "Dragonite": { }, "Snorlax": { }, "// Mew evolves to Mewtwo": { }, "Mew": { }, "Arcanine": { }, "Vaporeon": { }, "Gyarados": { }, "Exeggutor": { }, "Muk": { }, "Weezing": { }, "Flareon": { } }, "websocket": { "start_embedded_server": true, "server_url": "127.0.0.1:4000" } }

    Output when issue occurred

    => ERROR [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 2.7s

    Steps to Reproduce

    Ran docker build -t pokemongo-bot .

    Other Information

    OS: MacOS also occurs in Linux Branch:

    Git Commit: 5e80f20760f32478a84a8f0ced7ca24cdf41fe03 Python Version: Python 2.7.18 Any other relevant files/configs (eg: path files)

    opened by a-bianucci 1
  • Bump numpy from 1.11.0 to 1.22.0

    Bump numpy from 1.11.0 to 1.22.0

    Bumps numpy from 1.11.0 to 1.22.0.

    Release notes

    Sourced from numpy's releases.

    v1.22.0

    NumPy 1.22.0 Release Notes

    NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

    • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
    • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
    • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
    • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
    • A new configurable allocator for use by downstream projects.

    These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

    The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

    Expired deprecations

    Deprecated numeric style dtype strings have been removed

    Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

    (gh-19539)

    Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

    numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

    (gh-19615)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Archiving repository to avoid confusion

    Archiving repository to avoid confusion

    Since this project isn't actively maintained anymore etc. how about archiving the bot to avoid confusion from others who still think this repo keeps being updated?

    opened by NobodyFAH 0
  • Bump urllib3 from 1.18 to 1.26.5

    Bump urllib3 from 1.18 to 1.26.5

    Bumps urllib3 from 1.18 to 1.26.5.

    Release notes

    Sourced from urllib3's releases.

    1.26.5

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.4

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.3

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme (Pull #2107)

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.2

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning should opt-in explicitly by setting ssl_version=ssl.PROTOCOL_TLSv1_1 (Pull #2002) Starting in urllib3 v2.0: Connections that receive a DeprecationWarning will fail

    • Deprecated Retry options Retry.DEFAULT_METHOD_WHITELIST, Retry.DEFAULT_REDIRECT_HEADERS_BLACKLIST and Retry(method_whitelist=...) in favor of Retry.DEFAULT_ALLOWED_METHODS, Retry.DEFAULT_REMOVE_HEADERS_ON_REDIRECT, and Retry(allowed_methods=...) (Pull #2000) Starting in urllib3 v2.0: Deprecated options will be removed

    ... (truncated)

    Changelog

    Sourced from urllib3's changelog.

    1.26.5 (2021-05-26)

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    1.26.4 (2021-03-15)

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    1.26.3 (2021-01-26)

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme. (Pull #2107)

    1.26.2 (2020-11-12)

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1 (2020-11-11)

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0 (2020-11-10)

    • NOTE: urllib3 v2.0 will drop support for Python 2. Read more in the v2.0 Roadmap <https://urllib3.readthedocs.io/en/latest/v2-roadmap.html>_.

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning

    ... (truncated)

    Commits
    • d161647 Release 1.26.5
    • 2d4a3fe Improve performance of sub-authority splitting in URL
    • 2698537 Update vendored six to 1.16.0
    • 07bed79 Fix deprecation warnings for Python 3.10 ssl module
    • d725a9b Add Python 3.10 to GitHub Actions
    • 339ad34 Use pytest==6.2.4 on Python 3.10+
    • f271c9c Apply latest Black formatting
    • 1884878 [1.26] Properly proxy EOF on the SSLTransport test suite
    • a891304 Release 1.26.4
    • 8d65ea1 Merge pull request from GHSA-5phf-pp7p-vc2r
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(0.67.2)
Owner
null
pokemon-colorscripts compatible for mac

Pokemon colorscripts some scripts to print out images of pokemons to terminal. Inspired by DT's colorscripts compilation Description Prints out colore

null 43 Jan 6, 2023
Sends notifications when Pokemon Center products are in stock

Sends notifications when Pokemon Center products are in stock! If you use this for scalping, I will break your kneecaps

null 2 Jan 20, 2022
WallAlley.bot is an open source and free to use financial discord bot originaly build for WallAlley server's community

WallAlley.bot About WallAlley.bot is an open source and free to use financial discord bot originaly build for WallAlley server's community. All data a

Mohammad KHADDAN 1 Jan 22, 2022
Local community telegram bot

Бот на районе Телеграм-бот для поиска адресов и заведений в вашем районе города или в небольшом городке. Требует недели прогулок по району д

Ilya Zverev 32 Jan 19, 2022
Robocord is a bot created for the Pycord community.

Robocord is a bot created for the community of the Pycord Server. Just a bot created for Pycord Server. You can start pull requests, I will check it and if its good I will add it to the bot. ??

Bruce 7 Jun 26, 2022
Community-based extensions for the python-telegram-bot library.

Community-based extensions for the python-telegram-bot library. Table of contents Introduction Installing Getting help Contributing License Introducti

null 74 Dec 24, 2022
A community Billy vs SNAKEMAN bot

BvS Bot A discord bot built for the Billy vs SNAKEMAN community! Dependencies An installation of Python 3.9.x with ssl compiled. The following pip pac

Neopolitan 2 May 10, 2022
A discord bot made by the community (uses python)

discord community bot context: this is a discord bot made by the community by community i mean people adding commands to the bot or changing the bot b

TR ASH 0 Oct 11, 2022
The Python version of the official Discord bot for the Astura Studios Discord community server.

About Astura (Python version) is the official Discord bot for the Astura Studios Discord community server developed and maintained by Ascendus and the

Ascendus 1 Apr 21, 2022
A community made discord bot coded in Python and running on AWS.

Pogbot Project Open Group Discord This is an open source community ran project. Join the discord for more information on how to participate. Coded in

Project Open Group 2 Jul 27, 2022
A heraldry-related bot, designed for the Heraldry Community.

Heraldtron A heraldry-related bot, designed for the Heraldry Community. Requirements Python 3.9+ discord.py aiohttp (comes installed with discord.py)

null 1 Mar 31, 2022
🤖 A discord bot for Dota2 community

BOTA BOT-A is a free Discord Dota 2 bot which provides comprehensive Information of every Dota 2 characters and exciting features for the community. P

Bendang 23 Jun 29, 2022
Simple Discord bot for the Collectez community.

Harvey - Discord Bot Simple Discord bot for the Collectez community. Features Ping the current status of Collectez's Teztools node. Steal emojis from

delintkhaum 1 Dec 26, 2021
Discord bot developed by Delhi University Student Community!

DUSC-Bot Discord bot developed by Delhi University Student Community! Libraries Used Pycord - Documentation Features Can purge messages in bulk Drop-D

professor 1 Jan 29, 2022
The Official Twilio SendGrid Led, Community Driven Python API Library

The default branch name for this repository has been changed to main as of 07/27/2020. This library allows you to quickly and easily use the SendGrid

Twilio SendGrid 1.4k Jan 7, 2023
A Python library for miHoYo bbs and HoYoLAB Community

A Python library for miHoYo bbs and HoYoLAB Community. genshin 原神签到小助手

null 384 Jan 5, 2023
Python client for numerbay.ai - the Numerai community marketplace

NumerBay Python API Programmatic interaction with numerbay.ai - the Numerai community marketplace. If you encounter a problem or have suggestions, fee

Numerai Council of Elders 5 Nov 30, 2022
Automate TikTok follower bot, like bot, share bot, view bot and more using selenium

Zefoy TikTok Automator Automate TikTok follower bot, like bot, share bot, view bot and more using selenium. Click here to report bugs. Usage Download

null 555 Dec 30, 2022
(@Tablada32BOT is my bot in twitter) This is a simple bot, its main and only function is to reply to tweets where they mention their bot with their @

Remember If you are going to host your twitter bot on a page where they can read your code, I recommend that you create an .env file and put your twit

null 3 Jun 4, 2021