- 
An all-in-one, installable windows program with a wide variety of features built with python! 
- 
This tool will rarely need to be updated as it executes the latest source code straight from GitHub for the tool itself, its modules and for updates! 
- 
Don't understand English? Don't worry! It even has a built-in translator that translates English to any language! (requires internet connection) 
- 
Uses dankware 
- 
ZIP Password: dankware
- 
Direct Download: https://github.com/SirDank/dank.tool/raw/main/dank.tool.zip 
- 
Short Direct Download: https://bit.ly/dank-tool-zip 
- 
Short Github URL: https://bit.ly/dank-tool 
- 
The executable does not have a verified certificate. Thus, windows defender may show a warning about it being from an unknown source (false positive). 
- 
If you would like to run the python scripts instead of the installer, there might be small changes you have to make for it to execute properly. (ex. paths) 
- 
Try not to spam the [ ENTER ] key on the exe's terminal as it can cause the program to take in the wrong input, if this has occurred, close the exe and relaunch it. 
- 
When the tool is running and performing a task, if you click inside the console window, a white rectangle appears and the task is paused. To continue performing the task, press the down arrow key. 
- 
When the tool is selected (but text is not), do not use [ Ctrl + C ] as it will raise the KeyboardInterruptexception and close the program.
- 
When on the main menu, you can resize the window to your preferred size and then enter refreshas input to re-align the UI.
- 
If you want the startup animation and music to be played on every run, enable force-startup-audioin settings.
- 
Do not enable offline-src,offline-modeordev-branchin settings as they are only meant for developers.
- 
Documentation for developers can be found below. 
- Add offline mode for offline scripts ( High Priority )
- Add translator
- Finish reworking dank.downloader.py
- Linux / Wine support
- I do not take any donations, I want this tool to be free for everyone, but if you would like to support the growth of this tool, you can do so by talking about it / sharing it with your friends!
- A complete package for building and hosting a fully optimised minecraft purpur server on your local Windows/Linux system without port-forwarding!
- Customization for server name, purpur version, server ram, allowing cracked players.
- Multithreaded file downloader (5 threads)
- Uses AutoPlug for updating jdk / plugins / server jar and much more!
- Uses playit.gg as the hosting solution
- Downloads purpur of the selected minecraft version
- Downloads several plugins from spigot / github
- Downloads minecraft anti-malware
- Applies Log4j exploit patches automatically
- Creates scripts for starting the server with respect to Aikar's Flags and Etil's Flags
- Creates scripts to quickly install java, perform malware scan
- Configures AutoPlug automatically (for the plugins downloaded by the server builder)
- Applies most optimizations from here automatically
- Integrated with dank.tool's chatroom via the dank.chatroom-plugin
- Add Iris Dimensions ( newhorizons / theend )
- Add ViaVersion / ViaBackwards / ViaRewind
- Add datapacks ( based on mc version )
- Add GeyserMC / Floodgate Options
- Add Mohist / Banner Options
- Add simple / advanced modes ( full rework )
- Maybe add a super simple web panel to only display stats
- Beginnings of dank.serverbuilder ( dsb actually started out as a simple batch script ) > old version
- A super-fast Minecraft server scanner to find random servers around the world! [ 493/s ~ 500 threads ~ 100K IPs ~ 3 minutes 35 seconds ~ Ryzen 7 5800H Mobile ]
- Generates the specified amount of IPs and scans the default Minecraft server port 25565 (java) / 19132 (bedrock)
- IPs are crafted in such a way that it is unique and avoids IPs that aren't valid / local IPs / will not have mc servers hosted on them
- Prints server info including IP, version, number of players online, latency in ms, host city, host org, host domain, server description (gamemode, map, motd on bedrock)
- You automatically contribute to the minecraft java and bedrock server lists by scanning!
- Server lists featured on fmhy
- Add targeted scans ( for specific IPs / ranges )
- Use masscan for windows
- Creates a full backup of your browser data including registry keys and protects it using a user set password
- Easily transfer your browser to another system by following the provided steps
- Add support for more browsers
- A simple tool to download and update windows software using winget
- Do not use these modules if you do not know what you are doing!
- A custom chatroom that can be used to chat with other users of the dank.tool
- The chatroom is hosted on a server and is accessible to all users of the dank.tool
- Windows notifications are sent when a new message is received
- Integrate with minecraft server chat using this custom plugin
- Add emoji keyboard
- This game is in early development, expect bugs!
- If the ground is not visible, restart the game!
- You might need to use max brightness!
- Game updates might be slow!
- Built using Ursina Engine!
- dank.tool is a collection of tools that I have created to automate / simplify various tasks. I have decided to share them with the world in hopes that they will make your life easier as well.
- dankware is a python package that is used by dank.tool to perform various tasks. It is also available for use in your own projects. You can find it here.
- dankware is also what I call software made by me. I have decided to use this name because it is a combination of my name and the word software. I think it sounds cool and I hope you do too. (totally not written by github copilot lmfao)
📁 dank.tool/                     [ branches: main, dev ]
├─📄 dank.tool.zip                [ direct download to the latest dank.tool installer inside a zip protected by the password "dankware" ]
├─📁 __assets__/                  [ assets used by dank.tool's modules ]
│ └─📁 example_module_1/
│   └─📄 example_file_1.exe
├─📁 __modules__/                 [ src for dank.tool's modules ]
│ ├─📄 example_module_1.py
│ └─📁 __wip__/                   [ modules that are still being worked on ]
│   └─📄 example_module_1.py
├─📁 __src__/
│ ├─📄 dank.tool.py               [ dank.tool's interface + module executor ]
│ ├─📄 executor.py                [ dank.tool's main src (all imports used by every module, update checker (executes updater.py), discord rpc, online run counter, chatroom user validator, executes dank.tool.py) ]
│ ├─📄 executor_version.txt       [ dank.tool's latest version number ( used for update checks ) ]
│ ├─📄 updater.py                 [ dank.tool's updater ]
│ └─📄 requirements.txt           [ python packages required to build dank.tool.exe ]
└─📁 __tools__/
  └─📄 package-updater.cmd        [ script I use to quickly update all packages used by the dank.tool before I build the latest version ]
- Download repository
- Turn off wifi (to prevent the dank.tool from connecting to the internet)
- Extract the dank.tool.zip and run the installer, finish installation and run the dank.tool
- After it says "Failed to get code", move the dank.tool.py script from the __src__folder to the__src__folder at the install location
- List of offline modules can be found here
- Move all scripts (except the ones available offline) from the __modules__folder to the__local_modules__folder at the install location
- Move all (offline) scripts from the __modules__folder to the__modules__folder at the install location
- Move all the files and folders inside the __assets__/dank.gamefolder to theursinafolder at the install location
- Edit the settings.jsonfile at the install location and set"offline-src": "1"and"offline_mode": "1"
- Hit enter on the dank.tool and enjoy offline dank.tool!
- Note: If you want to switch back to online mode to enable updates and use the latest modules, first delete the __local_modules__folder at the install location and then set"offline-src": "0"and"offline_mode": "0"in thesettings.jsonfile at the install location.
- dank.tool is built using nuitka and inno-setup by a custom python executable builder designed by me which is not available to the public. ( It is an advanced tool that automates the entire build process for any executable that I produce )
- in short the dank.init.py script is added on top of the executor.py script and then the entire thing is compiled into a executable with multiple c code source files using nuitka ( standalone mode not onefile mode ), after which the final dank.tool installer is built using inno-setup which is a single executable.
- this script is added on top of every script that I build into an executable with my (private) custom python executable builder. In short it performs the following:
- saves runs.txtto%LOCALAPPDATA%\\Dankware( saves the amount of times the executable has been run )
- scans the temp folder for any dankware files ( from my portable software ) and deletes them if they are not running ( cleanup )
- sends a get request to api-ninjas.com to increase the online run counter by 1 ( this is displayed on the main menu as dank.tool runs)
- once in every 10 runs it displays the dankware animation and plays the dankware.wav file ( checks runs.txt)
 
- saves 
- this script is used to build the dank.tool executable
- contains all the imports used by every module
- contains the update checker ( executes updater.py )
- sets environment variables
- checks windows language
- downloads dank.tool.py ( for offline mode )
- contains the discord rpc
- updates run counter ( global dank.tool runs )
- contains the chatroom user validator
- executes dank.tool.py
- main src. contains:
- main menu
- module downloader
- module executor
- translator
 
- dank.tool can execute custom user-made modules ( python scripts inside the __local_modules__folder ) that are not included in the main dank.tool executable
- the packages that can be used by these modules are limited to the ones that are already included in the executor.py script
- to enter console mode, type debugin the main menu. to print the environment variables, typeenv. to exit console mode, typeexit
- every error is sent to a discord webhook which allows me to quickly fix them