https://wiki.cloudmodding.com/oot/Notes/Collision/history?feed=atom&
Notes/Collision - Revision history
2024-03-29T12:58:31Z
Revision history for this page on the wiki
MediaWiki 1.30.0
https://wiki.cloudmodding.com/woot/index.php?title=Notes/Collision&diff=6122&oldid=prev
Mzxrules: Created page with "{{subpage}} <pre> int external_func_8005C050(void * ctxt, void * idk, void * a, Collision_Header * a3) // Argument 3 (a3) contains a pointer to a structure of this format: J..."
2018-06-17T23:01:57Z
<p>Created page with "{{subpage}} <pre> int external_func_8005C050(void * ctxt, void * idk, void * a, Collision_Header * a3) // Argument 3 (a3) contains a pointer to a structure of this format: J..."</p>
<p><b>New page</b></p><div>{{subpage}}<br />
<br />
<pre><br />
int external_func_8005C050(void * ctxt, void * idk, void * a, Collision_Header * a3)<br />
// Argument 3 (a3) contains a pointer to a structure of this format:<br />
<br />
JAL 0x8005BB48 // Sets up the collision for the hitbox<br />
OR A2, S1, R0 // A2 = Current hitbox address<br />
<br />
typedef struct<br />
{<br />
u8 u0<br />
u8 u1<br />
u8 u2<br />
u8 u3<br />
u8 u4<br />
u8 pad[5] // Always "00 00 00 00 00" ?<br />
u16 no_hitbox // Number of hitboxes... changing this to 0 will disable the actor's collision<br />
u32 ptr_hitbox // Pointer to hitbox data<br />
} Collision_Header;<br />
<br />
Wolfos: (data_80B37A20)<br />
09<br />
11<br />
0D<br />
39<br />
10<br />
00 00 00 00 00<br />
00 04 <--- Number of hitboxes<br />
80 B3 79 90 <--- Pointer to hitbox data<br />
<br />
Queen Ghoma: (data_8091B034)<br />
03 <br />
11 <br />
09 <--- Setting to not 9 makes it impossible to stun her?<br />
09 <br />
10 <br />
00 00 00 00 00 <br />
00 0D <--- Number of hitboxes<br />
80 91 AE 60 <--- Pointer to hitbox data<br />
<br />
The damage done by a specific hitbox and its attributes are in the following format (0x24 bytes in length):<br />
<br />
AA 00 00 00 XX XX XX XX EE DD 00 00 YY YY YY YY 00 00 00 00 BB HH CC 00 FF 00 00 00 00 00 00 00 00 LL 00 64<br />
<br />
AA : Unknown<br />
XX XX XX XX : Usually "FF CF FF FF"... Perhaps normals? I can see this as being the direction to deal/receive damage<br />
EE : Effect of damage (fire, ice, electric, stun, etc)<br />
00 = None<br />
01 = Fire<br />
02 = Ice<br />
03 = Electricity<br />
04 = Knockback<br />
<br />
DD : Amount of damage (when hitting link)<br />
YY YY YY YY : Usually "FF CF FF FF"... Perhaps normals? I can see this is being the direction to deal/receive damage<br />
BB : Unknown<br />
HH : Seems to have something to do with being hookshotable... Change to 05 to make the hitbox hookshotable<br />
CC : Unknown<br />
FF : Unknown<br />
LL : Length of damage collision (allows an attack to reach further away)<br />
<br />
Wolfos: (data_80B37990)<br />
01 : 00 00 00 00 FF CF FF FF 00 04 00 00 00 00 00 00 00 00 00 00 01 00 00 00 0F 00 00 00 00 00 00 00 00 0F 00 64<br />
02 : 00 00 00 00 FF CF FF FF 00 04 00 00 00 00 00 00 00 00 00 00 01 00 00 00 15 00 00 00 00 00 00 00 00 0F 00 64<br />
03 : 01 00 00 00 00 00 00 00 00 00 00 00 FF C1 FF FF 00 00 00 00 00 05 01 00 11 00 03 20 00 00 00 00 00 19 00 64<br />
04 : 01 00 00 00 00 00 00 00 00 00 00 00 FF C1 FF FF 00 00 00 00 00 05 01 00 0C 00 00 00 00 00 00 00 00 1E 00 64<br />
<br />
Queen Ghoma: (data_8091AE60) (0x5450)<br />
01 : 03 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 05 00 00 00 00 00 04 B0 00 14 00 64<br />
02 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 0B 00 00 00 00 00 00 00 00 14 00 64<br />
03 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 0C 00 00 00 00 00 00 00 00 0F 00 64<br />
04 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 0D 00 00 00 00 00 00 00 00 0C 00 64<br />
05 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 0E 00 00 00 00 00 00 00 00 19 00 64<br />
06 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 16 00 00 00 00 00 00 00 00 1E 00 64<br />
07 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 17 00 00 00 00 00 00 00 00 0F 00 64<br />
08 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 1D 00 00 00 00 00 00 00 00 0F 00 64<br />
09 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 39 00 00 00 00 00 00 00 00 14 00 64<br />
10 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 40 00 00 00 00 00 00 00 00 14 00 64<br />
11 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 4A 00 00 00 00 00 00 00 00 1E 00 64<br />
12 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 4B 00 00 00 00 00 00 00 00 0F 00 64<br />
13 : 02 00 00 00 FF CF FF FF 00 08 00 00 FF CF FF FF 00 00 00 00 01 01 01 00 51 00 00 00 00 00 00 00 00 0F 00 64<br />
</pre></div>
Mzxrules