Fixing Canvases Using PyTower
Initial Installation
Before anything, install PyTower using these instructions (also in README.md)
As of v0.2.0, it should be as easy as it gets to install PyTower
Instructions
Verify PyTower Installation
Open command line by searching for “cmd” on your computer then hitting enter
Enter
pytower versioninto command line - If PyTower is installed correctly, then it should print out “PyTower” followed by the installed version (e.g., “PyTower 0.2.0”)
Setting Tower Unite install path in PyTower
- Open up your “steamapps” folder
On Windows: C:\Program Files (x86)\Steam\steamapps
On Linux: ~/.local/share/steamapps/
Navigate to the “common” folder, then “Tower Unite” folder
Copy this path (i.e., the path to the Tower Unite directory)
In command line, enter
pytower config set tower_install_path <PATH>
Note
Alternatively, you can set the path in config.json within the PyTower install directory
Running pytower fix
Navigate to your “Steam” folder, then to “userdata”, your Steam ID3, “394690”, “remote”, and finally to “Condos” - From here, saves are organized by condo name and then by snapshot name. For example, C_SmoothDirt/CondoData is the currently active save for your Smooth Dirt condo. Meanwhile, WK_LevelEditor/cafe/CondoData would be the save for a snapshot called “cafe”
Open the folder of the save you want to fix canvases for and copy the path/address.
Enter
cd <PATH>, where<PATH>is the folder path/address pasted in - If this worked, you should see the folder address followed by a “>” characterType
pytower fix <FILENAME>(i.e., “CondoData”), and hit enterFrom here, PyTower will automatically detect broken canvases and attempt to reupload them to Catbox - If this process succeeds, you should see “Successfully reuploaded XXX/XXX to Catbox!”
Open the map in Tower Unite as usual, and hopefully all of your canvases are now fixed!
Happy mapping and condo building!!! 💖
Troubleshooting
“Marked 0/### files for reupload” or “XXX is online but returned status code: ###”
- PyTower tries to automatically determine whether or not a file is still available
Sometimes this will cause PyTower to think a resource is still available when it actually isn’t
Solution: Use the
--forceflag, which will force a reupload of all files:pytower fix <FILENAME> --force
“Error while uploading file: HTTPSConnectionPool(host=’catbox.moe’, port=443): Max retries exceeded […]”
Catbox is the default backend PyTower tries to use for uploading images
- In some countries Catbox is blocked, and may be blocked by default by your antivirus
This is because some capacity, Catbox is an image host for 4chan. However, it doesn’t seem to be funded by 4chan directly at all, instead all the money comes from a Patreon. Whatever the connection is, at least it’s not being funded by AI techbros trying to scrape your data
- Solution: Add an antivirus exclusion for Catbox or use a VPN.
Alternatively try using the imgur backend with
--backend imguror try making your own custom backend
If this doesn’t work then it’s possible that the Catbox servers are down for maintenance: check https://status.catbox.moe/