(guides assume you're on Windows)
- download REtool
- download Ghost Trick filepath list
retool -h GTPD_PC_Release.list -x re_chunk_000.pak
primer:
- Ghost Trick runs on Capcom's RE Engine. REtool is an unofficial tool for dealing with the engine's file formats
- all resources are stored in a big file named
re_chunk_000.paklocated in the game's installation directory (which is accessible in steam through [right click] > Manage > Browse local files) - unlike a typical archive format like .zip/.rar/.7z, .pak files don't have filenames plainly stored in a way that REtool can reliably retrieve, so you also need to give it a list of names to read from so it knows what to name the things it's extracting. if you don't, you'll be stuck with a bunch of files without discernable names and your life will become harder
what to do:
- download RETool from the link above and extract
REtool.exeto the game's installation directory (the same folder asre_chunk_000.pak) - download the filepath list from the link above, into the same folder
- open a command prompt in that folder. there are a billion ways to do this but the easiest way is typing
cmdinto the address bar in file explorer - type
retool -h GTPD_PC_Release.list -x re_chunk_000.pakto extract everything. when it's done there'll be a folder namedre_chunk_000with all the stuff - you'll notice there are still hundreds of files without proper names (that look something like
15349567-2389623703.bin). this is normal and most of those files are unimportant/not unique to Ghost Trick, so you can ignore them. it happens because the list we passed to REtool has most but not all filenames, so anything missing will end up with a name like that
(everything here assumes you've just done all the things above)
- type
for /r %f in (*.tex.*) do retool -tex %f. this will recursively convert every .tex file to .dds, which is readable by image editing programs like paint.net
- they're just .wav files with an extra header in front. you have two options:
- if you have Python installed, run this script to convert to and from the format
- open up a hex editor (e.g. HxD) and remove the first 78 (0x4e) bytes, then change the file extension to .wav
- they're just .wmv files. change the file extension to .wmv and you're set
- except for
natives/stm/streaming/movie/igt_op_480x320_500kbps.mov.1, that's an .mp4
- download REMSG_Converter, and type
for /r %f in (*.msg.*) do remsg_converter %fto convert recursively to .csv, which you can open in excel or any text editor. add-m jsonto use json instead
- these are encrypted OpenType and TrueType font files. you can encrypt/decrypt them using REE.FontsCryptor from the REE.PAK.Tool repository (as of writing binaries aren't provided, you'll have to build it yourself)
- you can use the RE_RSZ 010 Editor template to read and edit these
(this is a non-exhaustive list)
- facepics/portraits:
natives/stm/charfiles/3d/08_face - backgrounds:
natives/stm/charfiles/2d/02_bg - character animations:
natives/stm/charfiles/2d/01_human - object animations:
natives/stm/charfiles/2d/03_gimmick - ui:
natives/stm/charfiles/3d/06_id
- bgm:
- remastered:
natives/stm/streaming/sound/bgm_new - original:
natives/stm/streaming/sound/bgm_resource
- remastered:
- sound effects:
natives/stm/streaming/sound/se_resource
- cutscenes:
natives/stm/streaming/gui/ui010500/tex - unused trailer:
natives/stm/streaming/movie
- it's all in
natives/stm/gamedesign/text
- they're in
natives/stm/gui/font/outlinefont
- Junkyard -
st01 - Pigeon Man's Office -
st02 - Prison -
st03 - The Chicken Kitchen -
st04 - Lady's Red Apartment -
st05 - Lynne's Apartment -
st06 - Kamila's Old House -
st07 - Office of the Troubled Man -
st09 - Drive to Chicken Kitchen -
st10 - Special Investigation Unit -
st11 - Temsik Park -
st13 - The Yonoa -
st14 - Prologue & Credits -
st15
- Sissel (human) -
cicel - Sissel (cat) -
neko(猫, lit. "cat") - Lynne -
linne - Ray -
kuneri - Nearsighted Jeego -
killera - Commander Sith -
sisu - Masked Muscleman -
migi(右, lit. "right") - "One Step Ahead" Tengo -
killerb - Kamila -
girl - Missile -
pome("pome[narian]") - Emma -
fujin(婦人, lit. "madam") - Amelie -
eimin(永眠, lit. "death") - Justice Minister -
daijin(大臣, lit. "minister") - Detective Mccaw -
keijig(刑事, lit. "detective g[reen]") - The Blue Detective -
keijib(刑事, lit. "detective b[lue]") - Odd Blue Doctor -
doc - Inspector Cabanela -
kaba - Detective Rindge -
caron - Guardian of the Park -
birakubari(ビラ配り, lit. "handing out leaflets") - Pigeon Man -
kanri(管理, lit. "management") - Chicken Kitchen Cook -
cock - Typical Cop -
keikan(警官, lit. "policeman") - Officer Bailey -
keibia(警備, lit. "guard a") - Rock Jailbird -
rock - Curry-loving Jailbird -
shujinb - Detective Jowd -
jodo - SIU Chief -
bucho(部長, lit. "department head") - Memry -
waitress - Dandy -
yukaib - Beauty -
yukaia - Chicken Kitchen Bartender -
barten("barten[der]") - Alma -
mama - Minor Crew Hand -
zako(雑魚, lit. "small fry")
- Fluffy Mod Manager - mod manager for RE Engine games (for modifying assets)
- REFramework - scripting and mod framework (for modifying game logic)




I've updated the script to fix those issues, thanks for reporting. My bad for not testing against all the files before posting it...
This is what I have currently for the srcd struct:
I monitored the game's file i/o and confirmed that the "bgm" flag is for streaming audio (which is why I've renamed it to strm).
unk0 is definitely not a hash of the audio, since there are some duplicate .asrc files where the only difference between them is unk0 (even the source id is the same).
natives/stm/streaming/sound/common/se/cursor_1644.asrc.31andnatives/stm/streaming/sound/gs6/se/sys/cursor_1644.asrc.31are examples of this. It might be a murmur hash of some string... maybe the source id is too, who knows.I don't know what urate is for, changing it doesn't seem to affect anything. No idea what unk1 could be either.
Markers are sample positions that are used primarily to sync the game script to streamed sound effects (via
stse_mwandstse_mwn) or BGM (viabgm_mw). You'll see them in things like Andistan'dhin's singing and Rayfa's Divination Séance intro.