PackBSP 2.0 Beta 1 needs testing

Grab your favourite IDE and tinker with the innards of game engines

PackBSP 2.0 Beta 1 needs testing

Postby Terr on Thu Jun 10, 2010 10:41 pm

Edit: Additional betas have been posted. Here's Beta 3.

______________
See the blog post.

PackBSP is a program for people creating custom maps for Valve Software's "Source Engine" series of games. It looks at the map you've made and attempts to determine every custom sound, texture, model, etc. that is involved in the map. Then it helps you embed those assets into the map so you can distribute it for other people to enjoy.


While I may change the UI and mode of operation in the future, I'm particularly interested in outright bugs or places where it does not correctly determine a map-dependency.
Last edited by Terr on Mon Jul 12, 2010 4:45 am, edited 1 time in total.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby omnicoder on Thu Jun 10, 2010 10:49 pm

Being waiting for this, will test and report any issues I find.
I'm curious, why does it require steam to be running, since it seems to read ClientRegistry itself and uses HLLib?
Image
If only the future implemented IForeseeable...
"whats threading? does it have to do with strings?" - stegarootbeer
User avatar
omnicoder
Been Here A While
Been Here A While
 
Joined: Sun Feb 07, 2010 8:35 am

Re: PackBSP 2.0 Beta 1 needs testing

Postby city14 on Thu Jun 10, 2010 11:55 pm

I've looked at your program before. I liked it, and I'll test this as soon as I can. One thing though, you can't access the clientregistry.blob if you are updating a game... And I have slow internet, so I have to wait for it to finish...
coder0xff wrote:I wonder if Gabe ever lies in bed at night, thinking about all the fat jokes, and just cries himself to sleep, wiping his tears away with one-thousand dollar bills.
User avatar
city14
Pheropod
Pheropod
 
Joined: Tue Jun 16, 2009 8:35 pm
Location: Troutdale, Oregon

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Fri Jun 11, 2010 12:31 am

omnicoder wrote:I'm curious, why does it require steam to be running, since it seems to read ClientRegistry itself and uses HLLib?

Unlike Pakrat, PackBSP doesn't do any direct byte-level modification to your map files, but delegates to Valve's bspzip.exe SDK tool. For whatever reason Valve made bspzip like hammer: Unable to run without Steam.

While I could write something to directly do the packing on a byte-by-byte level, I'd rather just make it bspzip's problem, since that's the "standard" way from Valve. I currently have stuff that does byte-level reading of BSPs, but even there there's a bunch of junk involving version numbers and detecting the difference between newer and older map formats etc...

At first I misunderstood your question, but since I wrote it out anyway... There are two reasons PackBSP needs to access ClientRegistry.
  • App dependencies. I know Team Fortress 2 is "App ID 440", but where do I go from there? The CR has information saying that App 440 needs 441, 442, 443, and various IDs that are "shared" by all Source games. Other games have other IDs with other dependencies.
  • ID to GCF mappings. What does "442" really mean, anyway? The CR has information telling me that those correspond to "Team Fortress 2 Materials", so now I know what GCF to open.
Last edited by Terr on Fri Jun 11, 2010 12:42 am, edited 1 time in total.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby omnicoder on Fri Jun 11, 2010 12:41 am

I had to directly mess with the pak lump when I was making tools to convert 360 maps to pc format, it's not really too messy to manually modify the lumps. I suppose using bspzip gives it more future-readiness though.
Image
If only the future implemented IForeseeable...
"whats threading? does it have to do with strings?" - stegarootbeer
User avatar
omnicoder
Been Here A While
Been Here A While
 
Joined: Sun Feb 07, 2010 8:35 am

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Fri Jun 11, 2010 12:44 am

Yeah, #1 reason is being able to say: "Your map got corrupted? Oh, sorry... BLAME VALVE!".

That decision made really early on when I was still using vbspinfo to pull data from the map. Turns out I needed more detail, and eventually had to delve into the BSP format anyway.

If it becomes necessary I could do the packing "in house" without bspzip, but the way I see it almost all the time you want to do this packing task, you have just recently been using hammer (to make the map) or playing the game (to test the map) so Steam is something of a given.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Sat Jun 12, 2010 4:18 am

Next release will (fingers crossed since I can't test it myself very well) have 64-bit support instead of a 64-bit warning and half-hearted non-working workaround attempt.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby [JFG]Propaganda on Sat Jun 12, 2010 6:25 am

I get immediate error with this after setting steam directory

Code: Select all
Cannot find game list for engine 'Source2007'
Image
[JFG]Propaganda
Been Here A While
Been Here A While
 
Joined: Mon Apr 17, 2006 10:25 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Sat Jun 12, 2010 10:11 pm

[JFG]Propaganda wrote:I get immediate error with this after setting steam directory

Code: Select all
Cannot find game list for engine 'Source2007'


One of Valve's recent changes screwed up some folks environments. If you try to get Source SDK to launch Hammer for source2007 it'll probably fail too.

Try starting up Episode 2 if you have it, or try the Source SDK "refresh SDK Content" option.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Mon Jun 14, 2010 9:28 am

BETA 2

  • Should have 64-bit support now.
  • Has an executable launcher which should make it easier for people to run.
  • Log window improvements. Color-coding, auto-scrolling, popup on error.
  • Less picky about broken SDK environments ("the source2007 problem")
  • Improved packing screen, integrated file-picking and color-coding to show missing files.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Fri Jun 18, 2010 6:23 am

Beta 3 is available.
http://technofovea.com/blog/archives/538


  • Should fix most of the problems people have reported. (It just ignores the source2007 engine issue, you need to fix that on your own.)
  • The config file for VMTs (materials.xml) is there if anyone notices $crazyNewTextureDirective isn't working.
  • Now looks for NAV files in addition to AIN. If either file exists and you don't want to pack them, you have to de-select them at the appropriate screen.
  • FYI, if you want to reset your window sizes etc. Delete the files in the folder
    Code: Select all
    %appdata%\Technofovea\PackBSP
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: PackBSP 2.0 Beta 1 needs testing

Postby jasonthx on Sat Jul 10, 2010 4:27 am

I checked out your map packer Terr and it looks pretty nice.

It looks very simple but nice.

I will give you my feedback about packer soon.

At the moment what are the differences between PACKBSP and PAKRAT?
jasonthx
Member
Member
 
Joined: Sat Jan 30, 2010 10:07 am

Re: PackBSP 2.0 Beta 1 needs testing

Postby Terr on Mon Jul 12, 2010 4:48 am

jasonthx wrote:At the moment what are the differences between PACKBSP and PAKRAT?


  • It "knows" which files are in the GCFs and which ones are actually custom. Because of that, if you put in "grandfatherclock.mdl" PackBSP is able to know you have something missing.
  • It reads the FGD files (the same files used by Hammer) so that it can detect materials and models used by entities for whatever mod is being packed-for.
  • For static props, it only packs the skins that are actually needed for those props.
  • It isn't a project abandoned by the author with no updates for the past three years. ;)
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Return to Programming

Who is online

Users browsing this forum: No registered users

cron