[DOA2++] Moveset Editing Project

grap3fruitman

Well-Known Member
Standard Donor
holy shit is that how DOA hitboxes work? Hurtbox = hitbox?
DOA4's spectator mode seemed to have an hidden hitbox viewer, the only one in the history of the DOA franchise afaik... and I had no idea what I was looking at, but your brief explanation seems to make sense? See the red squares


(picture courtesy of Rikuto)
That's just the camera mode and those red boxes are focus points like you'd find on an SLR camera. Nothing to do with the hitboxes.

 

usagiZ

Well-Known Member
Main Character
Kasumi α
Managed to boot DOA2U! I tested your Phase-4 moveset and it works amazingly in the emulator too. Also thanks for the Time-Attack stage offset, with this I'll be able to see what every value corresponds to! :D

Here's a sneak peek at my progress, as you can tell I've managed to replace a stage value with one that's the wall test stage. I might make a new thread on here for Modding DOA2 (Dreamcast, PS2 and 2U) stages.

I remember with DOAO, a user made a blender importer for DOAO stages, with it you could make your own custom stages! I have an idea, if I can find the blender DOAO stage importer, make a simple stage and export it back, maybe I can figure out how to export it to DOA2U, meaning we could also make our own stages not only for DOAO but also DOA2U!
View attachment 24893
This looks promising ++
I'm glad you were able to test out the moveset~

