Closed GhostlyCrowd closed 6 years ago
The latest commit ( cf1427d ) should fix this issue. Try to recompile and test.
Thanks, I'll have to wait until next week or next release to test, I've left for the long weekend and my build environment is not with me.
If you want to compile a test build and send it to me I can test if you do not want to make another release yet as this is untested.
Had a coworker copile and send it to me. New Error
Unhandled Exception: System.OverflowException: Value was either too large or too small for a UInt32. at System.Convert.ToUInt32(UInt64 value) at hacbuild.HFS0Manager.BuildHFS0(String inDir, String outFile) at hacbuild.Program.Main(String[] args)
I've pushed another attempt at fixing it. I've also uploaded a prebuilt binary
Alright so this one got further, it spend a good 15 minutes rebuilding a 16gb xci. and then crashed and threw this error Looks like it may have finished making the secure part of the xci.
Unhandled Exception: System.OverflowException: Value was either too large or too small for a UInt32. at System.Convert.ToUInt32(Double value) at hacbuild.HFS0Manager.BuildHFS0(String inDir, String outFile) at hacbuild.Program.Main(String[] args)
The previous errors would happen immediately.
Alright, so it looks like its an issue in the "Fill Padding" area of HFS0Manager.cs But i'm not to handy in C# so i don't know how to fix it. But i was able to build and debug and have it halt when it hit the error.
Edit: Just saw your other commit.
I can confirm the latest commit has fixed this issue fully.
Tested on the release 1.0.0.1 Issue #5 fix with BotW cart dump. Hate to be the guy that pops in and says:
When building hfs0:
Unhandled Exception: System.OverflowException: Value was either too large or too small for a UInt32. at System.Convert.ToUInt32(Double value) at hacbuild.HFS0Manager.BuildHFS0(String inDir, String outFile) at hacbuild.Program.Main(String[] args)
When building xci
Unhandled Exception: System.OverflowException: Value was either too large or too small for a UInt32. at System.Convert.ToUInt32(UInt64 value) at hacbuild.XCIManager.BuildXCI(String inDir, String outFile) at hacbuild.Program.Main(String[] args)
While running from my batch script and also, does it manually.
Batch file for reference.
for /r %%i in (*.xci) do (
if not exist "%CD%\%%~ni" (
mkdir "%CD%\%%~ni"
mkdir "%CD%\%%~ni_secure"
)
hacbuild read xci %%i
move %%~ni.ini "%CD%\%%~ni\game_info.ini"
hactool -txci --securedir="%CD%\%%~ni_secure" %%i
hacbuild hfs0 "%CD%\%%~ni_secure" "%CD%\%%~ni\root.hfs0"
hacbuild xci "%CD%\%%~ni" %%ni_trimmed
)````
Unhandled Exception: System.OverflowException: Value was either too large or too small for a UInt32. at System.Convert.ToUInt32(Double value) at hacbuild.HFS0Manager.BuildHFS0(String inDir, String outFile) at hacbuild.Program.Main(String[] args)