CompilePal
CompilePal copied to clipboard
Compile pal not starting, if you only use hammer++ and never used stock hammer before.
Describe the bug A clear and concise description of what the bug is.
Compile pal does not launch if you have never launched stock hammer before. The problem is that since hammer++ has released, nobody bothers to use stock hammer anymore. This causes compile pal to fail to launch since it requires gameconfig.txt to be generated by stock hammer. I've also contacted the creator of hammer++ to tell him that it should create a gameconfig.txt like stock hammer does.
Steps to reproduce Steps to reproduce the behavior.
Pretend to be a new mapper, and only use hammer++. Ignore stock hammer. Make sure gameconfig.txt is deleted from the bin folder. (When you have never launched stock hammer before, the file gameconfig.txt won't exist then.
Expected behavior A clear and concise description of what you expected to happen.
Compile pal will not launch, it will create a crash log only.
Debug.log Please upload the debug.log file found in your Compile Pal folder.
debug.log (The only reason the debug file exist is because I managed to fix the issue my self)
Crash logs If applicable, please upload crash logs found in the CrashLog folder. 2021-05-23T15-34-31.txt
Additional context Add any other context about the problem here.
Unfortunately this doesn't look like something I can fix, since the GameConfig.txt points to where the compilers are located. As a workaround, launch the stock hammer for the game you want to compile for to generate the GameConfig.txt, then use Hammer++
Any chance at making compilepal work with hammer++?
As stated before inside this page, just launch stock hammer first and it should work properly with whatever you are using.
Hammer++ has been modified to no longer generate the required configuration files that other 3rd party tools have been relying on. By the way it was implemented, Hammer++ hinders its integration with CompilePal, WallWorm and possibly others. You can go ask them about their reasoning and/or the possibility of restoring that functionality. https://github.com/ficool2/HammerPlusPlus-Website/issues
Hammer++ is out of spec and the modifications to its inner workings are not disclosed. We'd probably consider researching a fix if things weren't this obtuse.
This has been fixed in the latest Hammer++ update
I can confirm that you still need to start regular hammer for compile pal to work. I recently reinstalled my os and had to deal again with compile pal not starting. I assumed that starting regular hammer wasn't going to fix it, as hammer++ was supposedly modified to make it work with compile pal. And yet it still did fix the problem and it made compile pal launch. This is the crash log that I received:
System.NullReferenceException: Object reference not set to an instance of an object. at CompilePalX.GameConfigurationParser.Parse(String filename) in D:\a\CompilePal\CompilePal\CompilePalX\GameConfiguration\GameConfigurationParser.cs:line 15 at CompilePalX.LaunchWindow..ctor() in D:\a\CompilePal\CompilePal\CompilePalX\GameConfiguration\LaunchWindow.xaml.cs:line 60
I guess it was broken in the latest Hammer++ update. Going to reopen and pin this for now so other people can see how to fix the issue
You can't have CompilePal check for H++'s GameConfig.txt instead?
which is just hammerplusplus_gameconfig.txt
located under $exedir/bin/hammerplusplus
Seems like the most likely solution to this issue. I honestly never noticed hammer++ had its own gameconfig.txt.
Unfortunately I currently don't have the time to support Hammer++. The GameConfig.txt is the standard way for all Source engine games to store information about the compilers. I don't know why Hammer++ doesn't generate this file anymore, but I opened an issue for it https://github.com/ficool2/HammerPlusPlus-Issue-Tracker/issues/304
This should be fixed in the latest prerelease. Forgot to close this issue