I made a backup of the blender exporter tool a while ago (I didn't make this tool)
This one lets you export your blender model to xpr format.
You can install this by extracting all the files to the addon folder [Blender > (version number) > scripts > addons]

Then open blender, go to File, User Preferences, Add-ons and find it on the list, and tick the box.

If it's not there try refreshing - you can also choose install from file and find the io_export_doau_xpr.py file included in the download.

Making new stages with it is possible, but I've mainly used it to give costume edits that extra something:
(only works with doa2u at the moment, and sometimes has uv mapping errors - especially with oddly placed triangles in the mesh)

hat and broom are custom objects
-------------

swords on her legs were custom models
-----------

scarf / head cover
------------

backpack, wires, and helmet
------------

the giant pumpkin head, obviously lol

animated texture for the face (similar method as zack's alien costume)

I had a quick look at the stages wall data and didn't figure anything out at first glance, but you can delete all the data in the stage.bin and it will still work, but without wall / floor height detection.
Hopefully stage wall data can be figured out soon -- that, paired with the blender exporter, could make custom stages fully playable.


holy shit is that how DOA hitboxes work? Hurtbox = hitbox?
I'm not too sure about how the hitboxes work exactly, but the values after the 21 00 change which hitbox is active.

21 00 00 00 I haven't gotten to connect, except when used on hold animations
21 00 01 00 is for all-body hitbox
21 00 02 00 is one of the hands, I think
21 00 03 00 is the other hand - etc etc

(the 21 00 and the other value don't necessarily have to be right next to each other like that, iirc, as long as the 21 00 is before the other value)

It could be that the hurtboxes = hitboxes, but there's a few special hitbox values that make me unsure of that, and each character seems to have their own special hitbox list.
Tengu for instance has wing hitboxes, so you could presumably give tengu a move where he hits you with his wings - but I don't think Tengu's wings have hurtboxes.
 
Last edited:

Matt Ponton

Owner
Staff member
Administrator
Glen Burnie, MD
Main Character
Bass
Gamertag
Sorwah
PSN ID
Sorwah
Steam
Sorwah
Woah, CXBX works with 2U Now!? How about 3? does it still play at like 1/8th speed and have controller input locked to specific keys?

I'm not too sure about how the hitboxes work exactly, but the values after the 21 00 change which hitbox is active.

21 00 00 00 I haven't gotten to connect, except when used on hold animations
21 00 01 00 is for all-body hitbox
21 00 02 00 is one of the hands, I think
21 00 03 00 is the other hand - etc etc

(the 21 00 and the other value don't necessarily have to be right next to each other like that, iirc, as long as the 21 00 is before the other value)

It could be that the hurtboxes = hitboxes, but there's a few special hitbox values that make me unsure of that, and each character seems to have their own special hitbox list.
Tengu for instance has wing hitboxes, so you could presumably give tengu a move where he hits you with his wings - but I don't think Tengu's wings have hurtboxes.
The way the systems work is hitboxes are associated to the location of the bone (for animation). The question is really if the hitbox (hitsphere) is different from the hurtbox before it. The system plays animations, and it just turns a hurtbox into a hitbox at specific frames. You're getting values different per character because each character may have different bones than another, for example wings on Tengu, Ayane's bandana, Coats, etc.
 
Last edited:

usagiZ

Well-Known Member
Main Character
Kasumi α
Some more findings!
Feel free to add this to your thread @dee4doa

The highlighted section controls the random encounters you get during story mode. I was able to change some values to get cutscene characters to show up.
Here's the section that controls which files the character slots load:

Playable characters seem to have three entries in this format:
[AA 00 AB 00] [AA 00 AC 00] [AA 00 AD 00]

The first part of each seems to be the bin file (AA 00), the second part seems to be the mot file (AB 00).
Playable characters have three entries to accommodate the three mot files they have (character.mot, m_character.mot, c_character.mot)

Cutscene characters usually have one or two entries, and the values are repeated - because they only have character.bin and m_character.mot. [AA 00 AB 00] [AA 00 AB 00]

4 = Zack
8 = Tina
C = Jann Lee
10 = Ein
14 = Hayabusa
18 = Kasumi
1C = Genfu
20 = Helena?
24 = Leon
28 = Bass
2C = Maria - Helena's Mom (can replace files)
--
2E = Leifang
32 = Ayane
36 = Young Bass (can replace files)
--
38 = Loran/Lauren/ (can replace files)
3A = Tengu
3E = Young Tina
--
--
40 = Hitomi
--
44 = Prairie Dog
46 = Bayman
--
--
--
With all of the above info, I was able to get Maria and Loran (Lauren?) to appear as random encounters in story mode:
I replaced Maria and Lauren's files with movesets to see if they would work as playable characters.



You can throw them and they can throw you, but their hurtboxes don't react to strikes, and you can walk through them completely. (Maybe they don't even have hurtboxes? Not sure.) The camera sometimes freaks out when either of you gets thrown.

Their character portraits were Kasumi for some reason.
 
Last edited:

usagiZ

Well-Known Member
Main Character
Kasumi α
have you ever manipulated frame data for DOA:O? I know you've made changes suchas adding moves or properties.
Yes, I made a post about frame data before here.

The relevant information is under the "OFFSET 3: Property Table" spoiler~
--But basically, the move properties also contain on-hit and on-block frame advantage info.

I've been changing some frame data for certain attacks like giving characters the advantage that a guard break would.
Ideally, I'd rather it be true guard break or true guard crush, but there's limits to what I can accomplish with the movesets currently.
 
Likes: grap3fruitman

WAZAAAAA

Well-Known Member
I'd like to hear everyone's thoughts on the topic of jump attacks.
Can you outright remove jumps and replace them with free stepping like they did in DOA5? That was literally the best change in DOA5 and the movement felt so much better. Let's be real most of the DOA jumps are accidental, it's a clunky and unnecessarily tight mechanic, jumping over lows BARELY EVER WORKS, and the only good jump attack worth using in the entire game was Tengu 9P+K anyway (which could be added as a string to 9P maybe so it doesn't become unused).

minor Hayabusa moveset change suggestion:
Throws can beat the first startup frames of Hayabusa 236P and 4P+K for some reason. This is the case for DOAO and most likely DOA2U... it's pretty random and it shouldn't be like that lol
 

usagiZ

Well-Known Member
Main Character
Kasumi α
Can you outright remove jumps and replace them with free stepping like they did in DOA5?
I'll try looking into this too. I agree that jump attacks don't really have much use as they are currently.
That's a good suggestion for Tengu - (I actually did this in a previous build)

I still haven't been able to figure out the hi-counter while back dashing :/

Throws can beat the first startup frames of Hayabusa 236P and 4P+K for some reason.
Yeah, there's quite a few attacks with that issue - Probably developer oversight - the attacks aren't coded in a noticably different way that would cause that, but it still happens.
This is an easy fix though, adding [1F 00 04 00] at the start and [1F 00 00 00] after the end of the active frames of the attacks fixes this -- to disable, and then re-enable being thrown.

-Quick Update-
OFFSET 21 (at 0x4C in the character.bin) is hitbox data: I've been able to make some custom hitboxes to use with specific moves
This section is why characters have their own specific hitboxes.
Following this leads to another table of pointers (4 bytes each):
These each lead to the character's specific hitbox data

The first hitbox (hitbox 0 or [21 00 00 00] in the anim-def) is a null hitbox (FF) for all characters
The second hitbox (hitbox 1 or [21 00 01 00] ) is a full body hitbox - all characters
Third (hitbox 2 or [21 00 02 00] is right punch hitbox
The basic coding for a hitbox/hitsphere is: [AA BB CC] [FF]
AA = bone
BB = constant (always 01 -- I haven't seen or tested any other values here)
CC = size (I think)
FF = terminate (All hitboxes terminate with FF)

Hitboxes usually have mutlitple bones active, as you can see in the examples from the image.

0 chest
1 head
2 root/pelvis
3 left foot
4 left forearm/elbow
5 left palm
6 left thigh/hip
7 left shin/knee
8 left bicep/shoulder
9 right foot
A right forearm/elbow
B right palm
C right thigh/hip
D right shin/knee
E right bicep/shoulder

80 left wrist
81 right wrist

11 left eye
13 doa3 left wrist
14 doa3 right wrist
15 right eye

-joints-
(2)6 left hip / upper leg
(2)7 right hip / upper leg
(2)8 left knee
(2)9 right knee

Each character has a different amount of hitboxes specific to their movesets

If you follow one of the pointers, it takes you to that specific hitbox.

This is OFFSET 21's table of pointers (ryu.bin - DOA2U)

Use any of the slots with "filler" offsets to make a new hitbox. The red section are all unused.
I'm using the blue-highlighted one for this hitbox.

To calculate which hitbox this is, you'll need to subtract OFFSET 21 from the position of this pointer.
0x724C (OFFSET 21) - 0x7310 (location of this pointer) = 0xC4
Then we need to divide this number by 4 (number of bytes in each pointer)
0xC4 / 0x4 = 0x31

So this would be hitbox [21 00 31 00]
This is the value we want to use to make an attack use this new hitbox.
-----------------------------
Go to the very end of the character.bin:

What I usually do is add a few bytes of padding (red data) to section off the new data, and label the area with the text section.

So, following the pattern earlier, we can make our own hitbox:
The basic coding for a hitbox is: [AA BB CC] [FF]
AA = bone
BB = constant (always 01)
CC = size (or type, not exactly sure)
FF = terminate (All hitboxes terminate with FF)
0 chest
1 head
2 root/pelvis
3 left foot
4 left forearm/elbow
5 left palm
6 left thigh/hip
7 left shin/knee
8 left bicep/shoulder
9 right foot
A right forearm/elbow
B right palm
C right thigh/hip
D right shin/knee
E right bicep/shoulder
03
04
05
07
09
0B
0D
0F
10
11
12
13

lower values usually give the hitbox shorter reach
higher values usually give longer reach, and lets the hitbox reach mid-air opponents that are lower in air

I wanted to mimic the juggle-ender properties of ryu's 8K in doa4, and the hitbox coding I ended up with was this:
[09 01 09] [0D 01 11] [0C 01 11] [FF]

This reads as:
Bone 09 (right foot) has size/type 09
Bone 0D (right shin/knee) has size/type 11
Bone 0C (right thigh/hip) has size/type 11
------
Bone 09 at value 09 gives the kick a little more reach
Bone 0D and Bone 0C both have value 11 which lets the hitbox connect on opponents that are very low in air.
After defining our new hitbox, we need to go back and fix the pointer that was highlighted earlier:

Change the blue highlighted data to the location of our new hitbox, which in this case would be 0x013110

We need to flip 0x013110 to work as a pointer in DOA2U/3, so we end up with [10310100]
(What was previously [12345678] should now be [78563412] )
The final step in this process is to actually give the attack this new hitbox.
So I found the anim-def for ryu's 8K and replaced the previous hitbox flag [21 00 05 00]

With the value that we calculated at the beginning of this how-to, which is [21 00 31 00]


Save and all should work as expected.
The best way to improve upon a hitbox is to copy the move's old hitbox and edit the values / add more bones to it.
For this one, I actually copied the data from the [21 00 05 00] hitbox and edited them to make the new [21 00 31 00] hitbox.

======================================================

Since we're on the topic of Hayabusa, I gave :8::K: a custom hitbox to mimic its juggle-finisher behavior from DOA4.
I wanted to add some handstand stuff from DOA4, specifically the frontflip punch (ws :4::K::P: or :214::P:)
So I mapped the frontflip punch to handstand :p+k:, and remapped the original hs :p+k: to hs :6::f+k:
The HS :f+k: low kick was unchanged.

The new hs :p+k: and the standing version :214::P: are both proper low crushes for the startup in-air frames.

I haven't added the teleports or the taunt-stance from DOA4 - and probably won't tbh bc of the size limit and other issues.
 
Last edited:

Matt Ponton

Owner
Staff member
Administrator
Glen Burnie, MD
Main Character
Bass
Gamertag
Sorwah
PSN ID
Sorwah
Steam
Sorwah
Their character portraits were Kasumi for some reason.
This is probably a fail safe in the system to where if it can't find the location of the character's portrait then it defaults to Kasumi.

Seems like an interesting find, would be nice to see if we can add code to implement other (newer) characters from DOA5 into the game. Presumably if the mesh is edited down to the max poly count.
 

usagiZ

Well-Known Member
Main Character
Kasumi α
Seems like an interesting find, would be nice to see if we can add code to implement other (newer) characters from DOA5 into the game. Presumably if the mesh is edited down to the max poly count.
With the blender export tool that I mention in this post you can essentially add in any pieces of any model that you want (with the help of XprExpBuild )
^ I can make a tutorial for this if anyone's interested. It's pretty involved, so it'll take a while to put one together.

It's possible to make a costume using parts from the updated models from DOA5 (like plopping one of the newer models heads onto the older bodies)

One problem with that is the original xbox doesn't seem to handle dxt5 transparent textures very well so a lot of overlapping transparent textures (like the ones in the newer models' hair) has a terrible result in-game.
As you can see, the transparent hair textures have this invisibility issue because there's a limit on how many transparent textures you can see through.


^ This stage was ported using the blender export tool, too
Bass doesn't look too bad here, I guess the tester won the transparency layer lottery with that import
The only way around that would be to make them all dxt1 transparent textures instead of dxt5, which would result in a loss of quality, but would fix some of the issues. (I did this to make the hair for my Niki costume)

The new heads would also have no animation, so no blinking, mouth movement, or hair physics.

--also I updated my previous post about offset 21-
 
Last edited:

WAZAAAAA

Well-Known Member
I know my ideas are getting more and more unachievable by the day lol but I'm gonna post this anyway:

I never liked how the camera in DOA2U (and DOA3 and DOA4...) "smoothly" transitions from P1 to the center after the second character intro plays. You can't see what P2 is doing during half of the "GET READY - FIGHT" sequence.
This has indeed been corrected in DOA5 by making the camera reset at the center of both players immediately... and I just realized that DOA2U does the same but only when played in Tag! (second 6 http://video.kikizo.com/games/deadoraliveultimate_dfgameplay/kikizo_doau_df_10.wmv). It would be neat to make the Solo camera behave like Tag.
 

usagiZ

Well-Known Member
Main Character
Kasumi α
I know my ideas are getting more and more unachievable by the day lol but I'm gonna post this anyway:
I appreciate the suggestions honestly - I probably wouldn't notice or try to fix these little system issues otherwise.

Adding this to the list of system changes I hope to make. If we're lucky, It'll be a copy-paste situation of the tag camera data over the solo camera -- but I'll have to find the camera data first lol.
 
Good morning! I saw the MOD of DOA2U on Youtube.
Do you have any plans to make Kasumi's DOA2 C3 & C4 costume and Ayane's C3 costume as MOD? (Whether it applies to other female characters)
3472347761600376601.jpg
3472347761600562457.jpg
3472347761604582936.jpg
3472347761601749017.jpg
3472347761601640728.jpg
3472347761600595993.jpg
 
Likes: usagiZ

usagiZ

Well-Known Member
Main Character
Kasumi α
Good morning! I saw the MOD of DOA2U on Youtube.
Do you have any plans to make Kasumi's DOA2 C3 & C4 costume and Ayane's C3 costume as MOD? (Whether it applies to other female characters)
Hello~ Welcome to the thread

Yes, I plan to recreate the puffy sleeve ninja outfit for Kasumi. The default DOA2U redesigns of those outfits are just recolors of each other - so to make them a little more unique I was going to change the black ninja outfit to the puffy sleeve design from the dreamcast version with major updates to the texturing and much more detail. (The dreamcast versions almost look like solid color textures tbh)


I want Zack's duck and sway.
There's not enough room in his animation file to add all of the duck and sway strings from DOA4, but I might be able to make them connect to other attacks while still giving them a similar functionality.

=================================
---------------------
For now, I've set aside stage collision research and started focusing on the miscellaneous system issues that have been brought to my attention.

Initial tests to remove jumping and jump attacks seem promising, so I'll keep testing that and show the progress as soon as I can.

I've added a few more stuns, and because of this I've had to go back and edit some of the movesets to accomodate them. Turns out, adding things while trying to keep everything balanced is real tough lol

Backturned half-wall splat is a lot floatier than front facing half-wall splat now, which allows for a longer followup. (very situational, so I figured the reward for setting that up should be greater)

I've been trying to think of some new mechanics or tools to give to the grappler characters, just to further separate them from the others (rather than have every character rely on juggles). An idea I had was to give some of them a special stun that allows a guaranteed throw. Just an idea though, let me know if that sounds interesting and maybe I can test that out.

I'm also open to suggestions for new tools or mechanics that could work for grapplers.
It doesn't have to be something that already exists in the DOA series. Feel free to come up with new mechanics that could be unique to the 2++ mod.

Since more DOA6 gameplay videos have come out, I've noticed that the new side step attacks seem to function similarly to something I tested out a long time ago:

For this test, I gave Hitomi her sidestep sweep kick from DOA3 as a standalone move, but I wanted it to be a lot more evasive, so I gave the animation some invincibility frames at startup (invincible to all strikes)
The only way to stop her during those frames would be to throw her.
Ultimately, I removed the standalone version and kept it only as a string ender -- without those properties, because moves like that have never really existed in DOA (until now I guess?)
I might re-enable this for Hitomi, it seems like it could be a unique and interesting tool.
---------------------
 
Hello~ Welcome to the thread

Yes, I plan to recreate the puffy sleeve ninja outfit for Kasumi. The default DOA2U redesigns of those outfits are just recolors of each other - so to make them a little more unique I was going to change the black ninja outfit to the puffy sleeve design from the dreamcast version with major updates to the texturing and much more detail. (The dreamcast versions almost look like solid color textures tbh)



There's not enough room in his animation file to add all of the duck and sway strings from DOA4, but I might be able to make them connect to other attacks while still giving them a similar functionality.

=================================
---------------------
Yes. I like Cleavage revealed puffy sleeve ninja outfit for Kasumi & Ayane
I think it has a charm equal to Taki's ninja outfit of Soul calibur.
 
Forgot your password?