Closed electrovoyage closed 3 days ago
That could be because you have the BSP open in another program, like the game - if open it can't be written to, so it gets an access denied error. I have the postcompiler write the new BSP to a temp file then rename it over the original, that way it's more difficult to get a partially-written BSP.
The file is open in the game. However, the game is running a BSP from portal2/maps/
and the postcompiler is getting denied access to a map in sdk_content/maps/
. The compile chain ends with a copy command, which means the file in portal2/maps/
isn't a symlink to the one in sdk_content/maps/
, in which case I could see how it would be getting denied access.
Also, this error results in dozens of temp files piling up and not being deleted.
That could be because you have the BSP open in another program, like the game - if open it can't be written to, so it gets an access denied error. I have the postcompiler write the new BSP to a temp file then rename it over the original, that way it's more difficult to get a partially-written BSP.
Turns out yes, it was open in another program, but not the game. My sdk_content/maps/
folder is a symlink to my Dropbox folder, and when the postcompiler was trying to rename the file, Dropbox just so happened to be trying so sync it.
Ah, I've had issues with that myself in the past. What I do is use the robocopy.exe
program, which lets you copy one folder to another, checking the source continuously for changes. So whenever sdk_content
changes, it gets copied to my dropbox which then sync.
When running the postcompiler, I sometimes get this message, and sometimes I don't. This always causes the postcompiler to crash/quit. I have no idea why it's getting denied permission. Perhaps implement a system where it basically retries this a couple times in case of an exception? If it's still unsuccessful, the exception can be thrown anyway.