Jump to content
Sign in to follow this  
maddogx

unBuildArmA

Recommended Posts

Hi fellas,

in the course of my work over at ACE mod, I've created a small tool to help addon makers - specifically modellers and map makers - get all those ArmA PBOs unpacked and all the config and RVMAT files unRap'ed. The tool uses cPBO and unRap by Kegetys, and more or less automates the entire process of unpacking and unRap'ing the entire Addons folder and putting everything into the proper Ca\... folder structure by reading the "$PBOPREFIX$" files.

I thought this tool might be helpful for people who want to get their tool drives setup quickly and easily, so I've decided to release it to the public.

The program was written in C# using Visual Studio 2005 and it comes with (and requires) cPBO and unRap, courtesy of Kegetys. (I will try and contact Kegetys about this. Not sure if he allows redistribution of his tools.) At the moment unBuildArmA is still in a "beta" stage, meaning it works for all intended purposes, but it may still contain some bugs. The program is provided as free software and I can provide the C# source files on request.

<span style='font-size:12pt;line-height:100%'>NOTES</span>

- The tool completely discards p3d files, as they are all in ODOL format and thus not usable. You will need to manually copy the MLOD p3d files provided by BI into your CA folder, once unBuildArmA has finished its work.

- This tool comes with no official support or warranties. If you have problems using it, feel free to ask for help in this thread and I will do my best. But I cannot provide anything beyond that, and I cannot take responsibility for anything that may go wrong while using this program. Rest assured though, that it has been tested thouroughly and should not do anything other than what is intended.

- Depending on your CPU and hard drive speeds, the unpacking and copying process may take a while to complete. During this time, temporary folders will be created inside your ArmA addons directory. These will be deleted once unBuildArmA is finished. Also rest assured that none of your stock addons fill be harmed.

<span style='font-size:12pt;line-height:100%'>REQUIREMENTS</span>

You should preferrably have ArmA and the BI tools installed, otherwise you will need to manually provide directories for unBuildArmA to work with.

<span style='font-size:12pt;line-height:100%'>DOWNLOAD</span>

Version 1.04b (65kb):

<span style='font-size:10pt;line-height:100%'>Download from MadDogX.de </span>

<span style='font-size:10pt;line-height:100%'>Download from Armaholic.com </span>

<span style='font-size:10pt;line-height:100%'>Download from ePrison.de </span>

<span style='font-size:12pt;line-height:100%'>CHANGELOG</span>

1.04 BETA

# User is now asked if he wants to include P3Ds

# Fixed a problem with existing directories causing crash

1.03 BETA

# P3D files are no longer discarded, as they are required after all

1.02 BETA

# Added better directory control for the user

1.01 BETA

# Added exceptions list, to prevent extraction of unneeded files, such as voice.pbo

1.00 BETA

# Initial release version

<span style='font-size:12pt;line-height:100%'>FEEDBACK</span>

All feedback is welcome. If you have suggestions for functionality or find a bug, let me know.

regards

MDX

Share this post


Link to post
Share on other sites

Nice project idea MadDog .... timed well because I'm yet to un-PBO all my default addons.

But questions on issues of concern before I press the go button.

- Is there user intervention or does this thing simply start ripping thing apart straight away?

- Does it ask what directories these all come from and ask where these are all going too?

- Does it show where its going to take and send everything BEFORE the "start" button?

- Will it overwrite stuff?

I don't like tools that pretend they can gleen all required info just from registries and assumes everything goes back to a "P" drive in "CA" directory.

Share this post


Link to post
Share on other sites
Gnat @ June 11 2008,11:19)]- Is there user intervention or does this thing simply start ripping thing apart straight away?

- Does it ask what directories these all come from and ask where these are all going too?

If the registry keys for ArmA and for your BI tools drive are present, it will indeed start immediately. Since this is a pure console app with no GUI, I decided to keep the process as simple as possible.

Come to think of it, it would really be a good idea to allow the user to input his own data for the paths, even if the reg keys are found. I'll add that for 1.02 right away.

Gnat @ June 11 2008,11:19)]- Does it show where its going to take and send everything BEFORE the "start" button?

- Will it overwrite stuff?

As of 1.02, yes.  biggrin_o.gif

Gnat @ June 11 2008,11:19)]I don't like tools that pretend they can gleen all required info just from registries and assumes everything goes back to a "P" drive in "CA" directory.

And rightly so I guess. Give me a couple of minutes to fix this.  smile_o.gif

EDIT:

Updated to version 1.02b. You are now shown what directories will be used and asked if you want to change them.

Share this post


Link to post
Share on other sites

Wow !!! Now thats what I call Service.

Program changes on the run ! wink_o.gif

Nice job mate

Share this post


Link to post
Share on other sites
Quote[/b] ]- The tool completely discards p3d files, as they are all in ODOL format and thus not usable.

odol.p3d's are usable...

- usable as insertable objects into a Visitor.pew files.

- usable as proxy's in O2PE.

- usable by binarize.exe when parsing config.cpp's & model.cfg's.

As you point out though - not editable in O2PE.

