Jump to content

vagonumero13 tools (REDELBE, rdbtool, g1mtools, doa6decsave) Update 17 Aug: REDELBE 3.0


Recommended Posts

Is there any ways to get fine hair textures?

Team ninja never fix this problem...

I tested many things about this.

I renamed a fine hair g1m to broken hair g1m.

it was looks broken even just renamed.

sorry for my bad english

ex) hon_hair_031.g1m(fine) / hon_hair_001.g1m(broken)

      031 renamed to 001 = broken hair

That means g1m and g1m are not the problem.

don't know what is wrong.

EO_IFpKUwAAEYcj.png

EO_IFpLVAAA10KW.png

Link to comment
5 hours ago, rjqnraos19 said:

Is there any ways to get fine hair textures?

Team ninja never fix this problem...

I tested many things about this.

I renamed a fine hair g1m to broken hair g1m.

it was looks broken even just renamed.

sorry for my bad english

ex) hon_hair_031.g1m(fine) / hon_hair_001.g1m(broken)

      031 renamed to 001 = broken hair

That means g1m and g1m are not the problem.

don't know what is wrong.

EO_IFpKUwAAEYcj.png

EO_IFpLVAAA10KW.png

 

Try renaiming the .grp and .rigbin too and see if you notice any difference.

Link to comment

So I have the 1.15 version of the game right now and I can't run Redelbe's 2.1 version (Failed to apply patch "Layer2:PatchSRARTA"), is there a way to fix this? Or is there a place where I can download an older version of Redelbe to play it? I also managed to find 0.82 which kind of works with another version of the game (1.04), but I'm trying to play the 1.15 version.

 

It seems like I need Redelbe v1.7, does anyone have a link?

Link to comment
2 hours ago, healingbrew said:

Persona 5 Scramble uses the same engine as DoA6, full with RDBs but the format changed. rdbtool fails to extract the files. Some external files are also don't exist (.name files specifically are all missing)

Even in DOA6 some .name files aren't present (and anyway they don't longer update the ones with filenames).

Link to comment
9 hours ago, vagonumero13 said:

Even in DOA6 some .name files aren't present (and anyway they don't longer update the ones with filenames).

The value in the KRD_ value at 0xC is the system constant. it's 0x10 on the Switch.

This is consistent with the system constant on G1T files: https://github.com/healingbrew/Cethleann/blob/master/Cethleann.Structure/DataSystem.cs

Persona 5 Scramble has 0x10 on it's RDB files, and Romance of the Three Kingdoms 14 has 0xA on Windows.

It could prove useful for determining platform specific quirks

 

By the way, do you know how file IDs are hashed in DoA6?

Link to comment
6 hours ago, healingbrew said:

The value in the KRD_ value at 0xC is the system constant. it's 0x10 on the Switch.

This is consistent with the system constant on G1T files: https://github.com/healingbrew/Cethleann/blob/master/Cethleann.Structure/DataSystem.cs

Persona 5 Scramble has 0x10 on it's RDB files, and Romance of the Three Kingdoms 14 has 0xA on Windows.

It could prove useful for determining platform specific quirks

 

By the way, do you know how file IDs are hashed in DoA6?

Spoiler

uint32_t hash_func(const char *a1, int a2, int a3)
{
  int v3;

  while ( 1 )
  {
    v3 = a3;

    char c = *a1;
    if (!c)
        break;

    a3 *= 31;
    a2 += 31 * v3 * c;
    a1++;
  }
  return (uint32_t)a2;
}

uint32_t hash_func(const char *a1)

{
    return hash_func(a1+1, a1[0]*31, 31);
}

 

static const std::string init_seq =
{
    (char)0xEF, (char)0xBC, (char)0xBB
};

static const std::string end_seq =
{
    (char)0xEF, (char)0xBC, (char)0xBD
};

uint32_t hash_filename(const std::string &filename)
{
    std::string name = filename;
    std::string prefix;

    size_t dot = name.rfind('.');
    if (dot != std::string::npos)
    {
        prefix = "R_";
        prefix += Utils::ToUpperCase(name.substr(dot+1));
        prefix += init_seq;

        name = name.substr(0, dot);
    }

    name = prefix + name + end_seq;
    return hash_func(name.c_str());
}

 

