Useless Scripts

(Big warning before we start: none of these hurt your game, necessarily, and if the game can't find a script it wants at startup, it won't boot. You really shouldn't delete anything unless you know what you're doing. Further, we already got rid of all of these for GH2DX 2.0. If you're modding that disc, you won't see these anyway. Carry on.)

I got bored one day working on Guitar Hero II Deluxe and decided to see just how many of the DTA scripts featured in the game files were needed for the game to actually work. As it turned out, less than half of them.

Just for fun, this is a complete list of all the files in a vanilla copy of Guitar Hero II you can safely delete outright (or chop off the references to and then delete), and the game will still work. This makes for a cleaner workspace with fewer files to juggle or build into an ARK, obviously.

Most of these were from Harmonix's internal development tools or remnants of the first Guitar Hero (or earlier!) left in the source tree.

Orphaned assets (never used)

These are models or textures that are never seen or used in-game.

  • ../../system/run/char/dancer/
  • ../../system/run/char/gen/chartest.milo_ps2
  • All PNGs (except for us_logo_generic_keep.png, the game actually wants that one despite it never being used and you'll get a debug warning if it's not there)

Orphaned scripts (no references from used files)

These are scripts that never get run because the used scripts don't reference them. The majority of these are in the so-called "dotdot" directories, which are very very low-level engine files and contain a lot of the cruft from earlier games that GH2 doesn't bother with.

  • ../../system/run/config/arkbuild.dta
  • ../../system/run/config/arkbuild-sliptest.dta
  • ../../system/run/config/audio_test.dta
  • ../../system/run/config/bankedit.dta
  • ../../system/run/config/bankedit_tool.dta
  • ../../system/run/config/digimask_test.dta
  • ../../system/run/config/facefx.dta
  • ../../system/run/config/heaper.dta
  • ../../system/run/config/holmes.dta
  • ../../system/run/config/midi_test.dta
  • ../../system/run/config/milo.dta
  • ../../system/run/config/milo_test.dta
  • ../../system/run/config/milo_tool.dta
  • ../../system/run/config/milo_ui.dta
  • ../../system/run/config/mplay.dta
  • ../../system/run/config/name_lights.dta
  • ../../system/run/config/nettest.dta
  • ../../system/run/config/os_test.dta
  • ../../system/run/config/pad2midi.dta
  • ../../system/run/config/rndexp.dta
  • ../../system/run/config/sch_test.dta
  • ../../system/run/config/sivmaker.dta
  • ../../system/run/config/sliptest.dta
  • ../../system/run/config/sndutlui.dta
  • ../../system/run/config/spew.dta
  • ../../system/run/config/str_test.dta
  • ../../system/run/config/synth_test.dta
  • ../../system/run/config/system_version.dta
  • ../../system/run/config/systest.dta
  • ../../system/run/config/sysutl.dta
  • ../../system/run/config/uiutl.dta
  • ../../system/run/config/unittest.dta
  • ../../system/run/config/vagutl.dta
  • ../../system/run/config/xbutl.dta
  • ../../system/run/milo/script/
  • ../../system/run/milo/cleanup.dta
  • ../../system/run/milo/milo_prefs.dta
  • ../../system/run/milo/test_object.dta
  • config/analyze_level.dta
  • config/analyze_multiplayer.dta
  • config/arkbuild.dta
  • config/arkbuild_guitar_checker.dta
  • config/arkbuild_xbox.dta
  • config/arkorder.dta
  • config/band_version.dta
  • config/bankreport.dta
  • config/facefx.dta
  • config/gh_camtest.dta
  • config/ghedit.dta
  • config/ghedit_tool.dta
  • config/gh2_pal.dta
  • config/milo.dta
  • config/milo_test.dta
  • config/rndexp.dta
  • config/systest.dta
  • config/sysutl.dta
  • config/test_game.dta
  • config/unittest.dta

Unused with references

These are files that do get referenced, but have nothing important in them. Deleting them without also removing the references will cause the game to not boot, so clear the references first.

  • config/spew.dta (referenced in config/gh2.dta)
  • ../../system/run/config/scratcher.dta (referenced in ../../system/run/config/default.dta)

Used, but can be mainlined into another file

This is stretching the definition of useless, but in the pursuit of total consolidation, these files are small enough that their references can be replaced with the entire contents of the referenced file and another standalone file can be deleted without consequence. (A fun fact about Milo's system of #merges and #includes is that technically, all files could be mainlined this way and kinda are while the game's running, though it would be absolutely disgusting to edit.)

  • ../../system/run/config/beatmatch.dta (mainline in config/beatmatcher.dta)
  • ../../system/run/config/charsys.dta (mainline in ../../system/run/config/default.dta)
  • config/beatmatch.dta (mainline in config/gh2.dta)
  • config/beatmatch_controller.dta (mainline in config/beatmatcher.dta)
  • config/gh2_version.dta (mainline in config/gh2.dta)
  • config/mem.dta (mainline in config/gh2.dta)
  • config/objects.dta (mainline in config/gh2.dta)
  • config/sfx_macros.dta (mainline in config/macros.dta)
  • config/sound.dta (mainline in config/gh2.dta)
  • config/track.dta (mainline in config/gh2.dta)