py7dtd


Namepy7dtd JSON
Version 1.0.0a0 PyPI version JSON
download
home_pagehttps://github.com/tassoneroberto/py7dtd
SummaryCollection of 7 Days to Die bots, scripts and hacks
upload_time2022-06-28 21:31:36
maintainer
docs_urlNone
authorRoberto Tassone
requires_python
licenseMIT
keywords 7dtd bots hacks scripts
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # py7dtd - A 7 Days to Die tools collection

![detection](preview/logo.png)

<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:

```powershell
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:

```powershell
py -m pip install .
```

### Dev mode

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

```powershell
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:

- C++ redistributable (<https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads>)
- NVIDIA® GPU drivers —CUDA® 11.2.1 (<https://www.nvidia.com/drivers>)
- CUDA® Toolkit 11.1 (<https://developer.nvidia.com/cuda-toolkit-archive>)
- cuDNN SDK 7.6 (<https://developer.nvidia.com/cudnn>)

(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](preview/preview1.png)

## Aim bot

❗ Under development ❗

Simple aim bot capable of:

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

### Usage

```powershell
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](preview/preview2.png)

## 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.

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

Get the arguments list with the `help` function:

```powershell
py7dtd_crack_passcode --help
```

![detection](preview/bruteforce-preview.gif)

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

```powershell
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](preview/dictionary-preview.gif)

### 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.

```powershell
py7dtd_blocks_detection --topsoil --destroyed
```

Get the arguments list with the `help` function:

```powershell
py7dtd_blocks_detection --help
```

Example of detection of topsoil blocks in the desert biome:

![detection](preview/blockdetection-before-preview.png)

![detection](preview/blockdetection-after-preview.png)

### 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*

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/tassoneroberto/py7dtd",
    "name": "py7dtd",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "7dtd,bots,hacks,scripts",
    "author": "Roberto Tassone",
    "author_email": "roberto.tassone@proton.me",
    "download_url": "https://files.pythonhosted.org/packages/c4/9f/7c90f1a4084923fb0f360597de14180b5747a77ebaca83ceb9748f75304e/py7dtd-1.0.0a0.tar.gz",
    "platform": null,
    "description": "# py7dtd - A 7 Days to Die tools collection\n\n![detection](preview/logo.png)\n\n<https://7daystodie.com/>\n\nIn this repository are collected tools and scripts for the game 7 Days to Die:\n\n- Tools for the detection of objects/entities\n- Scripts for the automatization of actions (mining, crafting, etc.)\n- Aim bots\n- Passcode cracking\n- Block detection\n\n## Installation (Windows)\n\nClone the module, create a virtual environment and install it:\n\n```powershell\ngit clone git@github.com:tassoneroberto/py7dtd.git\ncd py7dtd\npy -3.7 -m venv venv\n.\\venv\\Scripts\\Activate.ps1\npy -m pip install .[ai]\n```\n\nNote: if you are not interested in \"entities detection\" or \"aimbot\" then you can omit `[ai]` from the above command:\n\n```powershell\npy -m pip install .\n```\n\n### Dev mode\n\nTo install the package in edit mode (for developers) specify `-e`:\n\n```powershell\npy -m pip install -e .[ai]\n```\n\n### Dependencies for entities detection\n\nDisclaimer: an NVIDIA\u00ae GPU card with CUDA\u00ae architectures 3.5, 3.7, 5.2, 6.0, 6.1, 7.0 or higher is required. See the list of CUDA\u00ae-enabled GPU cards (<https://developer.nvidia.com/cuda-gpus>).\n\nInstall the following dependencies:\n\n- C++ redistributable (<https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads>)\n- NVIDIA\u00ae GPU drivers \u2014CUDA\u00ae 11.2.1 (<https://www.nvidia.com/drivers>)\n- CUDA\u00ae Toolkit 11.1 (<https://developer.nvidia.com/cuda-toolkit-archive>)\n- cuDNN SDK 7.6 (<https://developer.nvidia.com/cudnn>)\n\n(More info here: <https://www.tensorflow.org/install/gpu>)\n\nIn order to use the module you need a `x64` version of `Python 3.7.x`.\nYou can download it at this page: <https://www.python.org/downloads/windows/>\n\nDownload link: <https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe>\n\nYou 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/`.\n\n### Optional\n\nTo 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/`.\n\n## Entities detection\n\n\u2757 Under development \u2757\n\nSimple entities detector using AI (Computer Vision).\n\nThe objects detection (trees, zombies, etc.) is done using `ImageAI`: <https://github.com/OlafenwaMoses/ImageAI/>\n\nThe annotation of the images has been done using the tool `labelImg`: <https://github.com/tzutalin/labelImg>\n\n### Proof of concept\n\n![detection](preview/preview1.png)\n\n## Aim bot\n\n\u2757 Under development \u2757\n\nSimple aim bot capable of:\n\n- Detect zombies/players\n- Move the mouse to the target\n- Shoot\n\n### Usage\n\n```powershell\npy7dtd_auto_shooting --delay 200\n```\n\nNote: Press `ESC` to interrupt the bot.\n\n### Command line arguments\n\nThe following table is listing all the arguments that can be specified:\n\n| arg           |  description      |   default   |\n|:-------------:|:-----------------:| :----------:|\n| help          | Arguments description           | `N/A`|\n| delay         | Time in ms between each screenshot | `500`|\n| output         | Output folder | `./auto_shooting`|\n\n![detection](preview/preview2.png)\n\n## Passcode cracking\n\n\u2757 Under development \u2757\n\nBruteforce/dictionary attack on chests/doors passcode.\n\n### Usage\n\nIt is recommended to set the game in window mode with a resolution of 640x480.\n\nExample 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.\n\nNote: Press `ESC` to interrupt the bot.\n\n```powershell\npy7dtd_crack_passcode --brute --digits --lower --min 2 --max 10 --delay 20 --limit 100 --timeout 60\n```\n\nGet the arguments list with the `help` function:\n\n```powershell\npy7dtd_crack_passcode --help\n```\n\n![detection](preview/bruteforce-preview.gif)\n\nExample of a dictionary attack with a delay of 30ms between each try and no limit in tries.\n\n```powershell\npy7dtd_crack_passcode --dict --dictpath ./dictionaries/top1000.txt --delay 30\n```\n\nNote: dictionaries can be found at <https://github.com/danielmiessler/SecLists/tree/master/Passwords>.\n\n![detection](preview/dictionary-preview.gif)\n\n### Command line arguments\n\nThe available methods are **bruteforce attack** (`--brute`) and **dictionary attack** (`--dict`).\n\nThe following table is listing all the arguments to use for each method:\n\n| arg           |  description      |   default   | type     |\n|:-------------:|:-----------------:| :----------:|:--------:|\n| help          | Arguments description           | `N/A`|`N/A`|\n| min           | Minimum length                  | `1`|`brute`|\n| max           | Maximum length                  | `20`|`brute`|\n| digits        | Include digits                  | `False`**|`brute`|\n| lower         | Include lowercase characters    | `False`**|`brute`|\n| upper         | Include uppercase characters    | `False`**|`brute`|\n| special       | Include special characters      | `False`**|`brute`|\n| dictpath      | Dictionary file path            | `./dictionaries/top1000.txt`|`dict`*|\n| limit         | Maximum number of tries         | `\u221e`|`brute`, `dict`|\n| timeout       | Maximum time in seconds allowed | `\u221e`|`brute`, `dict`|\n| delay         | Delay in ms between each action | `20`|`brute`, `dict`|\n\n**This attribute is required if `dict` is selected*\n\n***At least one of these is required*\n\n## Blocks detection\n\n\u2757 Under development \u2757\n\nDetection of block, like `topsoil` and `destroyed stone` blocks, by taking screenshots of the map.\n\n### Usage\n\nIt is recommended to set the game in window mode with the highest resolution possible.\n\nSpecify 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.\n\nNote: Press `ESC` to interrupt the script.\n\n```powershell\npy7dtd_blocks_detection --topsoil --destroyed\n```\n\nGet the arguments list with the `help` function:\n\n```powershell\npy7dtd_blocks_detection --help\n```\n\nExample of detection of topsoil blocks in the desert biome:\n\n![detection](preview/blockdetection-before-preview.png)\n\n![detection](preview/blockdetection-after-preview.png)\n\n### Command line arguments\n\nThe following table is listing all the arguments:\n\n| arg           |  description              |   default   |\n|:-------------:|:-------------------------:| :----------:|\n| help          | Arguments description     | `N/A`        |\n| topsoil       | Topsoil blocks            | `False`*   |\n| destroyed     | Destroyed stone blocks    | `False`*   |\n| output        | Output folder             | `./blocks_detection`|\n\n**At least one of these is required*\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Collection of 7 Days to Die bots, scripts and hacks",
    "version": "1.0.0a0",
    "split_keywords": [
        "7dtd",
        "bots",
        "hacks",
        "scripts"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a4eec23cdf6b0b4337a2c518dbf91cd86d06e726ac4b494d90e80aca64534ada",
                "md5": "86298208779188c451f5f4385644214e",
                "sha256": "a3978ec1915767127072f8d88f427ad386bcf4bcd545fab05356d7e81cd06721"
            },
            "downloads": -1,
            "filename": "py7dtd-1.0.0a0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "86298208779188c451f5f4385644214e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 5424,
            "upload_time": "2022-06-28T21:31:34",
            "upload_time_iso_8601": "2022-06-28T21:31:34.396510Z",
            "url": "https://files.pythonhosted.org/packages/a4/ee/c23cdf6b0b4337a2c518dbf91cd86d06e726ac4b494d90e80aca64534ada/py7dtd-1.0.0a0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c49f7c90f1a4084923fb0f360597de14180b5747a77ebaca83ceb9748f75304e",
                "md5": "a8e6138e7b108eb7edad70c231c2de0c",
                "sha256": "98bef4aa9e063a9192b6cccc4a1b68a3ae5e00a7778c62de954c731b4514561a"
            },
            "downloads": -1,
            "filename": "py7dtd-1.0.0a0.tar.gz",
            "has_sig": false,
            "md5_digest": "a8e6138e7b108eb7edad70c231c2de0c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5685,
            "upload_time": "2022-06-28T21:31:36",
            "upload_time_iso_8601": "2022-06-28T21:31:36.292569Z",
            "url": "https://files.pythonhosted.org/packages/c4/9f/7c90f1a4084923fb0f360597de14180b5747a77ebaca83ceb9748f75304e/py7dtd-1.0.0a0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-06-28 21:31:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "tassoneroberto",
    "github_project": "py7dtd",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "py7dtd"
}
        
Elapsed time: 0.03376s