VBCT replacement - CompilePal

Freyja

aa
Jul 31, 2009
3,009
5,838
YZxKRuY.png


Someone over on facepunch recently put this together. It's still fairly new, a few bugs, but it works quite well and has a really slick interface. Works perfectly with the new Steampipe configuration without any setup headaches (Launch, click TF2 and go).

Supports custom profiles, post-compile tasks and automatic packing.

The automatic packing has been giving me some trouble, can't tell if that's a problem with TF2 or the program, maybe someone else can get it working though and let me know. Either way, very sleek.

Site: https://github.com/ruarai/CompilePal

Most recent version download: https://github.com/ruarai/CompilePal/releases/latest
 

fubarFX

The "raw" in "nodraw"
aa
Jun 1, 2009
1,721
1,985
I'll probably try to contribute to the paking part, there are so many things that I want to be automatic
ex: no tool ever picks up on custom materials referenced in pcf files, among other things

you can contribute too! let them know of any problems you're having https://github.com/ruarai/CompilePal/issues
 
Apr 14, 2013
662
344
Works for me. The checkbox method is much more fun than copy-pasting lines from VDC into the narrow textboxes, so when you get to advanced compiles this will be great help.
It doesn't open the game after a compile. Is it an error? I didn't change anything in the "game" tab.
Compilepal $game_exe has, in conservative compilers language, -novid +map $map).
In hammer's default compiler I have -allowdebug -game $gamedir +map $file
I assume I need -game to launch game, and $file = $map. How do I add it?
 

Freyja

aa
Jul 31, 2009
3,009
5,838
I think you just check the box down in the lower right corner saying "run this tool" on the game tab.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,699
2,581
I thought packing had to be done after cubemaps were built. Confirm/deny?
 

henke37

aa
Sep 23, 2011
2,075
515
They are more related than you think. Cubemaps are in fact part of the packed content!
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,776
7,673
Sounds more like a problem with the packing software. VBSP itself puts stuff into the embedded content lump when the BSP is generated, so it is technically impossible to build cubemaps before anything is packed in.
 

Fruity Snacks

Creator of blackholes & memes. Destroyer of forums
aa
Sep 5, 2010
6,394
5,573
Sounds more like a problem with the packing software. VBSP itself puts stuff into the embedded content lump when the BSP is generated, so it is technically impossible to build cubemaps before anything is packed in.

The issue was it was being directed to a bad file directory, if that helps, deleting the default cubemaps, then repacking them put it into the correct filepath.
 

xzzy

aa
Jan 30, 2010
815
531
They are more related than you think. Cubemaps are in fact part of the packed content!

Of course they are, but there are no dependencies between the two. You do not need custom assets packed to build cubemaps, and you do not need cubemaps packed to pack custom assets.

As other people have stated, if there are issues with packing files it's probably the result of poorly written frontends for bspzip. The command line interface seems to never mess anything up (unless of course the operator messes it up).
 

wareya

L420: High Member
Jun 17, 2012
493
191
There's a bug with cubemaps sometimes though, where if you try to build them before packing, they won't work. So you have to open pakrat, rip the files out, pack everything else, then build the cubemaps.


So based on that, I'm going to say it doesn't matter.

I have never ever ever had or seen that happen firsthand. I have had problems with renamed bsps and repacking, though.
 

xzzy

aa
Jan 30, 2010
815
531
I've seen it happen once too, BSP gets a bunch of solid black cubemaps stored inside it and the only way to clean it up is delete them manually.

It was earlier this year and I've never seen it at any other time, so the suspicious side of me wants to think it's related to steampipe, but I have no actual evidence of this.
 

Crash

func_nerd
aa
Mar 1, 2010
3,346
5,520
Every time I compile with vbct I have to go in manually and remove (using VIDE) a whole slew of black cubemaps before I can build my own. After building I pack my custom content, again using VIDE.

Been doing this with every big release for the past year or so.
 

worMatty

Repacking Evangelist
aa
Jul 22, 2014
1,259
999
This is a pretty tool. I will be glad if it obtains all of the features we require of it.

I tried the packing option, making sure to enable the previously-missed 'Run this tool' check box. Unfortunately, nothing was packed. The tool seems to run BSPZip, though I do not have a text file for my example VMF.

The GitHub readme mentions that the auto packing tool is a prototype.
 
Apr 14, 2013
662
344
Bump, I guess.

I came back to using this, after discovering Vbct doesn't like being on a different hard-disc than tf2.
I have questions and requests to ask, but IDK if it's the right place. Anyway, I guess bumping this is good, since the default compiler (F9) is bad, and Vbct is outdated.

How well does the packing option work, is it worth using, and is it still relevant after the workshop update?
Is there a way to save the compile parameters I set for future use? As of now, seems like I'll have to select them over again, for the next time I compile
Can we get the -hijack parameter supported in the GAME part of the compile? Currently it isn't there.
 

fubarFX

The "raw" in "nodraw"
aa
Jun 1, 2009
1,721
1,985
Compilepal's paking is the best automatic paking there is out there period. unfortunately it's been broken for tf2 since valve updated bspzip a month ago. http://www.teamfortress.com/post.php?id=17567
there's an update coming up that should fix this (soon, valve time).

(replacing tf's bspzip.exe with any other orange box bspzip.exe works too)

This is ruarai's answer concerning -hijack: https://github.com/ruarai/CompilePal/issues/11
We might improve that in the future

if you want to save configs, you do that from the menu on the left "add, clone, remove". The UI has changed a lot, don't refer to the screenshots you see here.
 
Last edited:

worMatty

Repacking Evangelist
aa
Jul 22, 2014
1,259
999
I've been modifying the .meta and .csv files to include my own compile arguments. I was able to insert BSPZIP after VBSP so that mappers can remove the default black cubemaps that are sometimes inserted by VBSP (I think this problem has been fixed now anyway but it was just an experiment). Whatever you can do in Hammer's compile dialogue is also possible in CompilePal. For example, I added these two files:

bspzip.csv
Code:
sep=;
Name;Parameter;ValueValid;Description;Issues
Delete Cubemaps; -deletecubemaps;false;Deletes any VTFs VBSP inserts in the BSP file.;

bspzip.meta
Code:
BSPZIP
$bspZip$
bspzip.csv
 $bsp$
1.1
False

And if you modify CP's game.csv file you can add these wonderful things:
Code:
Hijack; -hijack;false;Hijacks an existing instance of the game rather than attempting to run it again.;
Dev Screenshots; -makedevshots;FALSE;Takes screenshots if you use any point_dev_camera entities in your map.;Closes the game when done.
Allow PSC; +sv_allow_point_servercommand always;FALSE;Allow the use of the point_server_command entity.;
Enable Cheats; +sv_cheats 1;FALSE;Enables cheat mode (unneeded in developer mode);
Exec Config; +exec;true;Executes a custom configuration file after the game loads.;
Note that Exec Config's 'true' value enables you to type the name of a .cfg file in a text field in CP, like you can with the custom lights.rad file argument for VRAD.

At the moment though, CompilePal is giving me an error message:
X7isny6.png

I just upgraded to Windows 10, maybe that's why. Not sure.

Just for the record, last time I checked, CP didn't pack my custom rope material/texture. More details can be supplied if need be.