Previous File TypeONCC FILENext File Type
Oni Character Class - Character File

HexTranslationMeaning
01 DF 03 0099100991-konoko_generic.ONCC
01 00 00 063level 3
CD CC 0C 3F0.550000unknown; always the same; maybe downwards velocity?
8F C2 75 3D0.060000downward gravity acceleration
CD CC 8C 3F1.100000starting velocity for a simple (tap) JUMP
00 00 80 C0-4.000000limit velocity for jumping and gravity flight
8F C2 F5 3C0.030000upward acceleration (jetpack) if you hold JUMP
07 007unknown; always the same; maybe a gravity timer?
14 0020jetpack timer; time during which you can use the jetpack
00 00 34 4245.000000maximal falling height without damage
00 00 07 43135.000000maximal falling height with damage
01 F8 03 001016link to 01016-shadow1.TXMP
00 00 40 4112.000000height, where the shadow fades out completely
00 00 00 418.000000height, where the diameter of the shadow decreases and the shadow fades out half
00 00 C0 406.000000height, where the diameter of the shadow decreases
00 00 90 404.500000height, where the diameter of the shadow decreases
00 00 40 403.000000height, where the diameter of the shadow decreases
30 0048transparency of the shadow for the first part of a jump
30 0048transparency of the shadow for the second part of a jump
00 00 C8 4125.000000unknown; always the same
1622unknown
066unknown; always the same
AD DEdeadnot used; always the same
00 00 20 4240.000000unknown; always the same
00 00 96 43300.000000unknown; always the same
35 FA 8E 3C0.017453unknown; always the same
DB 0F C9 3F1.570796unknown; always the same
00 00 A0 405.000000unknown; always the same
00 00 80 3F1.000000unknown; always the same
06 006hypo regeneration time per health point in 1/60 seconds; that means, if you use a hypo, the health increases in 6/60 seconds (= 0.1 seconds) by one; always the same
AD DEdeadnot used; always the same
00 10 3D 48193600.000000unknown; always the same
00 10 3D 4748400.000000unknown; always the same
00 10 3D 4612100.000000unknown; always the same
00 00 00 000.000000unknown; always the same
00 00 00 000.000000unknown; always the same
23 0035unknown; always the same
5A 0090unknown; always the same
0F 0015unknown; always the same
78 00120unknown; always the same
23 0035unknown; always the same
01 001unknown; always the same
02 002unknown; always the same
64 00100unknown; always the same
0A 0010unknown; always the same
0C 0012unknown; always the same
16 0022unknown; always the same
000used at runtime only; if one sound pointers have been set
DEdeadnot used; always the same
00 00 00 3F0.500000unknown; always the same
konoko_hurt_lighthurt light sound (reference to 08121-konoko_hurt_light.imp.OSBD of level 0)
konoko_hurt_mediumhurt medium sound (reference to 08123-konoko_hurt_medium.imp.OSBD of level 0)
konoko_hurt_heavyhurt heavy sound (reference to 08119-konoko_hurt_heavy.imp.OSBD of level 0)
konoko_deathdeath sound (reference to 08115-konoko_death.imp.OSBD of level 0)
00 00 00 000runtime only: pointer to hurt light sound
00 00 00 000runtime only: pointer to hurt medium sound
00 00 00 000runtime only: pointer to hurt heavy sound
00 00 00 000runtime only: pointer to death sound
17 00 00 0023general AI option bitset collection; see below
00 00 80 3F1.000000rotation factor (rotation factor * 360 degrees = possible rotation per frame or animation)
(Thanks to Loser for this info.)
06 006minimal fallen time; (???number of frames???time in miliseconds???) for which AI remains in *fallen* position when it is knockdowned
18 0024maximal fallen time; (???number of frames???time in miliseconds???) for which AI remains in *fallen* position when it is knockdowned
0F 0015minimal realize firingspread time; (???number of frames???time in miliseconds???) after which AI realizes that it is in the firing spread (and it starts dodging)
00 000maximal realize firingspread time; (???number of frames???time in miliseconds???)
00 00 80 3F1.000000minimal firingspread dodge amount; IMO similar to maneouvre variable, it tells AI how long it should perform dodging/hiding in response to some time spent inside firing spread (so setting this very high means that once enemy starts dodging/hiding, he will perform it even after firing spread disappears)
00 00 80 3F1.000000maximal firingspread dodge amount; IMO similar to maneouvre variable
00 00 00 3F0.500000unknown; always the same
00 00 C8 4125.000000unknown; always the same
00 00 80 3F1.000000unknown
00 00 00 000unknown
05 00 00 005unknown
0F 00 00 0015unknown
3C 00 00 0060unknown
Below follows the first of 13 blocks. (Thanks to geyser.)
00 00 00 000.000000recoil compensation amount (0.0 = min, 1.0 = max)
00 00 00 000.000000best aiming angle in radians
00 00 00 000.000000shot grouping error
00 00 80 3F1.000000shot grouping decay
00 00 80 3F1.000000shooting inaccuracy multiplier
00 000minimum delay between shots in frames
00 000maximum delay between shots in frames
End of the first block. Below follows the content of the second image.
5A 00 00 0090unknown; always the same
F0 00 00 00240unknown; always the same
B4 00 00 00180unknown; always the same
28 00 00 0040unknown; always the same
37 00 00 0055go for gun chance (55%); determines possibility that AI will run to some weapon and take it; can be checked in devmode by *debug_gun_behavior* command
3C 00 00 0060running pickup chance (60%); this value is possibility of AI running weapon pickup (acrobatics, slides) instead of normal "stop->pickup"; this is calculated AFTER engine decides that AI should run for weapon
00 000combat ID (reference to the Combat.BINA file)
16 0022melee ID (reference to the Melee.BINA file)
64100sound used
000sound not used
000sound not used
000sound not used
000sound not used
000sound not used
64100sound used
64100sound used
000sound not used
000sound not used; always the same
00 000unknown; always the same
c17_99_28konokotaunt sound (reference to 08108-c17_99_28konoko.amb.OSBD of level 0)
not usedalert sound (Who's there?)
not usedstartle sound (I see you.)
not usedcheck body sound (You lose.)
not usedpursue sound (Where are you?)
not usedcower sound (Why is this happening?)
c18_79_14konokopunch heavy sound (reference to 08110-c17_99_28konoko.amb.OSBD of level 0)
c18_79_15konokokick heavy sound (reference to 08112-c17_99_28konoko.amb.OSBD of level 0)
not usedsuper3 sound; only the superninja use it; it's another c18_79 sound
not usedsuper4 sound; never used in Oni; maybe it's for the unused c18_71 sounds
00 80 ED 43475.000000eyeshot; you can make it visible with the script command ai2_showvision = 1
00 00 16 43150.000000earshot; you can make it visible with the script command ai2_showvision = 1
7D 1B 44 3F0.766044horizontal angle between two couples of "eye-rays" (one couple is left, one if right eye); works for both vision fields
F3 B3 51 3F0.819152vision field curve for central vision field; vision field looks like something between cone and cylinder; this value affect central angle of that; the higher this value is, the more is this field wrapped in order to achieve shaper angle; when set lower, vision field unwraps totally and it looks like radar antenna, attached to a character by two couples of straight strings(one couple left, one right)
E8 D5 12 3F0.573576vertical angle between eye-rays in one couple; this is for central vision field
D5 D0 31 3E0.173648 vision field curve for peripheral vision field
6B 61 D8 BE0.422618vertical angle between eye-rays in one couple; this is for peripheral vision field
B4 00 00 00180hostilethreat definite timer; how long will AI know exactly where its enemy is even if it can't see him with central vision-field; AI attacks him; can be checked by *ai2_report_verbose* command (this command causes random crashes, beware)
84 03 00 00900hostilethreat strong timer; how long will AI remain in strong feeling that there is the enemy, but will not attack him but investigate; can be checked by *ai2_report_verbose* command
10 0E 00 003600hostilethreat weak timer; how long will AI remain in weak feeling of an enemy, just looking around aimlessly (Glance pursue mode); can be checked by *ai2_report_verbose* command
10 0E 00 003600friendlythreat definite timer; how long will AI know exactly where its ally (Syndicate saw Syndicate for example) is even if it can't see him with central vision-field; AI simply knows there is someone else nearby; maybe has further possibilities; can be checked by *ai2_report_verbose* command (this command causes random crashes, beware)
50 46 00 0018000friendlythreat strong timer; how long will AI remain in strong feeling that there is someone else, but will not try to find him or look at him; can be checked by *ai2_report_verbose* command
A0 8C 00 0036000 friendlythreat weak timer; how long will AI remain in weak feeling of ally, doing its usual job; can be checked by *ai2_report_verbose* command
00 00 80 3F1.000000unknown; always the same
01 FB 03 001019link to 01019-konoko.ONCV
01 F9 03 001017link to 01017-.ONCP
01 FA 03 001018link to 01018-.ONIA
00 00 00 000unknown; maybe a canceled link; always the same
Lightweight
Below follows the first of 15 impact blocks. Every block ends always with FF FF.
Footstep_Walkwalk impact (reference to 04124-Footstep_Walk.Impt of level 0); always the same;
without the impacts you can't hear the steps of a character
End of the first of impact block. Below follows the content of the third image.
00 000unknown; always the same; maybe only a filler
not usedspecial death particles; only the mad bomber use it
00 00 00 000unknown; always the same
00 00 00 000unknown; always the same
01 E6 03 00998link to 00998-konoko_body_high.TRBS
01 E7 03 00999link to 00999-konoko002_high_texture_generic.TRMA
01 E8 03 001000link to 01000-.CBPM
01 EC 03 001004link to 01004-.CBPI
2C 01 00 00300peace timer; after that time the character switches back from fight to peace mode
30 75 00 0030000first idle timer in 1/60 seconds; after that time Oni plays a special idle animation (Thanks to Loser for this info.)
30 75 00 0030000second idle timer in 1/60 seconds; after that time Oni plays the special idle animation again (Thanks to Loser for this info.)
C8 00 00 00200basic health of the character model; extra health informations for every unique character you'll find in the Character.BINA file
48 00 00 0072unknown; always the same
00 00 80 3F1.000000minimal body size factor (Thanks to geyser for this info.)
00 00 80 3F1.000000maximal body size factor (Thanks to geyser for this info.)
00 00 00 000.000000unknown; always the same
00 00 00 000.000000unknown; always the same
00 00 00 3F0.500000stun timer; specifies how long should be this char stunned when hit with w6_vdg; the longest time possible to be stunned is when this byte is zero. Then this ONCC is stunned for 200 frames (30 frames for initial stagger + the rest of the frames is stun animation). The shortest time is for 1.000000 (no stagger/stun at all)
00 00 80 3E0.250000unknown
00 00 00 000.000000unknown; always the same
00 00 00 000.000000unknown; always the same
00 00 00 000.000000unknown; always the same
00 00 00 3F0.500000unknown
01 F6 03 001014link to 01014-konoko_animations.TRAC
01 F7 03 001015link to 01015-konoko_screens.TRSC
1E 0030unknown; always the same
00 000time between death and deletion of a character; only the mad bomber use it
000unknown; tested with Konoko of level 3; tested as a bitset:

0 - nothing
1 - character takes the weapon with the left hand + can't aim and holster the weapon
2 - character takes the weapon with the left hand + aim and holster the weapon (but only the "two-hand" weapons w3, w5, w7, w8, w9 and w11; the "one-hand" weapons have the same effect as bit 1)

The other bits (4, 8, 16, 32, 64 and 128) have the same effect as bit 2.

011unknown
000unknown
000when set to 1, generically turns on canttouchthis cheat for this ONCC (used by MutantMuro)
AD DEdeadnot used; always the same


Here you can download the complete overview of all ONCC files as a text file.
Copy it to a spreadsheet calculation program like Excel.


Previous File TypeBack to File TypesNext File Type

Back to main page