Skip to main content

A program that makes you unbeatable at BombParty

Project description

Tictacbot

A program that makes you unbeatable at BombParty (in french).

Demo

Disclaimer

I developed this program because I wanted to challenge myself with code and found it fun to try to create a bot that could follow the rules of the game perfectly.

It's not meant to be used to ruin other players' games: for my part, I used it to amaze and make my friends laugh during our private games.

Anyway, I doubt that many people find much interest in cheating on a simple board game without much at stake.

Installation

⚠️ This program requires a version of python >= 3 installed on your machine.

Install the pytictacbot module using pip (it is included with python):

pip install pytictacbot

Usage

In order for this program to work, you must grant access to Accessibility and Input Monitoring to the application that will run the script. Indeed, the program need access to listen to the keys you type.

On Mac:

  • Open System settings,
  • Navigate into the Privacy & Security section,
  • Click on Accessibility,
  • Allow the application(s) in which you will run the script (ex: Terminal, iTerm...),
  • Go back, then do the same thing for Input Monitoring.

Once this is done, it is ready to use !

In your terminal, run:

tictacbot

An interface will be displayed. It will listen to the keys you type. A history of these keys will be displayed on the interface.

  • To launch the search, press the space bar.
  • To cancel the keys you typed, press the escape key.
  • To quit, press control+c.

After a successful search, the found word will be automatically pasted. The remaining letters list will be updated accordingly.

Rules

Before understanding how does it work, let's remember the rules of the jklm.fun's BombParty :

  1. The player will be given a series of letters. He have to find (as quickly as possible) a word that contains this series of letters (ex: "iso" -> "maison")
  2. The player can't reuse a word that has already been used during the game.
  3. The player starts with a list of all the letters in the alphabet, except "k", "w", "x", "y" and "z". If, with the words he/she types during the game, the player manages to use all these letters at least once, then the player will gain an extra life.

Finally, the goal in each round would be to find a word containing the sequence of letters, that has not been used already, but also the one that will unlock the most letters at once!

How does it work ?

Once the script is launched, it will run in the background, listening to the keys that are typed on the keyboard.

It will display everything on the interface to make it easier for the user to understand what is happening in the background.

When the user will press escape to search the best word including the sequence of letters he/she typed, Tictacbot will crawl a file containing all the words of the French language.

It will first determine a list of all words containing the given sequence of letters. Then, it will crawl this list and, for each word, calculate a score using the letters to discover (cf. 3rd rule). At the end, it will return the word with the highest possible score.

Finally, it will erase the sequence of letters that has ben typed by the user and paste the word instead.

TODO's

  • Handling this case: Currently, the program does not remain the words that has been used by the other players (only those that the player himself used). This can sometimes result in the reuse of an already used word (cf. 2nd rule).
  • Refining the source: In rare cases, a word retrieved by Tictacbot may not be accepted in the game. In this case, manually remove the word from the source file.
  • Manage all environments: Adapt the keyboard shortcuts to the user's operating system.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytictacbot-1.8.tar.gz (851.0 kB view details)

Uploaded Source

File details

Details for the file pytictacbot-1.8.tar.gz.

File metadata

  • Download URL: pytictacbot-1.8.tar.gz
  • Upload date:
  • Size: 851.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pytictacbot-1.8.tar.gz
Algorithm Hash digest
SHA256 ff40365ba93a783aaceb0733a0be3a9917639db390f80c49da811c6eda7a47f7
MD5 803bc0228c6d91339681bf70252c9cb9
BLAKE2b-256 181608ba58aaa6c09389dd6c7f5e294f4675194037065b7d286cc61b2097090a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page