# BOIIIWD
- A GUI Steam Workshop downloader meant for BO3 ([boiii client](https://github.com/Ezz-lol/boiii-free)) built using CustomTkinter
## Usage (exe):
- Run [BOIIIWD.exe](https://github.com/faroukbmiled/BOIIIWD/releases/latest/download/Release.zip) and use it (it'll ask you to download steamcmd within the app if not found)
- That's it slap in your workshop item link or just the id then hit Download and wait for it to finish, when it does just launch your game (Please check [Notes](#notes) before you ask anything)
## Usage (script):
- ```pip install -r requirements.txt```
- ```python boiiiwd.py```
- Slap in your workshop item link for example: "https://steamcommunity.com/sharedfiles/filedetails/?id=3011930738" or just the id 3011930738)
## Freezing into an exe (pyinstaller):
- ```pip install -r requirements.txt```
- ```pip install pyinstaller```
- ```pyinstaller --noconfirm --onefile --windowed --icon "ryuk.ico" --name "BOIIIWD" --ascii "boiiiwd.py" --add-data "resources;resources" --add-data "c:\\lib\site-packages\customtkinter;customtkinter\" --add-data "c:\\lib\site-packages\CTkMessagebox;CTkMessagebox\" --add-data "c:\\lib\site-packages\CTkToolTip;CTkToolTip\"```
### Notes:
. It saves your input except for workshop id
. If you do not know where to find your map in-game check this [video](https://youtu.be/XIQjfXXlgQs?t=260) out ,for mods find "mods" in the game's main menu
. Initializing SteamCMD for the first time could take some time depending on your internet speed
. If the download fails when getting big maps its SteamCMD's fault, still working on a workaround
. Known bugs:
. Rare UI bug => instead of showing a warning message it just does invisible that leads to the whole window becoming unclickable (end the task from task manager)
. Possible logic bugs related to the progress bar , sometimes it carries on progressing when you pressed stop => please raise an issue if this happens often
### todos:
- [x] add a menu that shows you current installed mods/maps
- [x] fix the progress bar => progress bar logic based on an estimation
- [x] other improvements regarding the download (steamcmd likes to fail sometimes for no reason) => added a way to keep looping when steamcmd crashes and it will eventually finishes
- [ ] add a queue window that you can slap in a bunch of items to download sequentially and or simultaneously
- [ ] add an option to login with your account => delayed (do we really need it?)