Skip to main content

Collection of 7 Days to Die bots, scripts and hacks

Project description

py7dtd - A 7 Days to Die tools collection

detection

https://7daystodie.com/

In this repository are collected tools and scripts for the game 7 Days to Die:

  • Tools for the detection of objects/entities
  • Scripts for the automatization of actions (mining, crafting, etc.)
  • Aim bots
  • Passcode cracking
  • Block detection

Installation (Windows)

Clone the module, create a virtual environment and install it:

git clone git@github.com:tassoneroberto/py7dtd.git
cd py7dtd
py -3.7 -m venv venv
.\venv\Scripts\Activate.ps1
py -m pip install .[ai]

Note: if you are not interested in "entities detection" or "aimbot" then you can omit [ai] from the above command:

py -m pip install .

Dev mode

To install the package in edit mode (for developers) specify -e:

py -m pip install -e .[ai]

Dependencies for entities detection

Disclaimer: an NVIDIA® GPU card with CUDA® architectures 3.5, 3.7, 5.2, 6.0, 6.1, 7.0 or higher is required. See the list of CUDA®-enabled GPU cards (https://developer.nvidia.com/cuda-gpus).

Install the following dependencies:

(More info here: https://www.tensorflow.org/install/gpu)

In order to use the module you need a x64 version of Python 3.7.x. You can download it at this page: https://www.python.org/downloads/windows/

Download link: https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe

You also need to download the trained model (https://github.com/tassoneroberto/py7dtd/releases/download/v0.2/model.h5) for the entities detection and move it to src/ai/models/v2/.

Optional

To be able to train a model you need to download the ImageAI's pre-trained model (https://github.com/OlafenwaMoses/ImageAI/releases/download/essential-v4/pretrained-yolov3.h5) and move it to ./src/ai/.

Entities detection

❗ Under development ❗

Simple entities detector using AI (Computer Vision).

The objects detection (trees, zombies, etc.) is done using ImageAI: https://github.com/OlafenwaMoses/ImageAI/

The annotation of the images has been done using the tool labelImg: https://github.com/tzutalin/labelImg

Proof of concept

detection

Aim bot

❗ Under development ❗

Simple aim bot capable of:

  • Detect zombies/players
  • Move the mouse to the target
  • Shoot

Usage

py7dtd_auto_shooting --delay 200

Note: Press ESC to interrupt the bot.

Command line arguments

The following table is listing all the arguments that can be specified:

arg description default
help Arguments description N/A
delay Time in ms between each screenshot 500
output Output folder ./auto_shooting

detection

Passcode cracking

❗ Under development ❗

Bruteforce/dictionary attack on chests/doors passcode.

Usage

It is recommended to set the game in window mode with a resolution of 640x480.

Example of a bruteforce attack testing passcodes of 2-10 characters length composed of digits and lowercase characters, with a delay of 20ms between each try, a limit of 100 tries and a timeout of 60 seconds.

Note: Press ESC to interrupt the bot.

py7dtd_crack_passcode --brute --digits --lower --min 2 --max 10 --delay 20 --limit 100 --timeout 60

Get the arguments list with the help function:

py7dtd_crack_passcode --help

detection

Example of a dictionary attack with a delay of 30ms between each try and no limit in tries.

py7dtd_crack_passcode --dict --dictpath ./dictionaries/top1000.txt --delay 30

Note: dictionaries can be found at https://github.com/danielmiessler/SecLists/tree/master/Passwords.

detection

Command line arguments

The available methods are bruteforce attack (--brute) and dictionary attack (--dict).

The following table is listing all the arguments to use for each method:

arg description default type
help Arguments description N/A N/A
min Minimum length 1 brute
max Maximum length 20 brute
digits Include digits False** brute
lower Include lowercase characters False** brute
upper Include uppercase characters False** brute
special Include special characters False** brute
dictpath Dictionary file path ./dictionaries/top1000.txt dict*
limit Maximum number of tries brute, dict
timeout Maximum time in seconds allowed brute, dict
delay Delay in ms between each action 20 brute, dict

*This attribute is required if dict is selected

**At least one of these is required

Blocks detection

❗ Under development ❗

Detection of block, like topsoil and destroyed stone blocks, by taking screenshots of the map.

Usage

It is recommended to set the game in window mode with the highest resolution possible.

Specify the blocks to be identified by passing them as arguments (e.g. --topsoil). Specify an output folder (or keep the default one ./blocks_detection). Run the script and open the game map by pressing M. Press P to take a screenshot of the map and automatically mark in red the specified blocks. The screenshots, with the block marked, will be saved in the output folder.

Note: Press ESC to interrupt the script.

py7dtd_blocks_detection --topsoil --destroyed

Get the arguments list with the help function:

py7dtd_blocks_detection --help

Example of detection of topsoil blocks in the desert biome:

detection

detection

Command line arguments

The following table is listing all the arguments:

arg description default
help Arguments description N/A
topsoil Topsoil blocks False*
destroyed Destroyed stone blocks False*
output Output folder ./blocks_detection

*At least one of these is required

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

py7dtd-1.0.0a0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

py7dtd-1.0.0a0-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file py7dtd-1.0.0a0.tar.gz.

File metadata

  • Download URL: py7dtd-1.0.0a0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for py7dtd-1.0.0a0.tar.gz
Algorithm Hash digest
SHA256 98bef4aa9e063a9192b6cccc4a1b68a3ae5e00a7778c62de954c731b4514561a
MD5 a8e6138e7b108eb7edad70c231c2de0c
BLAKE2b-256 c49f7c90f1a4084923fb0f360597de14180b5747a77ebaca83ceb9748f75304e

See more details on using hashes here.

File details

Details for the file py7dtd-1.0.0a0-py3-none-any.whl.

File metadata

  • Download URL: py7dtd-1.0.0a0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for py7dtd-1.0.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 a3978ec1915767127072f8d88f427ad386bcf4bcd545fab05356d7e81cd06721
MD5 86298208779188c451f5f4385644214e
BLAKE2b-256 a4eec23cdf6b0b4337a2c518dbf91cd86d06e726ac4b494d90e80aca64534ada

See more details on using hashes here.

Supported by

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