SirDank/dank.tool 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前获得 150 个 Star、6 次 Fork。
仓库全名
SirDank/dank.tool
README 摘要
Visits 🚨 SirDank's dank.tool 🚨 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…
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 KeyboardInterrupt exception and close the program.
When on the main menu, you can resize the window to your preferred size and then enter refresh as input to re-align the UI.
If you want the startup animation and music to be played on every run, enable force-startup-audio in settings.
Do not enable offline-src, offline-mode or dev-branch in settings as they are only meant for developers.
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!
🚨 Pre-Customized Minecraft Server Builder 🚨
A complete package for building and hosting a fully optimised minecraft purpur server on your local Windows/Linux system without port-forwarding!
♦️ Features ♦️
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!
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
♦️ To Do ♦️
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
♦️ History ♦️
Beginnings of dank.serverbuilder ( dsb actually started out as a simple batch script ) > old version
♦️ Youtube ♦️
🚨 Minecraft Server Scanner 🚨
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!
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)
⭕ File Structure ( Github ) ⭕
📁 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 ]
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.game folder to the ursina folder at the install location
Edit the settings.json file 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 the settings.json file at the install location.
⭕ Build Process ⭕
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.txt to %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 )
once in every 10 runs it displays the dankware animation and plays the dankware.wav file ( checks runs.txt )
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 debug in the main menu. to print the environment variables, type env. to exit console mode, type exit
⭕ error reporting system ⭕
every error is sent to a discord webhook which allows me to quickly fix them
评论