Program "Patch tool" for files like XX/XX.bin

AlexXsWx

Active Member
Edit 2023 Aug 31: This thread is now deprecated in favor of https://www.freestepdodge.com/threa...a6-filesystem-and-convert-kidsobjdb-xml.9321/
I figured out the format and encryption used in "patch" files like e.g. Dead or Alive 6/36/36.bin which store certain type of the resources, such as moveset bins, their accompanying "dev info", combo challenges, main menu config, localization strings, a lot of scripts, movies, one xlsx spread sheet ( o _ O ) and more. All files except xlsx and wmv seem to use some internal binary format, and my browser tool / parser can parse some of them.

I wrote some python scripts that allow to extract these files and allow to create your own patch files (the game detects and uses them automatically). This allows to bypass the resrtiction of same-size-or-less-than-original that affects my hitbox viewer mod / swapper; potentially allows to create brand new resources and maaaaybe even allows to mod non-pc versions of the game (if anyone knows how to edit the filesystem). See README inside the zip for more info.

v1.0.0 (2023jul15): https://www.mediafire.com/file/6yl689p28z5rfaq/doa6PatchTool-v1.0.0.zip/file (mirror)

Note: this is not a replacement for tools like redelbe or RDBtool, since it works on different set of files / resources.
 
Last edited:

WAZAAAAA

Well-Known Member
some random surface-level findings for fun



eyyy STRINGS
we get to see the terrible swear chat filter in all its glory, lifechanging discovery jajaja from hash0x786F5AFA_decrypted_inflated.rpack https://snippet.host/xgdeiu.txt it's mostly Japanese, English, Chinese and Korean words, and it sucks donkey balls just like every other game that uses one (what the fuck is a rolegold that word's censored like 5 times)



real talk though that one xlsx file is interesting, closest thing to commented DOA6 code we have lol. Direct link for the lazy: https://www.mediafire.com/file/nxobw6twv6z4831/hash0x02F49AC2_decrypted_inflated.xlsx/file

some metadata:
Code:
---- XML ----
Last Modified By                : 久保田 敏昭
Create Date                     : 2018:07:23 03:28:17Z
Modify Date                     : 2018:08:01 04:50:13Z
Application                     : Microsoft Excel
Doc Security                    : None
Scale Crop                      : No
Heading Pairs                   : ワークシート*3*名前付き一覧*4
Titles Of Parts                 : csv制御*CSVデータ取込み*設定*icon*list*name*situation
Links Up To Date                : No
Shared Doc                      : No
Hyperlinks Changed              : No
App Version                     : 12.0000

it has Excel macros too
Sheet1 (csv制御)
Code:
Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
Sub Csv_Import()
  
  
    Dim A_Sheet  'Excelファイルのシート名を入れ込む変数'
    Dim Csv_Import_File  'Excelファイルに取り込むCSVファイルの名前を入れ込む変数'
  
    A_Sheet = ActiveSheet.Name  '現在アクティブなシート名を変数 A_Sheet に入れ込む'

    Csv_Import_File = ThisWorkbook.Path & "\" & "command_list.csv"   'CSVファイルを読み込む'
    If Csv_Import_File = "False" Then Exit Sub  'キャンセルなら終了'
  
    ThisWorkbook.Sheets("CSVデータ取込み").Range("A2:ZZ100000").ClearContents  '「CSVデータ取込み」シートのセル「A1~ZZ100000」をクリアする'
  
    With Workbooks.Open(Csv_Import_File)
        .Sheets(1).Range("A2:ZZ1000").Copy
        ThisWorkbook.Sheets("CSVデータ取込み").Range("A2").PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
        .Close  'CSVファイルを閉じる'
    End With
  
    Worksheets(A_Sheet).Activate    'A_Sheet という名前のシートをアクティブにする'

End Sub

Sub saveAsCSV()

    Application.DisplayAlerts = False
  
    Sheets("CSVデータ取込み").Copy
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "command_list.csv", _
        FileFormat:=xlCSV
    ActiveWindow.Close
  
    Application.DisplayAlerts = True

End Sub

ThisWorkbook
Code:
Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
Private Sub Workbook_Open()

    Dim A_Sheet  'Excelファイルのシート名を入れ込む変数'
    Dim Csv_Import_File  'Excelファイルに取り込むCSVファイルの名前を入れ込む変数'
   
    A_Sheet = ActiveSheet.Name  '現在アクティブなシート名を変数 A_Sheet に入れ込む'
 
    Csv_Import_File = "K:\Muscle\50_Tech\02_Data\Plugins\MotorEditor\tools\define\command_list_situation_def.csv"   'CSVファイルを読み込む'
    If Csv_Import_File = "False" Then Exit Sub  'キャンセルなら終了'
   
    With Workbooks.Open(Csv_Import_File)
        .Sheets(1).Range("B1:C100").Copy
        ThisWorkbook.Sheets("設定").Range("E3").PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
        .Close  'CSVファイルを閉じる'
    End With
   
    Worksheets(A_Sheet).Activate    'A_Sheet という名前のシートをアクティブにする'

End Sub

there's more macros but they look empty and boring



there's a bunch of debug menu mentions scattered here and there, here's just 2 files
Code:
 =============  SAVE REPLAY ) BACK TO DEBUG MENU(matching entry cancel)  BACK TO DEBUG MENU ª°   5 Å      ÿÿn   


7mode::replay::is_max_data_num "  Mémode::option::get_enable_auto_save  Ûx*¯sound::set_ignore_bgm  U6battle::rematch  C…Ùïbattle::next_match  Bbattle::restart_course  f½æbattle::save_replay  ¬3‡Übattle::save_replay_auto  a€Übattle::save_replay_busy  ì{©Þbattle::save_replay_canceled  Køíybattle::is_online_rank_match  SZƒÍbattle::resume_select_menu # .å˜2battle::resume_matching_select_menu ! Œ¶l¶battle::resume_online_select_menu  J5Sbattle::set_tutorial  8‹Å¤debug_menu::debug_menu::x  9‹Å¤debug_menu::debug_menu::y  ëtÈädebug_menu::debug_menu::num  Yùƒdebug_menu::debug_menu::cursor  ê?ºõdebug_menu::set  ºM •debug_menu::is_focused  R[Udebug_menu::is_selected  ›¦'debug_menu::label  ×)üdebug_menu::indent  ÞHdebug_menu::edit_integer  VèÊådebug_menu::edit_count  ߦ„debug_menu::edit_boolean  Ÿ Çdebug_menu::update  ZÚ
debug_menu::current_pos  ‘ôdebug_menu::current_menu  ¨$®debug_menu::suspend  êdebug_menu::resume  íS©UANIME_REWARD_ALL_PLAY  àñ¯


Rank Match  Lobby Match  Combo Challenge Select  Movie 
Random Filter " Character Select(Debug Model Test)  Free Training Test  ZAC  ZAC_COS_001  ZAC_FACE_001  S0003CHK  Battle Closing  Battle Result Ranking  Battle Result Quest
 
Last edited:
ALL DOA6 DOA5 DOA4 DOA3 DOA2U DOAD
Top