So, you would use the second hash_func for normal strings (not filenames), for filenames you would use hash_filename, since the filename has to go through that conversion process.

 

E.g.: MAR_COS_005.g1m becomes R_G1M[MAR_COS_005]before being hashed. (where [and ] are UTF-8 characters EF-BC-BB and EF-BC-BD respectively.

 

The files in KIDSSystemResource, (and probably .name files of other .rdb), seem to follow some other logic. This is currently the function I have for those:

 

Spoiler

uint32_t hash_filename_kids(const std::string &filename)
{
    std::string name;

    if (Utils::EndsWith(filename, ".mud.ndb.name", false))
    {
        name = filename.substr(0, filename.length()-5);
    }
    else if (Utils::EndsWith(filename, ".mud.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidsscndb.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidsscndb.name", false))
    {
        name = filename;
    }
    else if (Utils::EndsWith(filename, ".kidssingletondb.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidssingletondb.name", false))
    {
        name = filename;
    }
    else
    {
        return hash_filename(filename);
    }

    return hash_func(name.c_str());
}

 

Link to comment
On 2/6/2020 at 1:05 AM, vagonumero13 said:
  Reveal hidden contents

uint32_t hash_func(const char *a1, int a2, int a3)
{
  int v3;

  while ( 1 )
  {
    v3 = a3;

    char c = *a1;
    if (!c)
        break;

    a3 *= 31;
    a2 += 31 * v3 * c;
    a1++;
  }
  return (uint32_t)a2;
}

uint32_t hash_func(const char *a1)

{
    return hash_func(a1+1, a1[0]*31, 31);
}

 

static const std::string init_seq =
{
    (char)0xEF, (char)0xBC, (char)0xBB
};

static const std::string end_seq =
{
    (char)0xEF, (char)0xBC, (char)0xBD
};

uint32_t hash_filename(const std::string &filename)
{
    std::string name = filename;
    std::string prefix;

    size_t dot = name.rfind('.');
    if (dot != std::string::npos)
    {
        prefix = "R_";
        prefix += Utils::ToUpperCase(name.substr(dot+1));
        prefix += init_seq;

        name = name.substr(0, dot);
    }

    name = prefix + name + end_seq;
    return hash_func(name.c_str());
}

 

So, you would use the second hash_func for normal strings (not filenames), for filenames you would use hash_filename, since the filename has to go through that conversion process.

 

E.g.: MAR_COS_005.g1m becomes R_G1M[MAR_COS_005]before being hashed. (where [and ] are UTF-8 characters EF-BC-BB and EF-BC-BD respectively.

 

The files in KIDSSystemResource, (and probably .name files of other .rdb), seem to follow some other logic. This is currently the function I have for those:

 

  Reveal hidden contents

uint32_t hash_filename_kids(const std::string &filename)
{
    std::string name;

    if (Utils::EndsWith(filename, ".mud.ndb.name", false))
    {
        name = filename.substr(0, filename.length()-5);
    }
    else if (Utils::EndsWith(filename, ".mud.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidsscndb.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidsscndb.name", false))
    {
        name = filename;
    }
    else if (Utils::EndsWith(filename, ".kidssingletondb.kidsobjdb", false))
    {
        name = filename.substr(0, filename.length()-10);
    }
    else if (Utils::EndsWith(filename, ".kidssingletondb.name", false))
    {
        name = filename;
    }
    else
    {
        return hash_filename(filename);
    }

    return hash_func(name.c_str());
}

 

Hi, there's an error launching REDELBE 2.1 with the latest updates (Update.v1.16) - 
"Failed to compile file "REDELBE/Patches/debug.xml" - what's the problem? thanks.

Link to comment
7 hours ago, Joschuka said:

I don't know if you saw @vagonumero13but there's some really weird stuff going on with DOA6 facial animations, with both my script and your tool. Skeleton is shrinked completely and it deforms the mesh in a weird way.
I tested some facial anims from Dissidia and didn't have that issue.

Yeah I noticed too, but I wonder if it is an issue with the g1m or the g1a.

Link to comment

REDELBE updated to 2.2 (since this version, REDELBE is not longer compatible with game versions below 1.19)

 

Changelog:
- Fixed compatibility with game version 1.19
- Layer 2 support for chinese costumes (COS_104, HAIR_104)
- More filenames available (matching rdbtool 2.2)
- Modders can now use the afternoon version of the "The Throwdown" stage in a layer2 mod stage by using special "work" code "THROWA" (an this stage is included now in optional extras)
- Nyotengu masks (ITM_GLASSES_NYO_002_MASK, ITM_GLASSES_NYO_003_MASK) can now be specified in the random glasses section of the .ini, and they have been added to the default .ini.

 

---------

 

rdbtool updated to 2.2

 

- More filenames available (from 1.19 update)
- Support for 1.19 dead files.

 

-------------------

 

Notice to modders: I noticed several .g1m updated here and there, you may want to check the list of updated g1m by using latest qrdbtool and clicking on the "Container / version" column to sort by version.

 

Additional info about the Venus Vacation character. Some more text have appeared. These seem to be the names of the voice files. Maybe someone can use thse to identify the character:

 

Spoiler

fv_skd_dummy
fv_skd_jp_doa6_action
fv_skd_jp_doa6_appeal_chottodake
fv_skd_jp_doa6_appeal_ganbacchau
fv_skd_jp_doa6_appeal_iitokoro
fv_skd_jp_doa6_appeal_junbidekiteru_01
fv_skd_jp_doa6_appeal_junbidekiteru_02
fv_skd_jp_doa6_appeal_konyawanomuzo
fv_skd_jp_doa6_appeal_makasetoite
fv_skd_jp_doa6_appeal_mitorechatta
fv_skd_jp_doa6_appeal_mousukoshidakara
fv_skd_jp_doa6_appeal_ouenyoroshikune
fv_skd_jp_doa6_appeal_tannoushichatta
fv_skd_jp_doa6_battle_atari
fv_skd_jp_doa6_battle_bacchiri
fv_skd_jp_doa6_battle_bb_shot
fv_skd_jp_doa6_battle_bb_tame
fv_skd_jp_doa6_battle_bh_amai
fv_skd_jp_doa6_battle_bh_dame
fv_skd_jp_doa6_battle_bh_haisokomade
fv_skd_jp_doa6_battle_bh_omitooshi
fv_skd_jp_doa6_battle_bh_yoyuu
fv_skd_jp_doa6_battle_bh_zannen
fv_skd_jp_doa6_battle_don
fv_skd_jp_doa6_battle_doon
fv_skd_jp_doa6_battle_dou
fv_skd_jp_doa6_battle_eeei_01
fv_skd_jp_doa6_battle_eeei_02
fv_skd_jp_doa6_battle_eei_01
fv_skd_jp_doa6_battle_eei_02
fv_skd_jp_doa6_battle_eeya
fv_skd_jp_doa6_battle_eiya_01
fv_skd_jp_doa6_battle_eiya_02
fv_skd_jp_doa6_battle_eyaa
fv_skd_jp_doa6_battle_fa_donpishane
fv_skd_jp_doa6_battle_fa_itadaki
fv_skd_jp_doa6_battle_fa_kakugo
fv_skd_jp_doa6_battle_fa_kanjitene
fv_skd_jp_doa6_battle_fa_sukiari
fv_skd_jp_doa6_battle_fun_01
fv_skd_jp_doa6_battle_fun_02
fv_skd_jp_doa6_battle_fuu
fv_skd_jp_doa6_battle_fuun
fv_skd_jp_doa6_battle_fu_01
fv_skd_jp_doa6_battle_fu_02
fv_skd_jp_doa6_battle_haaaa
fv_skd_jp_doa6_battle_haai_01
fv_skd_jp_doa6_battle_haai_02
fv_skd_jp_doa6_battle_haai_03
fv_skd_jp_doa6_battle_haa_01
fv_skd_jp_doa6_battle_haa_02
fv_skd_jp_doa6_battle_haa_03
fv_skd_jp_doa6_battle_haa_04
fv_skd_jp_doa6_battle_haa_05
fv_skd_jp_doa6_battle_hai_01
fv_skd_jp_doa6_battle_hai_02
fv_skd_jp_doa6_battle_hai_03
fv_skd_jp_doa6_battle_hai_04
fv_skd_jp_doa6_battle_ha_01
fv_skd_jp_doa6_battle_ha_02
fv_skd_jp_doa6_battle_hoora_01
fv_skd_jp_doa6_battle_hoora_02
fv_skd_jp_doa6_battle_hora_01
fv_skd_jp_doa6_battle_hora_02
fv_skd_jp_doa6_battle_ikuyo
fv_skd_jp_doa6_battle_kanpeki
fv_skd_jp_doa6_battle_kora
fv_skd_jp_doa6_battle_morai
fv_skd_jp_doa6_battle_mu
fv_skd_jp_doa6_battle_mun
fv_skd_jp_doa6_battle_muun
fv_skd_jp_doa6_battle_nn
fv_skd_jp_doa6_battle_nnn
fv_skd_jp_doa6_battle_nsho
fv_skd_jp_doa6_battle_seei_01
fv_skd_jp_doa6_battle_seei_02
fv_skd_jp_doa6_battle_seeno
fv_skd_jp_doa6_battle_sei_01
fv_skd_jp_doa6_battle_sei_02
fv_skd_jp_doa6_battle_sei_03
fv_skd_jp_doa6_battle_seyaa_01
fv_skd_jp_doa6_battle_seyaa_02
fv_skd_jp_doa6_battle_seya_01
fv_skd_jp_doa6_battle_seya_02
fv_skd_jp_doa6_battle_seya_03
fv_skd_jp_doa6_battle_sokoda
fv_skd_jp_doa6_battle_sokone
fv_skd_jp_doa6_battle_soore_01
fv_skd_jp_doa6_battle_soore_02
fv_skd_jp_doa6_battle_sore
fv_skd_jp_doa6_battle_taaaa
fv_skd_jp_doa6_battle_taaa_01
fv_skd_jp_doa6_battle_taaa_02
fv_skd_jp_doa6_battle_taa_01
fv_skd_jp_doa6_battle_taa_02
fv_skd_jp_doa6_battle_taa_03
fv_skd_jp_doa6_battle_tanoshii
fv_skd_jp_doa6_battle_teei_01
fv_skd_jp_doa6_battle_teei_02
fv_skd_jp_doa6_battle_tei_01
fv_skd_jp_doa6_battle_tei_02
fv_skd_jp_doa6_battle_teyaa_01
fv_skd_jp_doa6_battle_teyaa_02
fv_skd_jp_doa6_battle_teya_01
fv_skd_jp_doa6_battle_teya_02
fv_skd_jp_doa6_battle_teya_03
fv_skd_jp_doa6_battle_toh_01
fv_skd_jp_doa6_battle_toh_02
fv_skd_jp_doa6_battle_toh_03
fv_skd_jp_doa6_battle_tooh
fv_skd_jp_doa6_battle_touzenne
fv_skd_jp_doa6_battle_ya
fv_skd_jp_doa6_battle_yaa
fv_skd_jp_doa6_battle_yaaa_01
fv_skd_jp_doa6_battle_yaaa_02
fv_skd_jp_doa6_battle_yoishotto
fv_skd_jp_doa6_battle_yootto
fv_skd_jp_doa6_down_03a
fv_skd_jp_doa6_down_03b
fv_skd_jp_doa6_down_03c
fv_skd_jp_doa6_down_03d
fv_skd_jp_doa6_down_03e
fv_skd_jp_doa6_down_03f
fv_skd_jp_doa6_down_03g
fv_skd_jp_doa6_down_03h
fv_skd_jp_doa6_down_03i
fv_skd_jp_doa6_down_03j
fv_skd_jp_doa6_down_03k
fv_skd_jp_doa6_down_03l
fv_skd_jp_doa6_down_03m
fv_skd_jp_doa6_down_03n
fv_skd_jp_doa6_down_03o
fv_skd_jp_doa6_down_03p
fv_skd_jp_doa6_down_bb_down
fv_skd_jp_doa6_down_bb_hit
fv_skd_jp_doa6_gimmick_crowd
fv_skd_jp_doa6_gimmick_quake
fv_skd_jp_doa6_laugh
fv_skd_jp_doa6_lose

 

Link to comment
11 hours ago, vagonumero13 said:

REDELBE updated to 2.2 (since this version, REDELBE is not longer compatible with game versions below 1.19)

 

Changelog:
- Fixed compatibility with game version 1.19
- Layer 2 support for chinese costumes (COS_104, HAIR_104)
- More filenames available (matching rdbtool 2.2)
- Modders can now use the afternoon version of the "The Throwdown" stage in a layer2 mod stage by using special "work" code "THROWA" (an this stage is included now in optional extras)
- Nyotengu masks (ITM_GLASSES_NYO_002_MASK, ITM_GLASSES_NYO_003_MASK) can now be specified in the random glasses section of the .ini, and they have been added to the default .ini.

 

---------

 

rdbtool updated to 2.2

 

- More filenames available (from 1.19 update)
- Support for 1.19 dead files.

 

-------------------

 

Notice to modders: I noticed several .g1m updated here and there, you may want to check the list of updated g1m by using latest qrdbtool and clicking on the "Container / version" column to sort by version.

 

Additional info about the Venus Vacation character. Some more text have appeared. These seem to be the names of the voice files. Maybe someone can use thse to identify the character:

 

  Reveal hidden contents

fv_skd_dummy
fv_skd_jp_doa6_action
fv_skd_jp_doa6_appeal_chottodake
fv_skd_jp_doa6_appeal_ganbacchau
fv_skd_jp_doa6_appeal_iitokoro
fv_skd_jp_doa6_appeal_junbidekiteru_01
fv_skd_jp_doa6_appeal_junbidekiteru_02
fv_skd_jp_doa6_appeal_konyawanomuzo
fv_skd_jp_doa6_appeal_makasetoite
fv_skd_jp_doa6_appeal_mitorechatta
fv_skd_jp_doa6_appeal_mousukoshidakara
fv_skd_jp_doa6_appeal_ouenyoroshikune
fv_skd_jp_doa6_appeal_tannoushichatta
fv_skd_jp_doa6_battle_atari
fv_skd_jp_doa6_battle_bacchiri
fv_skd_jp_doa6_battle_bb_shot
fv_skd_jp_doa6_battle_bb_tame
fv_skd_jp_doa6_battle_bh_amai
fv_skd_jp_doa6_battle_bh_dame
fv_skd_jp_doa6_battle_bh_haisokomade
fv_skd_jp_doa6_battle_bh_omitooshi
fv_skd_jp_doa6_battle_bh_yoyuu
fv_skd_jp_doa6_battle_bh_zannen
fv_skd_jp_doa6_battle_don
fv_skd_jp_doa6_battle_doon
fv_skd_jp_doa6_battle_dou
fv_skd_jp_doa6_battle_eeei_01
fv_skd_jp_doa6_battle_eeei_02
fv_skd_jp_doa6_battle_eei_01
fv_skd_jp_doa6_battle_eei_02
fv_skd_jp_doa6_battle_eeya
fv_skd_jp_doa6_battle_eiya_01
fv_skd_jp_doa6_battle_eiya_02
fv_skd_jp_doa6_battle_eyaa
fv_skd_jp_doa6_battle_fa_donpishane
fv_skd_jp_doa6_battle_fa_itadaki
fv_skd_jp_doa6_battle_fa_kakugo
fv_skd_jp_doa6_battle_fa_kanjitene
fv_skd_jp_doa6_battle_fa_sukiari
fv_skd_jp_doa6_battle_fun_01
fv_skd_jp_doa6_battle_fun_02
fv_skd_jp_doa6_battle_fuu
fv_skd_jp_doa6_battle_fuun
fv_skd_jp_doa6_battle_fu_01
fv_skd_jp_doa6_battle_fu_02
fv_skd_jp_doa6_battle_haaaa
fv_skd_jp_doa6_battle_haai_01
fv_skd_jp_doa6_battle_haai_02
fv_skd_jp_doa6_battle_haai_03
fv_skd_jp_doa6_battle_haa_01
fv_skd_jp_doa6_battle_haa_02
fv_skd_jp_doa6_battle_haa_03
fv_skd_jp_doa6_battle_haa_04
fv_skd_jp_doa6_battle_haa_05
fv_skd_jp_doa6_battle_hai_01
fv_skd_jp_doa6_battle_hai_02
fv_skd_jp_doa6_battle_hai_03
fv_skd_jp_doa6_battle_hai_04
fv_skd_jp_doa6_battle_ha_01
fv_skd_jp_doa6_battle_ha_02
fv_skd_jp_doa6_battle_hoora_01
fv_skd_jp_doa6_battle_hoora_02
fv_skd_jp_doa6_battle_hora_01
fv_skd_jp_doa6_battle_hora_02
fv_skd_jp_doa6_battle_ikuyo
fv_skd_jp_doa6_battle_kanpeki
fv_skd_jp_doa6_battle_kora
fv_skd_jp_doa6_battle_morai
fv_skd_jp_doa6_battle_mu
fv_skd_jp_doa6_battle_mun
fv_skd_jp_doa6_battle_muun
fv_skd_jp_doa6_battle_nn
fv_skd_jp_doa6_battle_nnn
fv_skd_jp_doa6_battle_nsho
fv_skd_jp_doa6_battle_seei_01
fv_skd_jp_doa6_battle_seei_02
fv_skd_jp_doa6_battle_seeno
fv_skd_jp_doa6_battle_sei_01
fv_skd_jp_doa6_battle_sei_02
fv_skd_jp_doa6_battle_sei_03
fv_skd_jp_doa6_battle_seyaa_01
fv_skd_jp_doa6_battle_seyaa_02
fv_skd_jp_doa6_battle_seya_01
fv_skd_jp_doa6_battle_seya_02
fv_skd_jp_doa6_battle_seya_03
fv_skd_jp_doa6_battle_sokoda
fv_skd_jp_doa6_battle_sokone
fv_skd_jp_doa6_battle_soore_01
fv_skd_jp_doa6_battle_soore_02
fv_skd_jp_doa6_battle_sore
fv_skd_jp_doa6_battle_taaaa
fv_skd_jp_doa6_battle_taaa_01
fv_skd_jp_doa6_battle_taaa_02
fv_skd_jp_doa6_battle_taa_01
fv_skd_jp_doa6_battle_taa_02
fv_skd_jp_doa6_battle_taa_03
fv_skd_jp_doa6_battle_tanoshii
fv_skd_jp_doa6_battle_teei_01
fv_skd_jp_doa6_battle_teei_02
fv_skd_jp_doa6_battle_tei_01
fv_skd_jp_doa6_battle_tei_02
fv_skd_jp_doa6_battle_teyaa_01
fv_skd_jp_doa6_battle_teyaa_02
fv_skd_jp_doa6_battle_teya_01
fv_skd_jp_doa6_battle_teya_02
fv_skd_jp_doa6_battle_teya_03
fv_skd_jp_doa6_battle_toh_01
fv_skd_jp_doa6_battle_toh_02
fv_skd_jp_doa6_battle_toh_03
fv_skd_jp_doa6_battle_tooh
fv_skd_jp_doa6_battle_touzenne
fv_skd_jp_doa6_battle_ya
fv_skd_jp_doa6_battle_yaa
fv_skd_jp_doa6_battle_yaaa_01
fv_skd_jp_doa6_battle_yaaa_02
fv_skd_jp_doa6_battle_yoishotto
fv_skd_jp_doa6_battle_yootto
fv_skd_jp_doa6_down_03a
fv_skd_jp_doa6_down_03b
fv_skd_jp_doa6_down_03c
fv_skd_jp_doa6_down_03d
fv_skd_jp_doa6_down_03e
fv_skd_jp_doa6_down_03f
fv_skd_jp_doa6_down_03g
fv_skd_jp_doa6_down_03h
fv_skd_jp_doa6_down_03i
fv_skd_jp_doa6_down_03j
fv_skd_jp_doa6_down_03k
fv_skd_jp_doa6_down_03l
fv_skd_jp_doa6_down_03m
fv_skd_jp_doa6_down_03n
fv_skd_jp_doa6_down_03o
fv_skd_jp_doa6_down_03p
fv_skd_jp_doa6_down_bb_down
fv_skd_jp_doa6_down_bb_hit
fv_skd_jp_doa6_gimmick_crowd
fv_skd_jp_doa6_gimmick_quake
fv_skd_jp_doa6_laugh
fv_skd_jp_doa6_lose

 

You're brilliant, man. Thank you.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use