From OHRRPGCE-Wiki
NPC Definitions
This lump is stored in BSAVE format. It has a 7 byte header which indicates the size of the remaining data (and other things). See BSAVE Header for more information.
- In versions werewaffle and older, this lump is 36 records of 30 bytes (15 INTs) each, followed by 1920 unused bytes, 3007 bytes in total.
- starting with version xocolatl, this lump is 100 records of 30 bytes (15 INTs) each, 3007 bytes in total.
- starting with version zenzizenzic, the length of the records are stored in BINSIZE.BIN, and the number of records is variable (check the file length, subtract 7, and divide by record length), however Custom and Game currently support a maximum of 500 records.
[edit] Formal Specs
About Formal Specs
| Offset |
Data |
Meaning
|
| 0 |
INT |
Picture
|
| 1 |
INT |
Palette, or -1 for default
|
| 2 |
INT |
Move type
|
| 3 |
INT |
Speed setting (Not actual speed!)
|
| 4 |
INT |
Display text # (0 for none - you can't display box 0)
|
| 5 |
INT |
When activated action
|
| 6 |
INT |
Give item # + 1 (0 means none)
|
| 7 |
INT |
Pushability
|
| 8 |
INT |
Activation
|
| 9 |
INT |
Appear only if tag (-2 = tag 2 is off? ,2 = tag 2 is on?, 0=n/a)
|
| 10 |
INT |
Second appearance tag (see 9)
|
| 11 |
INT |
Usable.. 0 if repeatably usable else this byte holds the flag number minus 1000.
|
| 12 |
INT |
Plotscript Trigger
|
| 13 |
INT |
Script argument
|
| 14 |
INT |
Vehicle # + 1 (0 means none)
|
| 15 |
INT |
(Default) Zone restriction. Zone ID 1-9999, 0 for the map default, -1 for none.
|
| 15 |
INT |
(Default) Avoidance zone. Zone ID 1-9999, 0 for the map default, -1 for none. (This is a WIP feature)
|
[edit] Move type
| Value |
Meaning
|
| 0 |
Stand Still
|
| 1 |
Wander
|
| 2 |
Pace
|
| 3 |
Right Turns
|
| 4 |
Left Turns
|
| 5 |
Random Turns
|
| 6 |
Chase Player
|
| 7 |
Avoid Player
|
| 8 |
Walk in place
|
[edit] Speed Setting
| Value |
Real Speed
|
| 0 |
0
|
| 1 |
1
|
| 2 |
2
|
| 3 |
10
|
| 4 |
4
|
| 5 |
5
|
[edit] When activated
| Value |
Meaning
|
| 0 |
Change direction
|
| 1 |
Face player
|
| 2 |
Don't face player (?)
|
[edit] Pushability
| Value |
Meaning
|
| 0 |
Off
|
| 1 |
Full
|
| 2 |
Horiz.
|
| 3 |
Vert.
|
| 4 |
Up only
|
| 5 |
Right only
|
| 6 |
Down only
|
| 7 |
Left only
|
[edit] Activation
| Value |
Meaning
|
| 0 |
Use
|
| 1 |
Touch
|
| 2 |
Step on
|