Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.pck files aren't found in Windows builds > 2GB. #47177

Closed
kodiakbehr opened this issue Mar 20, 2021 · 3 comments
Closed

.pck files aren't found in Windows builds > 2GB. #47177

kodiakbehr opened this issue Mar 20, 2021 · 3 comments

Comments

@kodiakbehr
Copy link

Godot version:
Godot 3.2.3rc3

OS/device including version:
All Windows OS devices.

Issue description:
We released a game that was less than 2GB without issue. The game contains .webm video files which, in a later patch, were converted to .ogv video files. Patching with one video converted, there were no issues so we proceeded to patch all videos. This brought the file size over 2GB. Upon pushing that patch, we discovered the error below:

Couldn't load project data at path ".". Is the .pck file missing? If you've renamed the executable, the associated .pck file should also be renamed to match the executable's name (without the extension).

Both files are in the same directory, but the error occurs

We removed enough videos so that the file size dropped below 2GB and found the problem was resolved. We have no other theories to bring to the table based on the behavior observed.

Steps to reproduce:

  1. Export a project with at least 2GB of data.
@Calinou
Copy link
Member

Calinou commented Mar 20, 2021

Duplicate of godotengine/godot-proposals#400.

As a workaround, you can create additional PCK files and load them at run-time. If you need a standalone CLI tool to create PCK files, try GodotPckTool.

@ProbDenis
Copy link
Contributor

I think the problem here is not so much the limit itself, but the lack of a warning.
From a user's perspective, the editor allows you to export a PCK that's too large. The Linux build appears to run as normal (maybe it will crash later on?), the Windows build doesn't run at all and suggests you may have renamed the file. But nothing tells you: "Hey, your file is too large, here's what you can do about it."

@Calinou
Copy link
Member

Calinou commented Mar 20, 2021

I think the problem here is not so much the limit itself, but the lack of a warning.
From a user's perspective, the editor allows you to export a PCK that's too large. The Linux build appears to run as normal (maybe it will crash later on?), the Windows build doesn't run at all and suggests you may have renamed the file. But nothing tells you: "Hey, your file is too large, here's what you can do about it."

I'm not sure if we can even warn the user about this, as the File API uses 32-bit integers everywhere. If a file size exceeds what a 32-bit integer can hold, there's no way to even know that a file is larger than 2 GB.

As a workaround, we could use OS-specific file listing commands and parse the output, but this is really ugly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants