DX Archive

From XentaxWiki
Jump to: navigation, search

Back to index | Edit this page

DAT, WOLF, BIN, DXA, TEC, PAK, ARC, LED


Format Specifications

// DX Archive (v6) file format

// little endian

// Note: Whole archive is encrypted and compressed in most cases.
//       Custom key is required to parse data.

// header (48 bytes)
2 bytes (char) - signature  // "DX"
2 bytes (uint16) - version  // 6
4 bytes (uint32) - archive tail size (filename table + file table + directory table)
8 bytes (uint64) - data start address  // 48
8 bytes (uint64) - filename table start address (also tail start offset)
8 bytes (uint64) - file table start address  // relative to tail start
8 bytes (uint64) - directory table start address // relative to tail start
8 bytes (uint64) - code page // e.g. 1252

// data
num_of_files *
{
   x bytes - file data
}

// tail
{
   // filename table
   num_of_files *
   {
      2 bytes (uint16) - number of "packs"   // It can be calculated like this:
                                             // num_of_packs = (filename_length + 3) / 4
      2 bytes (uint16) - Parity?
      x bytes (char) - filename in uppercase + padding // e.g. "WHITE_BACK.JPG"
      x bytes (char) - filename + padding // e.g. "white_back.jpg"
   } 

   // file table (64 bytes per entry)
   // It contain headers for all files in archive
   // Note: There is one additional entry at the beginning (e.g. we have 32 files, but 33 entries)
   num_of_files+1 *
   {
       8 bytes (uint64) - filename offset  // relative to tail start
       8 bytes (uint64) - file attributes
       8 bytes (uint64) - file create time
       8 bytes (uint64) - file last acces time
       8 bytes (uint64) - file last write time
       8 bytes (uint64) - file data offset  // relative to header end?
       8 bytes (uint64) - file data size
       8 bytes (uint64) - file press data size
   }

   // directory table
   // Note: There is at least one entry in this table (for main dir)
   num_of_directories *
   {
      8 bytes (uint64) - directory offset // relative?
      8 bytes (uint64) - parent directory offset  // "-1" if there is no parent
      8 bytes (uint64) - number of files in directory
      8 bytes (uint64) - first file header offset for this dir  // relative to end of filename table
   }
}

MultiEx BMS Script

Not written yet.

QuickBMS Script

Notes and Comments

  • This file format occurs in games made in Wolf RPG Editor and in games using DxLibrary.
  • Archives using this file format are encrypted with custom XOR algorithm. Each game may use different 12-byte XOR key. Since version 7 of the archive security has been improved.
  • Files inside archive may be compressed with Huffman compression.
  • There are several versions of this file format and there are some differences in maximum key length:
v1-6 max key length = 12
v7 max key length = 32
v8 max key length = 56

Games

List of games using this file format:

  • Artemis Pearl Omake (PC) (*.WOLF)
  • Castle Evil (PC) (*.DXA)
  • Dungeon Town (PC) (*.DAT)
  • Gensokyo Shiki (PC) (*.DAT)
  • I was Reborn as an Angel so I Decided to Conquer the World (PC) (*.WOLF)
  • Labyrinth of Touhou ~ Special Disc (PC) (*.DXA)
  • Labyrinth of Touhou 2
  • Mad Father (PC) (*.WOLF)
  • Magic Castle RePure Aria (PC) (*.DXA)
  • Prelude (PC) (*.DXA)
  • Rosenkreuzstilette (PC) (*.DAT)
  • Rosenkreuzstilette Freudenstachel (PC) (*.DAT)
  • The Imperial Gatekeeper (PC) (*.WOLF)
  • Viocide Vore Side Action RPG (PC) (*.DAT)
  • Many more...

Keys

Keys listed below are shared for educational purposes only.
Please don't use them to steal assets from games.

Game Title Key (hex) Key (ASCII)
Rosenkreuzstilette v2.00a
Rosenkreuzstilette Freudenstachel (trial) v0.07a
AC36E2889ADE96323B36E18F
9596F8098BDF8A922B1540BE
SchweringIsC
jirotsuke
Rosenkreuzstilette Freudenstachel v2.02c
Rosenkreuzstilette Freudenstachel v1.00a
AC36E2889ADE96323B36E18F
9637EF2996D59E52AB0C91A8
SchweringIsC
isemiyamustdie
Innkeep Girl: Connie vs The Succubi Within (18+)
Sealed Room Breed (18+)
Sealed Room Breed 2 (18+)
8E57E31998CD9253831E60AF quingamepakc
Wolf RPG Editor v1.10
Wolf RPG Editor v1.20
Wolf RPG Editor v1.30
Wolf RPG Editor v1.31
Wolf RPG Editor v2.00
Wolf RPG Editor v2.01
Wolf RPG Editor v2.02a

Paranoiac
The Holy Grail Of Alharahn v1.12
F0356B1CFB9BED1D0370E32D n/a
Gensokyo Shiki 8607E9B9CE9ECEB9994E41BC ypcd121231
Labyrinth of Touhou - Special Disc 9DF6E8099CC39999914DF0A3 bobocof322
Magic Castle RePure Aria (18+)
The Paradise Fortress of RePure Aria (18+)
The Paradise Fortress of RePure Aria 2 (18+)
Rakuen Iseki no Limulilim (18+)
Hide and seek v0.7
DESTROY ALL THEM! HOR v1.00
OneSute - One Stage Shooting v1.00
FallinBlockRisinBaloon v1.00
SINRYO v1.00
X-mission v1.01
PrimumDeleo v1.05
Full Swing v2.0.0
Falling Pieces v1.22
th2nd the first step v0.01
CYBERNICS
Stick Life On v1.20_2
LIGHT LINE v1.12
I wanna be the 3D!!
Full Light v1.3
WizColor v1.0.1
55AA2055550655AA55D57C66 n/a
High Priest Adventure (18+) FFFFFFFFFFFFFFFFFFFFFFFF n/a
Viocide Vore Side Action RPG (18+) 9DF6E5C88BCE90129B0BF0A3 boost
Labyrinth of Touhou 2 AD14C4698CEBB077923E32A5 RANisGOD
Prelude (18+) 760F1A237D5C730C94124E3C n/a
Wolf RPG Editor v2.10
Misao v3.03
TSMS #4: The Hanged Man - Voiceless version
TSMS #3: The Boogie Man v2 - Voiceless version
TSMS #2: The Sandman v2
TSMS #1: The Crooked Man
Mad Father v2.08
Mad Father v2.01 - English
Midnight Puppeteer v1.08
Alicemare v1.07
Mermaid Swamp
Purgatory 2 v1.70e
One Way Heroics v1.88
Sexy Chronicles of Demon Queen Melissa (18+)
Magical Change Alice (18+)
B39DA084D737531FF1081880 n/a
Wolf RPG Editor v2.20
Wolf RPG Editor v2.21
Wolf RPG Editor v2.24

Lola's World of Wonders
Alternate DiMansion Diary (18+)
Niplheim's Hunter - Branded Azel (18+)
1bitHeart
Treasure Hunter Claire (18+)
LiEat
LiEat 2
LiEat 3
The Imperial Gatekeeper v1.32 (18+)
I was Reborn as an Angel so I Decided to Conquer the World (18+)
Paranoiac (remake)
Artemis Pearl ~Pirate Princess Rubina and the Phantom Treasure~ v1.1.1 (18+)
The Trap of Revil (18+)
The Heroine Proceeds Alone (18+)
Submissive Hero Quest Chapter 1 (18+)
C705CA7D8DE3DEF1D90C85F4 8P@(rO!p;s5
Hentai Eater (18+) 8C57E9C98ACE8A919B0AE0AF succubus
Maidens of a Hollow Dream (18+) CE43C8DC096DA5FECE43BDDC
CE43BDDCCE98C8B9894BA5FE
unknown
1472
Recover the Restarts! v0.11 C857E0789ECFC8F6B90A70B4 7ujxac7H
unknown 4CD92AB7289BAC073E77EC4C unknown
Moekuri: Adorable + Tactical SRPG 92F6E4686FCE9032CA1E00A3
92F6E4689EC19032CB1E00A
92F6E4689EC19032CB1E00A3
unknown
unknown
monya
Touhou Puppet Dance Performance - Shard of Dreams 9B16FE3A98C2A0730B0BB590 dat\gn_dat6\
Touhou Rhythm Carnival! Scarlet 9B16FE0D96C19E132B50E1B5 dat/image/sy
Dungeon Town (18+) 95F6EBA9B9EDBDB70B1980A3 joaeFABBafeo
Castle Evil (18+)
Suicider (18+)
Happy Bird in Patino (18+)
Minerva's Adventure - Slave One - (18+)
Heroine Syndicate: Blessing of Goddess (18+)
A933E2EAA8F4BD55B24C509D V3hQWXBU
Trouble Travel ~Spirit Road~ (18+)
Let's play with Eva (18+)
D5FECEE4F3BEC7 (v8) V3hQWXBU
TouchyAria Mini Game (18+) unknown unknown
Wolf RPG Editor v2.255
Wolf RPG Editor v2.264
Wolf RPG Editor v2.271

Two beasts or Not to Beast!! (18+)
Kanade Rogue-like+ (18+)
Artemis Pearl Omake v1.1 (18+)
Submissive Hero Quest Chapter 1 v0.94K (18+)
56F06CA787CF0E (v8) WLFRPrO!p(;s5((8P@((UFWlu$#5(=
Len'en Mugenri ~ Evanescent Existence v1.20a
Len'en Tasouken ~ Earthen Miraculous Sword v1.20a
Len'en Reiretsuden ~ Reactivate Majestical Imperial v1.21a
Len'en Ten'eisenki ~ Brilliant Pagoda or Haze Castle v1.20f
B496F9E992CDB2D2A31A40BE KisamaMiteir
Sanae Challenge! FUSION 9EC6E3C99ACD93D21B1AC0A0 alice
Rumian Land 8D57E7699EDE8A524B1EF1B9 rumia
Sakuya's Crisis - The Perfect Elegant Skill
Maid Crisis - The Elegant Region Power
9916EF6990CD95D3931040AA faeioajaroi
Remidoki - The Mistress' Heart-Throbbing Adventure: The Cursed Mansion 8BF6E709A0CD94D3731A91A3 tomo_akane
Koumajou Densetsu II: Stranger's Requiem EFC12001DCF7BB72FACBF201 n/a
JOINUS: simple shooting unknown unknown
Red v1.10 unknown unknown
Dragon v1.02
MadaraBato v1.00
726CE3CB4B899A (v8) xKKFVPkucQt70ELkiqir
TriSpark v2.10 unknown unknown
GLORYWING Operation Iron Storm unknown unknown
ASTLIBRA v1.25 E328DE393AF634 (v8) keizo115
Kerochan 79092017D7198A (v8) data
Torigoe v3.04 BB63BA8CB995C9972249D5FB D607F96CD607
Wonderful battle dreamer v0.102 B7FD7C0ADC68BB (v8) Tir261109010
DarkSorry v1.1b unknown unknown
Last Stage v4.3.2 9856B81B8F8FCAB2210D418C ge2Np#5j$ry@
DRAGMENTS LOAR 95A6E05995C695B2531570A6 jjjjj
NecoconNeco v1.01 AC86E3D8CFEBBE322B2C50A5 Shir0GAne
Thunder Faith v1.01 8657F3A894C38CD36B1EC2A5 yuyukosamaAi
Unlimited Heroes AB54D9BAA7F8BA95A2279389 TESTX
TLBG -Tactical Link of Battle Gears- 9437E3D89AD88CD3894DE5F8 ksiretsa1234
Miyokunotori CD03BBDCCE9CCF79814DC5F4 201210040218

Compatible Programs

Usage Examples

Here are some examples of using programs listed above:

Guessing the key:

DXArc.exe b "scenario.dat"

Extracting data with hex key:

DXADecode.exe -K:AC36E2889ADE96323B36E18F "script.dat"

Extracting data with ASCII key:

DXADecode.exe -K:RANisGOD img2.dxa

Creating new DX archive with custom ASCII key:

DXAEncode.exe -K:aabb1 in_dir out_file.dxa

Note: There is some bug in the tool that prevents creating proper archives for english users.
To fix this issue, you have to change your Windows locale settings to Japaneese.


See Also