The best senario is that one extracts ALL content... and then overwrites with the provided mlod versions.

Ok, so most of the models are in the BIS example .zip's recently released by them... however, not all...

Seeing as you are going to the trouble of opening all the .pbo's and going to the trouble of extracting everything, and then discarding the odol.p3d's it seems to me that you should copy them over to the <ArmAWork> drive as well as they are still quite useful... Any, that are not then overwritten by the person extracting the BIS Example model .zips over top of them are still useable as mentioned above.

Also, if they have the BIS Tools installed ( which they probably will as they are extracting all the .pbo's with your tool in preparation for modding) they will have cfgconvert.exe installed and you can also use that in place of unRap.exe... you couldn't distribute it with your app though...

Also, not to disparage your efforts... it's good to see someone writing code... but did you realize you could get exactly the same effect by using cpbo.exe to extract and then running the dos 'xcopy' command? Several lines of batch file commands...

Share this post


Link to post
Share on other sites

Updated to version 1.03b. P3Ds are now included.

Share this post


Link to post
Share on other sites
Quote[/b] ]Also, not to disparage your efforts... it's good to see someone writing code... but did you realize you could get exactly the same effect by using cpbo.exe to extract and then running the dos 'xcopy' command? Several lines of batch file commands...
Don't forget the batch file must go into every unpacked addon folder, and in every of it's subfolders to "Unrap" every .rvmat and .bisurf file out there. As they need to be unrapped to be able to be read during the binarization process.

I've written a few basic .bat files, however, I would like to see you do the above with just a few lines of .bat (Dynamic and not static) smile_o.gif

Share this post


Link to post
Share on other sites

Synide, this tool doesn't just unpack the PBOs and then copy the folders. As Sicky said, it unRaps all config and rvmat files (edit: and bisurf etc.), and it also reads the $PBOPREFIX$ for the correct PBO path and copies the folders accordingly.

Admittedly, the C# code isn't huge or overly complex either, but I'm pretty sure it's beyond what a batch file can do. Regardless of that, this tool was more of an excercise for me, because I want to practise coding with C#. Writing batch files is not very satisfying wink_o.gif .

Share this post


Link to post
Share on other sites

Excellent! I will have to try this when I get home.

Does this work on Vista x32 and x64?

Share this post


Link to post
Share on other sites
Excellent! I will have to try this when I get home.

Does this work on Vista x32 and x64?

Good question. It's a pretty simple program, so I'm guessing it does. smile_o.gif

Share this post


Link to post
Share on other sites

Yeah no worries mate... it's good to get some C# into the mix... good one - it's a worthy thing to tackle as well... Anything that helps people setup and configure their 'development environments' is a good thing...

Perhaps further down the track you might like to tackle configuration of the the build environment so as people can build stuff in a well formed manner... maybe...

I'll definitely give your prog a a crack next time I do a complete ArmA reinstall.

Quote[/b] ]but I'm pretty sure it's beyond what a batch file can do.

... oh i wouldn't be so sure... smile_o.gif ... you might be surprised at what you can do from the dos prompt...

Share this post


Link to post
Share on other sites
Excellent! I will have to try this when I get home.

Does this work on Vista x32 and x64?

For me it works on xp x86, vista sp1 / 2008 x86 and x64

Share this post


Link to post
Share on other sites

MDX, the lastest download shows "1.02" in the readme as well as the execution window.

It also keeps crashed half way through doing Animals sad_o.gif

on Animals / seagulls / data

Share this post


Link to post
Share on other sites
Gnat @ June 14 2008,14:39)]MDX, the lastest download shows "1.02" in the readme as well as the execution window.

It also keeps crashed half way through doing Animals sad_o.gif

on Animals / seagulls / data

I guess that's what happens when stuff gets rushed out. whistle.gif

I've updated the tool and will update the first post now with the new download. The tool had a bug that caused a crash if one of the directories (such as animals) was already created before. Also I've added a query to ask if the user wants to include p3d files.

BTW: you must definitely make sure that the source and target directories are not read or write protected and that there is enough space on them (at least about 550MB) due to temporary files being created.

Share this post


Link to post
Share on other sites
Gnat @ June 19 2008,03:23)]hmmmm .... crashed again when I got to CTI_buildings sad_o.gif

Gnat, is it possible that your target folder does not have enough space? By the time you get to CTI_Buildings it will already have unpacked almost 2GB of game data. The only reason I can think of for the crash is that it is somehow not possible to copy the data to the target dir.

I'm pretty sure there should be no crashes if both source and target dirs have sufficient space - which is a lot, considering that we are unpacking all game data. Previous reasons for crashes were if unpacked folders already existed or target folders already existed but these should be fixed.

Can you take a look?

Share this post


Link to post
Share on other sites

Thx MDX

119GB free on a 232GB drive, doesn't seem like thats the problem.

** I ran it a second time just now, and after a half hour or more it seems to have finished without an error again smile_o.gif

Cheers !!

Share this post


Link to post
Share on other sites

I've tried it four times now, It always gives me an error on characters/scripts... any idea why?

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×