Opening GH2 ARKs

GH2 stores its files in a container called an ARK. If you've ever used a tarball on Linux, same premise. It's a file containing a bunch of other files, one you'll either need to rebuild or edit directly to get your new files into the game. Harmonix used these to get around the 8.3 filename limitation on DVDs.

There's a few very readily available, easy ways to get into an ARK, each with their own catches and benefits. I'll be explaining how to get in the game files with three of them, really just to cover our bases.

Step 0: Extract the files from your GH2/GH80s disc

This is the easy part. Put your disc in the drive (or double-click your ISO, if you're using one and Windows 10) and navigate to its files. You'll see three folders (GEN, IOP, and VIDEOS) and two files (SYSTEM.CNF and a funky one with letters and numbers, that being the game executable). Make a nice new home for them on your hard drive and copy them over. It shouldn't take too long.

Mmm, fresh from the disc

The GEN folder is the important one to us, since that's where the game files live. In that folder will be an HDR file, which is basically a giant file directory for the game to look through, and the ARK. You'll have to point some of the tools to one or the other.

The recommended way: ArkHelper

Nowadays, you should be using PikminGuts92's ArkHelper, which is part of his Mackiloha suite of tools. There's a few good reasons for that I'll get into in a moment. It's command-line, so if you've never used a Command Prompt, you're a bit stuck for now. The other two ways are graphical, so I won't be explaining it here.

Mackiloha requires .Net Core 3.1, it should be noted. If you get "A fatal error occurred, the required library etc etc" or something similar, you don't have it installed. You can grab it from that link over there.

Once you've got Mackiloha situated, cd over to the GEN folder in your Command Prompt. One of mine, for example, lives in C:\Users\mariteaux\Desktop\customdisc\GEN. ArkHelper, like all of Pikmin's tools, has a pretty simple structure for the command, namely:

arkhelper [verb] [path1] [path2] (any relevant switches)

We'll be using the ark2dir and dir2ark verbs here. So after you've navigated to your GEN folder, drag the arkhelper.exe into the Command Prompt window, and the full path to the program will expand out. Press space, and in order, give it:

  1. ark2dir
  2. The path to the MAIN.HDR (you're already there, so just MAIN.HDR)
  3. The path to where it should spit out the extracted files (good to have an expanded folder next to the GEN folder for convenience)
  4. -a (to extract ALL files)
  5. -s (If you have the dtab executable in the same folder, this converts the game's scripts to plain text, and trust me, you want that)

So for me (your paths will look different), in all:

C:\Users\mariteaux\Dropbox\Programs\ghmodding\Mackiloha\arkhelper.exe ark2dir MAIN.HDR C:\Users\mariteaux\Desktop\customdisc\expanded\ -a -s

You should end up with copies of every single file in the ARK when it's done, so be patient.

To take your expanded files back to ARK form, use dir2ark instead. Your first path will instead be to the expanded folder, and your second path will be to the GEN folder, not to MAIN.HDR.

C:\Users\mariteaux\Dropbox\Programs\ghmodding\Mackiloha\arkhelper.exe dir2ark C:\Users\mariteaux\Desktop\customdisc\expanded\ C:\Users\mariteaux\Desktop\customdisc\GEN\

(Again, if dtab is present, ArkHelper will automatically convert plain text scripts back to their DTB form.)

Pros of ArkHelper

  • Makes folders on your computer for you to work in, rather than using a clunky tool. New song on-disc? Make a folder on your computer and drop the files in it. Wanna get rid of all the existing songs? Delete all the folders. Then just rebuild the ARK.
  • Ridiculously convenient with a batch file. If you're good with batch files, you can write ones to build and extract ARKs with a single click. Absurdly convenient.
  • Can convert between DTBs and DTAs on build and extract, if it can see a copy of dtab. If you either have dtab in your path or a copy of dtab in the same folder as the ArkHelper executable, it'll tokenize and encrypt (and vice versa) all the scripts the game uses, letting you edit Data Array in plain text and never have to manually convert scripts ever again.
  • Can add files, rename them, delete them—whatever you need. Some older methods of opening an ARK don't let you add or remove files from an ARK, but ArkHelper can do whatever you need to.

Cons of ArkHelper

  • It's a command-line app. This isn't a con if you know how to use the Command Prompt or write a batch file, but if you're new to such things, I'm sure it looks a little daunting. I've written a separate tutorial on using dtab, which is another command-line app, and that explains more about how to use a Command Prompt than I'd like to get into here.
  • Building a new ARK from scratch every time is a bit inefficient. ArkHelper can cache DTBs to skip that rebuilding process, but sometimes, it's faster to just open ArkTool up and add one file than to rebuild an entire ARK.

Speaking of!

The solid (if clunky) backup way: ArkTool

ArkTool was my preferred method of adding files to the game before I properly tried ArkHelper. It's far quicker to get situated with (and graphical), but you'll pay for it in how clunky and slow the UI is to use for bigger tasks. Regardless, good backup option. It and Ark Expander are found in my toolkit.

ArkTool with an ARK loaded

Once you've gotten it extracted out along with your game files, double-click to open it and go into File > Open. You'll get a dialog telling you to go looking for ARK files. Navigate to your GEN folder. The contents of your ARK will appear in the main window.

From here, it's basically like any other tree view. Right-click for your menu of stuff to do in an ARK. Here's a cheat sheet of some keyboard shortcuts to make it a bit faster:

  • Ctrl+D: Makes a new directory under the currently selected one.
  • Ctrl+E: Extracts out files and folders in an ARK to your computer.
  • Insert: Gives a dialog for adding loose files to the ARK.
  • Ctrl+R: Gives a dialog for replacing the currently-selected file.
  • Delete: Deletes the currently selected file or directory.

Pros of ArkTool

  • Very little setup. You basically just extract and run and you're ready to start toying with files.
  • Encrypts and decrypts for you by default. Scripts in GH2 are encrypted by default and need to be decrypted before you can work on them or convert them to plain text. ArkTool does this automatically on extract or add/replace, unless you tell it not to.
  • Can add, delete, and rename files in an ARK.

Cons of ArkTool

  • Abysmal UI. All credit to xorloser, talented bastard, but everything about the UX of ArkTool is terrible. No batch adding files, no batch deleting them, none of that. Keyboard and context menu for damn near everything.
  • Ridiculously cryptic error messages. If anything goes wrong in editing your ARK, anything from "there's no ARK in that directory" to "your ARK is corrupted" "you deleted the file you were adding before I could add it" (which is very easy to do—it doesn't add files until you save the ARK, for the record) will get you some very plain and cryptic messages. Hope you're keeping a hawk's eye on everything you do in it.
  • Bloats an ARK quite easily. This is a subtle one, but ArkTool doesn't remove files from an ARK when you delete them, it only deletes the references to those files in the HDR. This means you can end up with a very bloated ARK if you take out or add a ton of extra files.

The convenient (and limited) backup way: Ark Expander

Ark Expander is my third and least recommended backup method. It's a Java application that will blow up an ARK to a directory like ArkHelper does—with a seriously major catch in that you cannot add, delete, or rename anything in that directory, or your ARK will never build again.

Why do I list it then? Because Scott swore by it for years prior to using ArkHelper and it still does what it says on the tin. It's also good if you're using ArkTool and looking to combat the bloat problem—on ARK rebuild, Ark Expander will only add in the files that are still present in the HDR, shrinking your ARK massively.

Ark Expander, ready to expand

Double-click it. If it doesn't work, you need Java (but I'm assuming you have it). It's simply two text boxes for two paths, your GEN and the expanded folder. Unlike ArkHelper, Ark Expander will not create the expanded folder for you, so be sure to do that before you expand it. Then just use one of the two buttons to either extract the files from your ARK or rebuild the ARK.

Pros of Ark Expander

  • Little setup.
  • Fairly self-explanatory. Two paths, two buttons. You almost can't fuck it up.
  • Combats ArkTool bloat, if you happen to fall into that niche problem area.

Cons of Ark Expander

  • The aforementioned delete/rename catch. Seriously, be careful. You can replace anything you like in an ARK, just make sure all the same files are in place the entire time.
  • Will not perform crypts on scripts. You'll need to encrypt or decrypt any DTBs yourself before you do any work on them. This is an extra step you're either willing to tolerate (like Scott did) or not.