Screenshot
Basic setup
- APPEARANCE, WEAPON, POSITION, MISC SPAWN FLAGS
Raw hex
|
Value
|
Meaning
|
52 41 48 43
|
CHAR
|
character
|
87 19 00 00
|
6535
|
old file ID
|
00 00 00 00
|
0
|
unknown
|
A5 7D 9D 43
|
314.981597
|
x-position of the character
|
00 00 D8 C1
|
-27.000000
|
y-position (height) of the character
|
98 09 1E 42
|
39.509368
|
z-position of the character
|
00 00 00 00
|
0.000000
|
rotation on the x-axis in degrees
|
00 00 87 43
|
270.000000
|
rotation on the y-axis in degrees
|
00 00 00 00
|
0.000000
|
rotation on the z-axis in degrees
|
01
|
1
|
option bitset 1 (see below)
|
00
|
0
|
option bitset 2 (see below)
|
00 00
|
0
|
unknown; always zero
|
konoko_generic
|
link by name to character class (local, konoko_generic.ONCC)
|
konoko
|
name of the character
|
w1_tap
|
link by name to weapon class (global, w1_tap.ONWC)
|
not used
|
unknown; never used in Oni (maybe second weapon)
|
|
- Option bitset 1
- 1 - player character
- 2 - random skin
- 4 - not prespawned
- 8 - non-combatant
- 16 - multi-spawnable
- 32 - unknown
- 64 - unkillable
- 128 - superammo
- Option bitset 2
option 2; it's a bitset; the following options are possible (values in dec):
- 1 - boss (whatever that means)
- 2 - has LSI
- 4 - no auto-drop (whatever that means)
- 8 - upgrade difficulty (spawns a stronger enemy if you play on medium or hard)
- 16 - omniscient (whatever that means)
- 32 - unknown, never used
- 64 - unknown, never used
- 128 - unknown, never used
Script functions
- ARE CALLED BY THE SCRIPT ENGINE WHEN CERTAN THINGS HAPPEN TO A CHARACTER
- To whoever edited the below table, a few things could be more precise
- what does "when a character is alarmed" mean, exactly? what is "alarm calling"?
- if none of that is clear, how did you find out about that whole "alarm" thing?
- same question about the "nopath" : where does the identifier come from?
- why not register and log in when contributing such critical stuff?
- ^^
- Hello there, it was me ^_^'. Sorry, Geyser, but I filled that late in the evening so I was quite in a hurry. Answers for your questions-
- character is alarmed: Due to my hunt for smarter AI I investigate all about alarm thing. Quite interesting. I have no results as far, but some of my theories can be right. So...one of those "unknown" fields in RAHC is ALARM GROUP. Next, alarm consoles in all levels EXCEPT first level (as we know, first one is the most finished) have only "execute script" event. In the first level, our infamous Bay4_Comguy_1's loved alarm console has "execute string" and also has "ACTIVATE ALARM" event 0600 0400, too. I experimented with that. Again, no results as far and it looks like it is defunct, but that gun AI also looked like it wasn't gun AI but garbagge...My theory is when this alarm console is used it tells to all AI with exact number (alarm group, in this case 04) that alarm is triggered. And when this happens, script that is written in ?alarm function? slot should be exectuted (*ai2_makeaware (ai_name, 0)* for easy example). I will keep searching, because this seems like fine way how to make enemies smarter but not annoying(no super-powers, but when alarm is triggered, all enemies with right alarm group number will be awared of you)
- I found it by interesting way... First I was messing with COMBAT files in order to create "holstering enemies effect®". Here I noticed what was written on WMDD for COMBAT files: alarm behavior: search distance, distance of enemy ignorance, attack enemy distance. I started to play with that but I achieved no results. But whole alarm thing isn't just in COMBAT, it is in consoles, too. So I investigated console files. Because of that, I noticed that in level 1: here is strange block in alarm console: 0600 0400. I was wandering what is it, because either here or on Ssg's site there wasn't 06 as number of some console event. So I looked into Oni.exe. Here I found overview of console events (it is written in BIP thread on the forum) and acknowledged that 06 means "activate alarm". OK, but what do they want to say with that if there is nothing such us "alarm"(apart of doors, turrets, triggers and so on, each with its own ID)??? So I looked into picture that I saved when Ssg showed his results of importing WMDD from level0-tools.dat into normal level0.dat. Here I noticed "alarms: groups" and also here I learnt those "alarm" and "nopath" names.
- After reading all of this, relax, make cup of tea, write me some of your sharp critics, then erase this stuff and just say "that Loser is really BAKA....." Saionara, Loser - - - - > P.S.: H&SCWM's going to be, only I don't know when. Maybe it will be some level of ONI 2.....but it will BE.
Raw hex
|
Value
|
Meaning
|
not used
|
script function called when character is spawned
|
you_lose
|
script function called when character dies (health reaches 0); can work multiple times
|
not used
|
script function called when character notices an enemy; works only once
|
not used
|
alarm function; never used in Oni, "should" be called when this character is alarmed. Dunno if this one isn't working or alarm calling isn't working...
|
not used
|
script function called when character is hurt for the first time; works only once
|
not used
|
script function called when character is "defeated" (health reaches 1); works only once
|
not used
|
script function called when character runs out of ammo (reloads a weapon with the last clip/cell); works only once, and the character must have the ammo at spawn-time
|
not used
|
nopath function, some exotic script function call ("should" be called when a character has trouble pathfinding, but isn't)
|
|
Less basic setup
- INVENTORY, TEAM, JOBS, ALERT/PURSUIT
Raw hex
|
Value
|
Meaning
|
00 00 00 00
|
0
|
additional health (the basic health you'll find in the ONCC file of the character)
|
00 00 00 00
|
0
|
job ID (see below)
|
00 00
|
0
|
patrol path ID (looked up in local CJBOPatrol_Path.BINA)
|
00 00
|
0
|
combat ID (looked up in global CJBOCombat.BINA)
|
00 00
|
0
|
melee ID (looked up in global CJBOMelee Profile.BINA)
|
00 00
|
0
|
neutral ID (looked up in local CJBONeutral.BINA)
|
01 00
|
1
|
amount of ammo (red clips) that can be used
|
00 00
|
0
|
amount of ammo (red clips) that can be dropped
|
00 00
|
0
|
amount of energy cells (green clips) that can be used
|
00 00
|
0
|
amount of energy cells (green clips) that can be dropped
|
00 00
|
0
|
amount of hypos that can be used
|
00 00
|
0
|
amount of hypos that can be dropped
|
00 00
|
0
|
amount of force shields that can be used
|
00 00
|
0
|
amount of force shields that can be dropped
|
00 00
|
0
|
amount of phase cloaking that can be used (60 = 1 second)
|
00 00
|
0
|
amount of phase cloaking that can be dropped
|
00 00 00 00
|
0
|
unknown; always zero
|
00 00 00 00
|
0
|
team ID (see below)
|
64 00 00 00
|
100
|
ammo filling in percent
|
00 00 00 00
|
0
|
initial alert level (see below)
|
00 00 00 00
|
0
|
minimal alert level
|
01 00 00 00
|
1
|
alert level when starting a job
|
02 00 00 00
|
2
|
alert level when investigating
|
00
|
0
|
unknown
|
00
|
0
|
unknown
|
00
|
0
|
unknown
|
00
|
0
|
unknown
|
04 00 00 00
|
4
|
unknown (pm_pursue_strong?)
|
01 00 00 00
|
1
|
unknown (pm_pursue_weak?)
|
04 00 00 00
|
4
|
unknown (pm_pursue_strong_seen?)
|
04 00 00 00
|
4
|
unknown (pm_pursue_weak_seen?)
|
00 00 00 00
|
0
|
unknown (pm_pursue_lost?)
|
|
- Job ID
- 0 - none
- 1 - idle
- 2 - guard (never used in Oni)
- 3 - patrol
- 4 - teambattle (never used in Oni)
- Team ID
- 0 - Konoko
- 1 - TCTF
- 2 - Syndicate
- 3 - Neutral
- 4 - SecurityGuard
- 5 - RogueKonoko
- 6 - Switzerland
- 7 - SyndicateAccessory
- Alert level
- 0 - lull
- 1 - low
- 2 - medium
- 3 - high
- 4 - combat
Blue Box Beta WMDD