batpack torture
This commit is contained in:
@@ -1988,3 +1988,718 @@ The `Shift + S` menu is one of Blender's most useful context menus - it handles
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
Error packing with BAT: Action KEEP_PATH on C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend has no final path set, unable to process
|
||||
Traceback (most recent call last):
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\flamenco\bat\interface.py", line 148, in run
|
||||
self._run()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\flamenco\bat\interface.py", line 165, in _run
|
||||
self.packer.execute()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\flamenco\wheels\blender_asset_tracer-1.18-py3-none-any.whl\blender_asset_tracer\pack\__init__.py", line 391, in execute
|
||||
self._rewrite_paths()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\flamenco\wheels\blender_asset_tracer-1.18-py3-none-any.whl\blender_asset_tracer\pack\__init__.py", line 479, in _rewrite_paths
|
||||
bfile_pp is not None
|
||||
AssertionError: Action KEEP_PATH on C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend has no final path set, unable to process
|
||||
Error performing BAT pack: Action KEEP_PATH on C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend has no final path set, unable to process
|
||||
Error: Error performing BAT pack: Action KEEP_PATH on C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend has no final path set, unable to process
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
This is a **Blender Asset Tracer (BAT)** error related to Flamenco's asset packing system. The issue is that BAT can't determine where to place the `fn3map_v3.0.blend` file in the packed assets.
|
||||
|
||||
## Quick Fixes:
|
||||
|
||||
**1. Check the file path:**
|
||||
- Make sure `fn3map_v3.0.blend` exists at `C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\`
|
||||
- Verify the file isn't corrupted or locked
|
||||
|
||||
**2. Relink the asset:**
|
||||
- In Blender, go to **File → External Data → Relocate Missing Files**
|
||||
- Or **File → External Data → Find Missing Files**
|
||||
|
||||
**3. Clear BAT cache:**
|
||||
- Close Blender
|
||||
- Delete BAT cache folders (usually in temp directories)
|
||||
- Restart Blender
|
||||
|
||||
**4. Alternative approach:**
|
||||
- **File → External Data → Pack All Into .blend**
|
||||
- This packs everything into the current file instead of using BAT
|
||||
|
||||
**5. Check Flamenco settings:**
|
||||
- In Flamenco add-on settings, verify the asset packing configuration
|
||||
- Make sure the destination paths are properly set
|
||||
|
||||
## Root Cause:
|
||||
BAT is trying to keep the original path structure but can't determine where to place the file in the packed assets. This often happens with:
|
||||
- Missing files
|
||||
- Corrupted file references
|
||||
- Path conflicts
|
||||
- Synology Drive sync issues
|
||||
|
||||
Try the "Pack All Into .blend" approach first - it's simpler and avoids BAT path resolution issues.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
Looking at your Blender Info Log, I can see the core issue: **all 20 files failed to be made relative** and BAT can't pack absolute file paths.
|
||||
|
||||
## The Problem:
|
||||
- Your files are on **absolute paths** (`C:\Users\Nathan\SynologyDrive\...`)
|
||||
- BAT needs **relative paths** to pack them properly
|
||||
- The `fn3map_v3.0.blend` and `Springtrap_v10.0.blend` files are causing the main error
|
||||
|
||||
## Solutions:
|
||||
|
||||
**1. Fix the library files first:**
|
||||
```
|
||||
File → External Data → Relocate Missing Files
|
||||
```
|
||||
Then select the correct paths for your `.blend` library files.
|
||||
|
||||
**2. Make paths relative:**
|
||||
```
|
||||
File → External Data → Make All Paths Relative
|
||||
```
|
||||
|
||||
**3. Alternative - Pack everything into the current file:**
|
||||
```
|
||||
File → External Data → Pack All Into .blend
|
||||
```
|
||||
This bypasses BAT entirely and embeds all assets.
|
||||
|
||||
**4. Check your project structure:**
|
||||
- Move your assets to be relative to your project folder
|
||||
- Or set up proper relative paths in your `.blend` files
|
||||
|
||||
**5. For Flamenco specifically:**
|
||||
- Try submitting the job without BAT packing first
|
||||
- Or use the "Pack All Into .blend" approach before submitting
|
||||
|
||||
The key issue is that BAT can't handle absolute paths from Synology Drive. Either make the paths relative or pack everything into the `.blend` file directly.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
1. the library files are FINE, it's just having a fit because they're absolute
|
||||
2. I can't make them relative because they're not on the same drive.
|
||||
3. this doesn't work because they're absolute
|
||||
4. I don't see why blender and/or the flamenco addon can't just take the damn data that's already loaded into blender, and just send it. I seriously don't understand what's so hard about that and I don't want to copy my entire asset library over for every single project that I have. I want a 1-2 click solution, not a project management catastrophe.
|
||||
5. I CAN'T. Do I have to disable batpack in the javascript or something? why isn't the asset tracer coded to handle libraries across multiple drives?
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
You're absolutely right - this is a **terrible design flaw** in BAT/Flamenco. It should just pack what's already loaded in Blender, not try to reorganize your entire asset library.
|
||||
|
||||
## Quick Fix - Disable BAT Packing:
|
||||
|
||||
**In Flamenco add-on settings:**
|
||||
1. Go to **Edit → Preferences → Add-ons**
|
||||
2. Find **Flamenco** add-on
|
||||
3. Click **Preferences**
|
||||
4. Look for **"Asset Packing"** or **"BAT Packing"** option
|
||||
5. **Disable it** or set to **"None"**
|
||||
|
||||
## Alternative - Force Pack Current Data:
|
||||
|
||||
**Try this in the Python console:**
|
||||
```python
|
||||
# Pack everything currently loaded into the .blend file
|
||||
bpy.ops.file.pack_all()
|
||||
|
||||
# Then submit to Flamenco
|
||||
bpy.ops.flamenco.submit_job(job_name="Springtrap_Goopie")
|
||||
```
|
||||
|
||||
## Why This Sucks:
|
||||
- BAT is trying to be "smart" about asset management
|
||||
- But it's being **stupid** about cross-drive libraries
|
||||
- It should just pack what's in memory, not reorganize your file system
|
||||
- This is a common complaint about Flamenco's asset handling
|
||||
|
||||
## Workaround:
|
||||
If you can't disable BAT, try:
|
||||
1. **File → Pack All Into .blend** (embeds everything)
|
||||
2. **Save As** to a new file
|
||||
3. Submit that packed file to Flamenco
|
||||
|
||||
The fact that you have to jump through these hoops for a simple render submission is ridiculous. Flamenco should just render what Blender has loaded, period.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
alrighty. can you make me a script that takes linked library .blends from the bottom location (local synology drive file sync) and relocates them to their mirrors on the R:\ nas storage?
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
Here's a script that will relocate your linked library files from the Synology Drive sync to your NAS storage:
|
||||
|
||||
|
||||
---
|
||||
|
||||
<details><summary>Edit file: relocate_libraries.py</summary>
|
||||
|
||||
Creating a Blender script to relocate linked library files from Synology Drive to NAS storage
|
||||
|
||||
**Chunk 1**
|
||||
Lines added: 83, lines removed: 1
|
||||
|
||||
```diff
|
||||
@@ -1,1 +1,83 @@
|
||||
-
|
||||
+ import bpy
|
||||
+ import os
|
||||
+ import re
|
||||
+
|
||||
+ def relocate_libraries():
|
||||
+ """
|
||||
+ Relocate linked library files from Synology Drive to NAS storage.
|
||||
+ Changes paths from C:\Users\Nathan\SynologyDrive\ to R:\
|
||||
+ """
|
||||
+
|
||||
+ # Define the path mappings
|
||||
+ old_base = r"C:\Users\Nathan\SynologyDrive"
|
||||
+ new_base = r"R:"
|
||||
+
|
||||
+ # Track changes
|
||||
+ changed_files = []
|
||||
+ failed_files = []
|
||||
+
|
||||
+ print("=== Library Relocation Script ===")
|
||||
+ print(f"Mapping: {old_base} → {new_base}")
|
||||
+ print()
|
||||
+
|
||||
+ # Process all library files
|
||||
+ for lib in bpy.data.libraries:
|
||||
+ if lib.filepath:
|
||||
+ old_path = lib.filepath
|
||||
+
|
||||
+ # Check if this is a Synology Drive path
|
||||
+ if old_base in old_path:
|
||||
+ # Create new path
|
||||
+ new_path = old_path.replace(old_base, new_base)
|
||||
+
|
||||
+ # Verify the new file exists
|
||||
+ if os.path.exists(new_path):
|
||||
+ try:
|
||||
+ # Update the library path
|
||||
+ lib.filepath = new_path
|
||||
+ changed_files.append((old_path, new_path))
|
||||
+ print(f"✓ Relocated: {os.path.basename(old_path)}")
|
||||
+ print(f" {old_path}")
|
||||
+ print(f" → {new_path}")
|
||||
+ print()
|
||||
+ except Exception as e:
|
||||
+ failed_files.append((old_path, str(e)))
|
||||
+ print(f"✗ Failed to relocate: {os.path.basename(old_path)}")
|
||||
+ print(f" Error: {e}")
|
||||
+ print()
|
||||
+ else:
|
||||
+ failed_files.append((old_path, "Target file not found"))
|
||||
+ print(f"✗ Target not found: {new_path}")
|
||||
+ print()
|
||||
+ else:
|
||||
+ print(f"ℹ Skipped (not Synology Drive): {old_path}")
|
||||
+ print()
|
||||
+
|
||||
+ # Summary
|
||||
+ print("=== Summary ===")
|
||||
+ print(f"Successfully relocated: {len(changed_files)} files")
|
||||
+ print(f"Failed to relocate: {len(failed_files)} files")
|
||||
+
|
||||
+ if changed_files:
|
||||
+ print("\nRelocated files:")
|
||||
+ for old, new in changed_files:
|
||||
+ print(f" {os.path.basename(old)}")
|
||||
+
|
||||
+ if failed_files:
|
||||
+ print("\nFailed files:")
|
||||
+ for old, reason in failed_files:
|
||||
+ print(f" {os.path.basename(old)}: {reason}")
|
||||
+
|
||||
+ return len(changed_files), len(failed_files)
|
||||
+
|
||||
+ # Run the script
|
||||
+ if __name__ == "__main__":
|
||||
+ success_count, fail_count = relocate_libraries()
|
||||
+
|
||||
+ if success_count > 0:
|
||||
+ print(f"\n✅ Successfully relocated {success_count} library files!")
|
||||
+ print("You may need to save your .blend file to preserve these changes.")
|
||||
+
|
||||
+ if fail_count > 0:
|
||||
+ print(f"\n⚠️ {fail_count} files failed to relocate.")
|
||||
+ print("Check that the NAS paths exist and are accessible.")
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
## How to Use:
|
||||
|
||||
**1. Copy the script to Blender's text editor:**
|
||||
- Open Blender's **Text Editor**
|
||||
- Create a new text file
|
||||
- Paste the script
|
||||
- Save it as `relocate_libraries.py`
|
||||
|
||||
**2. Run the script:**
|
||||
- In the Text Editor, click **Run Script**
|
||||
- Or use **Alt + P** to run it
|
||||
|
||||
**3. What it does:**
|
||||
- Finds all linked library files with Synology Drive paths
|
||||
- Maps `C:\Users\Nathan\SynologyDrive\` → `R:\`
|
||||
- Verifies the NAS files exist before changing paths
|
||||
- Reports success/failure for each file
|
||||
|
||||
**4. After running:**
|
||||
- **Save your .blend file** to preserve the changes
|
||||
- The library paths will now point to your NAS storage
|
||||
- This should resolve the BAT packing issues
|
||||
|
||||
## Customization:
|
||||
If your NAS path is different, change this line:
|
||||
```python
|
||||
new_base = r"R:" # Change to your actual NAS path
|
||||
```
|
||||
|
||||
The script will show you exactly what it's doing and report any files that can't be relocated. This should fix your Flamenco/BAT issues by moving everything to relative paths on the same drive.
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
@relocate_libraries.py
|
||||
Python: File "R:\Creative\artsy\maya\2025-07-29 Springtrap_Goopie\blends\Springtrap_Goopie.blend\relocate_libraries.py", line 9
|
||||
"""
|
||||
Relocate linked library files from Synology Drive to NAS storage.
|
||||
Changes paths from C:\Users\Nathan\SynologyDrive\ to R:\
|
||||
"""
|
||||
^
|
||||
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 96-97: truncated \UXXXXXXXX escape
|
||||
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
The issue is with the backslashes in the docstring being interpreted as unicode escape sequences. Let me fix that:
|
||||
|
||||
---
|
||||
|
||||
<details><summary>Edit file: scripts/relocate_libraries.py</summary>
|
||||
|
||||
undefined
|
||||
|
||||
**Chunk 1**
|
||||
Lines added: 1, lines removed: 1
|
||||
|
||||
```diff
|
||||
@@ -6,5 +6,5 @@
|
||||
"""
|
||||
Relocate linked library files from Synology Drive to NAS storage.
|
||||
- Changes paths from C:\Users\Nathan\SynologyDrive\ to R:\
|
||||
+ Changes paths from C:\\Users\\Nathan\\SynologyDrive\\ to R:\\
|
||||
"""
|
||||
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
Perfect! The issue was that Python was trying to interpret the backslashes in the docstring as unicode escape sequences. I've fixed it by properly escaping the backslashes with double backslashes (`\\`).
|
||||
|
||||
The script should now run without syntax errors. The actual path mappings use raw strings (`r"..."`) so they're not affected by this issue - it was just the docstring causing problems.
|
||||
|
||||
Try running the script again in Blender!
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
how the hell is it doing this when the script clearly worked
|
||||
|
||||
Error performing BAT pack: Action KEEP_PATH on C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend has no final path set, unable to process
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
The script successfully relocated the **currently loaded** library references in Blender's memory, but the **saved .blend file still contains the old paths**. BAT is reading the file from disk, not from memory.
|
||||
|
||||
## The Problem:
|
||||
- Your script fixed the paths **in memory**
|
||||
- But the **.blend file on disk** still has the old Synology Drive paths
|
||||
- BAT reads the file directly and sees the old paths
|
||||
|
||||
## Solutions:
|
||||
|
||||
**1. Save the file after running the script:**
|
||||
```
|
||||
File → Save (Ctrl+S)
|
||||
```
|
||||
This writes the corrected paths to disk.
|
||||
|
||||
**2. Or save as a new file:**
|
||||
```
|
||||
File → Save As → "Springtrap_Goopie_fixed.blend"
|
||||
```
|
||||
|
||||
**3. Verify the paths were saved:**
|
||||
- Close Blender completely
|
||||
- Reopen the saved file
|
||||
- Check that the library paths are now pointing to `R:\`
|
||||
|
||||
**4. Then try BAT packing again**
|
||||
|
||||
## Why This Happens:
|
||||
BAT doesn't use Blender's current scene data - it **parses the .blend file directly** from disk to analyze dependencies. So even though your script worked perfectly in memory, BAT is still seeing the old file on disk with the Synology Drive paths.
|
||||
|
||||
After you save the file with the corrected paths, BAT should be able to process it properly since everything will be on the same drive (`R:\`).
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
still getting the same error despite the paths being properly set. so there's something else here.
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
You're right - there's something deeper going on. Let me help debug this:
|
||||
|
||||
## Debug Steps:
|
||||
|
||||
**1. Check what BAT is actually seeing:**
|
||||
Run this in Blender's Python console to see all dependencies:
|
||||
```python
|
||||
import bpy
|
||||
print("=== All Library Dependencies ===")
|
||||
for lib in bpy.data.libraries:
|
||||
print(f"Library: {lib.filepath}")
|
||||
|
||||
print("\n=== All External Files ===")
|
||||
for img in bpy.data.images:
|
||||
if img.filepath:
|
||||
print(f"Image: {img.filepath}")
|
||||
|
||||
for sound in bpy.data.sounds:
|
||||
if sound.filepath:
|
||||
print(f"Sound: {sound.filepath}")
|
||||
```
|
||||
|
||||
**2. Check if there are hidden/indirect references:**
|
||||
The `fn3map_v3.0.blend` might be referenced **inside another library file**, not directly in your main file.
|
||||
|
||||
**3. Look at the specific file BAT is complaining about:**
|
||||
- Open `fn3map_v3.0.blend` directly
|
||||
- Check what **it** is linking to
|
||||
- It might have its own Synology Drive references
|
||||
|
||||
**4. Check Flamenco job settings:**
|
||||
- In Flamenco submission panel
|
||||
- Look for any **hardcoded paths** or **job settings** that override the file paths
|
||||
|
||||
**5. Try without BAT entirely:**
|
||||
In Flamenco preferences, try setting:
|
||||
- **Asset Packing**: Off/Disabled
|
||||
- Submit the job without asset packing
|
||||
|
||||
The `fn3map_v3.0.blend` file itself might contain absolute paths to other files, or there might be nested library dependencies that your script didn't catch.
|
||||
|
||||
What do you see when you run that debug script?
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
PYTHON INTERACTIVE CONSOLE 3.11.11 (main, May 31 2025, 09:35:27) [MSC v.1929 64 bit (AMD64)]
|
||||
|
||||
Builtin Modules: bpy, bpy.data, bpy.ops, bpy.props, bpy.types, bpy.context, bpy.utils, bgl, gpu, blf, mathutils
|
||||
Convenience Imports: from mathutils import *; from math import *
|
||||
Convenience Variables: C = bpy.context, D = bpy.data
|
||||
|
||||
>>> import bpy
|
||||
>>> print("=== All Library Dependencies ===")
|
||||
=== All Library Dependencies ===
|
||||
|
||||
>>> for lib in bpy.data.libraries:
|
||||
... print(f"Library: {lib.filepath}")
|
||||
...
|
||||
Library: R:\BlenderAssets\OG\fnaf\fn3map_v3.0.blend
|
||||
Library: R:\BlenderAssets\OG\fnaf\Springtrap_v10.0.blend
|
||||
|
||||
>>> print("\n=== All External Files ===")
|
||||
|
||||
=== All External Files ===
|
||||
|
||||
>>> for img in bpy.data.images:
|
||||
... if img.filepath:
|
||||
... print(f"Image: {img.filepath}")
|
||||
...
|
||||
Image: E:\SteamLibrary\steamapps\common\Blender\portable\extensions\user_default\blenderkit\thumbnails\blenderkit_logo.png
|
||||
Image: E:\SteamLibrary\steamapps\common\Blender\portable\extensions\user_default\blenderkit\thumbnails\vs_rejected.png
|
||||
Image: E:\Textures\fnaf3\orange wallpaper.png
|
||||
Image: E:\Textures\fnaf3\tile white.png
|
||||
Image: E:\Textures\fnaf3\wallpaper.png
|
||||
Image: //textures\fn3map\innerjaw.png
|
||||
Image: //textures\fn3map\pimgpsh_fullsize_distr.png
|
||||
Image: //textures\fn3map\blackspecular.png
|
||||
Image: //textures\fn3map\boblehed.png
|
||||
Image: //textures\fn3map\bonnie arcade.png
|
||||
Image: //textures\fn3map\Bsuit_1.png
|
||||
Image: //textures\fn3map\Bsuit_2.png
|
||||
Image: //textures\fn3map\bowtie.png
|
||||
Image: //textures\fn3map\bump.png
|
||||
Image: //textures\fn3map\bush.png
|
||||
Image: //textures\fn3map\beak.png
|
||||
Image: //textures\fn3map\csuit_1.png
|
||||
Image: //textures\fn3map\cup.png
|
||||
Image: //textures\fn3map\Fcfb60b2b09d2ffc67e8d3ada0e33b04.png
|
||||
Image: //textures\fn3map\drawingsp.png
|
||||
Image: //textures\fn3map\drawings.png
|
||||
Image: //textures\fn3map\fnaf1endo1.png
|
||||
Image: //textures\fn3map\blackspec1.png
|
||||
Image: //textures\fn3map\fnafenv.png
|
||||
Image: //textures\fn3map\Foxy Arcade.png
|
||||
Image: //textures\fn3map\fxinnerjaw.png
|
||||
Image: //textures\fn3map\fxsuit_1.png
|
||||
Image: //textures\fn3map\fxsuit_2.png
|
||||
Image: //textures\fn3map\fred arc.png
|
||||
Image: //textures\fn3map\suit_2.png
|
||||
Image: //textures\fn3map\suit_1.png
|
||||
Image: //textures\fn3map\fteeths.png
|
||||
Image: //textures\fn3map\fteeths.png
|
||||
Image: //textures\fn3map\fright brick.png
|
||||
Image: //textures\fn3map\lamp2.png
|
||||
Image: //textures\fn3map\nose normal.png
|
||||
Image: //textures\fn3map\orange wallpaper.png
|
||||
Image: //textures\fn3map\pizza.png
|
||||
Image: //textures\fn3map\presp.png
|
||||
Image: //textures\fn3map\roof tiles.png
|
||||
Image: //textures\fn3map\teeths.png
|
||||
Image: //textures\fn3map\Specular.png
|
||||
Image: //textures\fn3map\spooker msmam.png
|
||||
Image: //textures\fn3map\suit1.png
|
||||
Image: //textures\fn3map\suit1_5.png
|
||||
Image: //textures\fn3map\tile white.png
|
||||
Image: //textures\fn3map\bump.png
|
||||
Image: //textures\fn3map\aa8a0ffd12ea7b78ecfc5cdf0653dea8.png
|
||||
Image: //textures\fn3map\wire.png
|
||||
Image: //textures\fn3map\vacbump2.png
|
||||
Image: //textures\fn3map\vent.png
|
||||
Image: //textures\fn3map\wallpaper.png
|
||||
Image: //textures\fn3map\suit_dark.png
|
||||
Image: //textures\fn3map\newbump2.png
|
||||
Image: //textures\fn3map\wiress.png
|
||||
Image: //textures\fn3map\wooden texture.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\bUMP.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Eye.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Flesh.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\FleshBump.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Pupil.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Suit1.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Suit2.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\Suit3.png
|
||||
Image: R:\BlenderAssets\OG\fnaf\textures\Springtrap V9\SuitTeeth.png
|
||||
|
||||
>>> for sound in bpy.data.sounds:
|
||||
... if sound.filepath:
|
||||
... print(f"Sound: {sound.filepath}")
|
||||
...
|
||||
Sound: E:\SynologyDrive\Creative\artsy\maya\2021-04-12 springtrapcameramove\mayaport\sourceimages\kolors\goopiedanceoriginal.mp4
|
||||
|
||||
>>>
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
**FOUND IT!** There's your problem - look at the last line:
|
||||
|
||||
```
|
||||
Sound: E:\SynologyDrive\Creative\artsy\maya\2021-04-12 springtrapcameramove\mayaport\sourceimages\kolors\goopiedanceoriginal.mp4
|
||||
```
|
||||
|
||||
BAT is choking on this **sound file** that's still pointing to your **E:\SynologyDrive** path. My script only relocated **library files**, not **sound files**.
|
||||
|
||||
## Quick Fix:
|
||||
|
||||
Run this updated script to fix the sound file:
|
||||
|
||||
```python
|
||||
import bpy
|
||||
import os
|
||||
|
||||
def fix_sound_paths():
|
||||
print("=== Fixing Sound File Paths ===")
|
||||
|
||||
# Path mappings
|
||||
old_base_e = r"E:\SynologyDrive"
|
||||
old_base_c = r"C:\Users\Nathan\SynologyDrive"
|
||||
new_base = r"R:"
|
||||
|
||||
for sound in bpy.data.sounds:
|
||||
if sound.filepath:
|
||||
old_path = sound.filepath
|
||||
new_path = None
|
||||
|
||||
# Check for E:\ SynologyDrive path
|
||||
if old_base_e in old_path:
|
||||
new_path = old_path.replace(old_base_e, new_base)
|
||||
# Check for C:\ SynologyDrive path
|
||||
elif old_base_c in old_path:
|
||||
new_path = old_path.replace(old_base_c, new_base)
|
||||
|
||||
if new_path and os.path.exists(new_path):
|
||||
sound.filepath = new_path
|
||||
print(f"✓ Fixed sound: {os.path.basename(old_path)}")
|
||||
print(f" {old_path} → {new_path}")
|
||||
elif new_path:
|
||||
print(f"✗ Sound file not found: {new_path}")
|
||||
else:
|
||||
print(f"ℹ Skipped: {old_path}")
|
||||
|
||||
# Run it
|
||||
fix_sound_paths()
|
||||
```
|
||||
|
||||
After running this, **save your file** and try BAT again. The `goopiedanceoriginal.mp4` file was the culprit!
|
||||
|
||||
---
|
||||
|
||||
_**User**_
|
||||
|
||||
what is it referring to by 'no final path set'? why can't it just say what path it's having an anyeurism about?
|
||||
does this mean anything?:
|
||||
|
||||
|
||||
Warning! 'E:\\SteamLibrary\\steamapps\\common\\Blender\\4.5\\scripts\\startup\\fa_hotkeys.py' has no register function, this is now a requirement for registerable scripts
|
||||
register_class(...):
|
||||
Warning: 'Submenu' does not contain '_MT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'Submenu2' does not contain '_MT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'Submenu3' does not contain '_MT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'view3D.Pie_menu' does not contain '_MT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'CustomPanel' does not contain '_PT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'view3D.Quad_menu' does not contain '_MT_' with prefix and suffix
|
||||
register_class(...):
|
||||
Warning: 'Special_Tools_Menu' does not contain '_MT_' with prefix and suffix
|
||||
module changed on disk: 'E:\\SteamLibrary\\steamapps\\common\\Blender\\4.5\\scripts\\startup\\delete_withoutConfirm.py' reloading...
|
||||
register_class(...):
|
||||
Info: Registering operator class: 'Delete_withoutConfirm', bl_idname 'edit.delete_without_confirm' has been registered before, unregistering previous
|
||||
cc_blender_tools_updater updater verbose is enabled
|
||||
cc_blender_tools_updater Updater: Read in JSON settings from file
|
||||
Cannot read ARP prefs
|
||||
Update armature presets...
|
||||
animation_layers_updater addon: Verbose is enabled
|
||||
animation_layers_updater addon: Read in JSON settings from file
|
||||
Reloading external rigs...
|
||||
Reloading external metarigs...
|
||||
Subdivision Surface modifiers removed from all objects.
|
||||
Addon preferences registered successfully: <bpy_struct, Addon("rainys_bulk_scene_tools") at 0x00000202D84EE220>
|
||||
Bulk Path Management registered successfully
|
||||
register_class(...):
|
||||
Warning: 'List_View' does not contain '_UL_' with prefix and suffix
|
||||
WARN (bgl): C:\Users\blender\git\blender-v450\blender.git\source\blender\python\generic\bgl.cc:2673 BPyInit_bgl: 'bgl' imported without an OpenGL backend. Please update your add-ons to use the 'gpu' module.
|
||||
animtoolbox addon: Verbose is enabled
|
||||
register_class(...):
|
||||
Info: Registering operator class: 'Restart', bl_idname 'wm.restart_blender' has been registered before, unregistering previous
|
||||
animtoolbox addon: Read in JSON settings from file
|
||||
🔄 blenderkit: Verbose is enabled
|
||||
🔄 blenderkit: Read in JSON settings from file
|
||||
ℹ️ blenderkit: Ports reordered so first port is now 62485 (previous index was 0) [21:55:35.529, client_lib.py:125]
|
||||
Render Preset --- Startup handler
|
||||
Render Preset --- Reloading presets
|
||||
Error in bpy.app.handlers.load_post[5]:
|
||||
Traceback (most recent call last):
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 695, in reload_preset_startup
|
||||
reload_presets()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 626, in reload_presets
|
||||
folder = get_preset_folder()
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 23, in get_preset_folder
|
||||
os.makedirs(folder)
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 225, in makedirs
|
||||
FileNotFoundError: [WinError 53] The network path was not found: '\\\\NAS\\amazon\\'
|
||||
Error in bpy.app.handlers.load_post[14]:
|
||||
Traceback (most recent call last):
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\blender_visual_scripting_addon\handlers.py", line 32, in load_handler
|
||||
check_easy_bpy_install()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\blender_visual_scripting_addon\settings\easybpy.py", line 11, in check_easy_bpy_install
|
||||
for filename in os.listdir(path):
|
||||
^^^^^^^^^^^^^^^^
|
||||
NotADirectoryError: [WinError 267] The directory name is invalid: 'E:\\SteamLibrary\\steamapps\\common\\Blender\\portable\\scripts\\addons\\flamenco\\wheels\\python_dateutil-2.8.2-py2.py3-none-any.whl'
|
||||
Created history step 9cc800bc-e614-4dae-9d91-52956582c5cb
|
||||
ℹ️ blenderkit: Created new search history step [21:55:38.271, search.py:1736]
|
||||
Info: Saved copy as "2025-55-31_21-55_Unnamed.blend"
|
||||
Incremental Autosave: Saved file: E:\BlenderCache\2025-55-31_21-55_Unnamed.blend
|
||||
Read blend: "C:\Users\Nathan\SynologyDrive\BlenderAssets\OG\fnaf\fn3map_v3.0.blend"
|
||||
Render Preset --- Startup handler
|
||||
Render Preset --- Reloading presets
|
||||
Error in bpy.app.handlers.load_post[5]:
|
||||
Traceback (most recent call last):
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 695, in reload_preset_startup
|
||||
reload_presets()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 626, in reload_presets
|
||||
folder = get_preset_folder()
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\extensions\blender_org\render_preset\manage_presets.py", line 23, in get_preset_folder
|
||||
os.makedirs(folder)
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 215, in makedirs
|
||||
File "<frozen os>", line 225, in makedirs
|
||||
FileNotFoundError: [WinError 53] The network path was not found: '\\\\NAS\\amazon\\'
|
||||
Error in bpy.app.handlers.load_post[14]:
|
||||
Traceback (most recent call last):
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\blender_visual_scripting_addon\handlers.py", line 32, in load_handler
|
||||
check_easy_bpy_install()
|
||||
File "E:\SteamLibrary\steamapps\common\Blender\portable\scripts\addons\blender_visual_scripting_addon\settings\easybpy.py", line 11, in check_easy_bpy_install
|
||||
for filename in os.listdir(path):
|
||||
^^^^^^^^^^^^^^^^
|
||||
NotADirectoryError: [WinError 267] The directory name is invalid: 'E:\\SteamLibrary\\steamapps\\common\\Blender\\portable\\scripts\\addons\\flamenco\\wheels\\python_dateutil-2.8.2-py2.py3-none-any.whl'
|
||||
Extra Pies: Register built-in pies for use with non-standard Keymap.
|
||||
Info: Saved copy as "2025-55-31_21-55_fn3map_v3.0.blend"
|
||||
Incremental Autosave: Saved file: E:\BlenderCache\2025-55-31_21-55_fn3map_v3.0.blend
|
||||
ℹ️ blenderkit: BlenderKit-Client is running on port 62485! [21:55:58.955, timer.py:136]
|
||||
Warning: Path 'E:\SteamLibrary\steamapps\common\Blender\portable\extensions\user_default\blenderkit\thumbnails\blenderkit_logo.png' cannot be made relative for Image '.blenderkit_logo.png'
|
||||
Warning: Path 'E:\SteamLibrary\steamapps\common\Blender\portable\extensions\user_default\blenderkit\thumbnails\vs_rejected.png' cannot be made relative for Image '.vs_rejected.png'
|
||||
Warning: Path 'E:\SteamLibrary\steamapps\common\Blender\4.5\datafiles\assets\geometry_nodes\smooth_by_angle.blend' cannot be made relative for NodeTree 'Smooth by Angle'
|
||||
Warning: Total files 54 | Changed 0 | Failed 3
|
||||
|
||||
---
|
||||
|
||||
_**Assistant**_
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user