Difference between revisions of "EarthBound:Enemy Configuration Table"

From Data Crystal
Jump to: navigation, search
m (Weakness ranges (0-4 -> 0-3))
(Boss flag is actually no-escape flag)
Line 162: Line 162:
 
{{table el|len=2 bytes|loc=0x46-0x47|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
{{table el|len=2 bytes|loc=0x46-0x47|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #1'''. May be affected by [[#Action #1 argument]].
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #1'''. May be affected by [[#Action #1 argument]].
 
  
 
==Action #2==
 
==Action #2==
 
{{table el|len=2 bytes|loc=0x48-0x49|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
{{table el|len=2 bytes|loc=0x48-0x49|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #2'''. May be affected by [[#Action #2 argument]].
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #2'''. May be affected by [[#Action #2 argument]].
 
  
 
==Action #3==
 
==Action #3==
 
{{table el|len=2 bytes|loc=0x4A-0x4B|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
{{table el|len=2 bytes|loc=0x4A-0x4B|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #3'''. May be affected by [[#Action #3 argument]].
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #3'''. May be affected by [[#Action #3 argument]].
 
  
 
==Action #4==
 
==Action #4==
 
{{table el|len=2 bytes|loc=0x4C-0x4D|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
{{table el|len=2 bytes|loc=0x4C-0x4D|valrange=0-65535 (0x0000-0xFFFF), but it must be a valid index in the [[EarthBound:Battle Actions Table|Battle Actions Table]]}}
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #4'''. May be affected by [[#Action #4 argument]].
 
The [[EarthBound:Battle Actions Table|effect]] of this enemy's '''action #4'''. May be affected by [[#Action #4 argument]].
 
  
 
==Final action==
 
==Final action==
Line 207: Line 203:
 
'''''Unknown H''''''s purpose is unknown. It has also been called '''Unknown 3'''. Tomato believed it had some relationship with enemies calling for help or having multiple enemies on the screen.
 
'''''Unknown H''''''s purpose is unknown. It has also been called '''Unknown 3'''. Tomato believed it had some relationship with enemies calling for help or having multiple enemies on the screen.
  
==Boss flag==
+
==No-escape flag==
 
{{table el|len=1 byte|loc=0x56|valrange=0-1}}
 
{{table el|len=1 byte|loc=0x56|valrange=0-1}}
When enabled, the '''boss flag''' makes it impossible for the player to flee from combat with the enemy.
+
When enabled, the '''no-escape flag''' makes it impossible for the player to flee from combat with the enemy.
  
 
==Item drop frequency==
 
==Item drop frequency==

Revision as of 18:54, 24 April 2012

Enemy Configuration Table
Game EarthBound
Start Address 0x159789
End Address 0x15EC5A
# of Entries 231
Entry Length 94 bytes (0x5E)
Total Length 21714 bytes (0x54D2)
Back to the ROM map
The Enemy Configuration Table stores most of the data for enemies which is used inside battles. The first enemy is named "null" and has an index of 0. Information about where enemies spawn is in the enemy placement data and spans a few tables.

Format

"The" flag

If the "The" flag is 1, then the word "the" is put in front of the enemy's name whenever it is mentioned in combat.

Name

Name of the enemy in plain EarthBound text.

Sex

The sex of the enemy indicates which pronoun should be used when referring to it: male (1), female (2), or neutral (3).

Type

The elemental type of the enemy. Enemies can be normal (0), insect (1), or metal (2). This changes the effects of certain items.

Battle sprite

The sprite to be used in battle to represent this enemy. Note that byte 0x35 determines the palette used.

Out of battle sprite

Run flag

If true (1), then the enemy will run away from the player if the player's level is greater than the enemy's level.

HP

The number of hit points the enemy has. That is, the amount of damage which must be dealt to the enemy before it dies (unless the enemy heals itself).

PP

The number of psychic points the enemy has. Psychic points are expended when using PSI. If the enemy runs out of psychic points, they cannot use any more PSI.

Experience

The amount of experience granted to the player's party upon defeating the enemy. This is spilt among however many playable characters there are in the player's party (1-4).

Money

The amount of money added to the player's ATM account upon defeating the enemy.

Movement

This chooses the enemy's out of battle movement pattern. Exactly how this works is not well understood.

Start text pointer

  • Length: 4 bytes (0x4)
  • Offset within entry: 0x2D-0x30
  • Range of values: 0x00000000-0x00FFFFFF, but it must point to valid text; may or may not require a pointer to the ROM as opposed to RAM

Pointer to the text shown when you start a battle with this enemy.

Death text pointer

  • Length: 4 bytes (0x4)
  • Offset within entry: 0x31-0x34
  • Range of values: 0x00000000-0x00FFFFFF, but it must point to valid text; may or may not require a pointer to the ROM as opposed to RAM

Pointer to the text shown when you defeat this enemy.

Battle sprite palette

  • Length: 1 byte
  • Offset within entry: 0x35
  • Range of values: 0-255 (0x00-0xFF), but above 31 (0x1F) is garbage

The palette used for the battle sprite. Only values 0-31 (0x00-0x1F) are meant to be used; higher values go into other non-palette data, but still work and therefore may be useful.

Level

The level is used by the run flag. It may have other unknown effects.

Music

The music played when fighting this enemy by index in the music listing.

Offense

An enemy's offense is how strong their attacks are. An enemy with a greater offense value deals more damage.

Unknown K

Unknown K's purpose is unknown. It is definitely not a second byte for offense, although it would be reasonable for it to be related.

Defense

An enemy's defense is how strong their armor is. An enemy with a greater defense value takes less damage.

Unknown L

Unknown L's purpose is unknown. It has also been called Unknown 4. It is definitely not a second byte for defense, although it would be reasonable for it to be related. In the original game, it is 0 for all enemies except "Heavily Armed Pokey" and "Soul Consuming Flame."

Speed

An enemy's speed determines which order the enemy attacks. If there are multiple enemies, the one with the higher speed usually moves first.

Guts

An enemy's guts affects how often their attacks do critical damage against their target.( known in earthbound as "SMAAASH" )

Luck

An enemy's luck affects how often they are able to dodge attacks.

The higher this value, the higher their chance of avoiding any non-PSI attacks.

Enemies with higher luck may also be immune to certain levels of Ness's "PSI Special" attack.

Weakness to PSI Fire

Weakness to PSI Fire is a damage PSI weakness value.

Weakness to PSI Freeze

Weakness to PSI Freeze is a damage PSI weakness value.

Weakness to PSI Flash

Weakness to PSI Flash is a status PSI weakness value.

Weakness to Paralysis

Weakness to Paralysis is a status PSI weakness value.

Weakness to Hypnosis/Brainshock

Weakness to Hypnosis/Brainshock is a status PSI weakness value.

Miss rate

An enemy's miss rate is its chance of missing the player when it attacks. The specifics are unknown.

Action order

Controls the order in which the enemy's actions are used.

Value Action order pattern
00 Random
01 Random, favor third
02 In order
03 Staggered order (pattern like 34343434341212121212)

Action #1

The effect of this enemy's action #1. May be affected by #Action #1 argument.

Action #2

The effect of this enemy's action #2. May be affected by #Action #2 argument.

Action #3

The effect of this enemy's action #3. May be affected by #Action #3 argument.

Action #4

The effect of this enemy's action #4. May be affected by #Action #4 argument.

Final action

The effect of this enemy's final action, which is automatically performed upon the death of the enemy. May be affected by #Final action argument.

Action #1 argument

This could be many different things depending on #Action #1.

Action #2 argument

This could be many different things depending on #Action #2.

Action #3 argument

This could be many different things depending on #Action #3.

Action #4 argument

This could be many different things depending on #Action #4.

Final action argument

This could be many different things depending on #Final action.

Unknown H

Unknown H's purpose is unknown. It has also been called Unknown 3. Tomato believed it had some relationship with enemies calling for help or having multiple enemies on the screen.

No-escape flag

When enabled, the no-escape flag makes it impossible for the player to flee from combat with the enemy.

Item drop frequency

The item drop frequency affects how often the enemy's dropped item is dropped. In general, greater values mean a drop is more common. Specifically, P(drop) = <math>\frac{2^{freq byte}}{128}</math> or as a table:

Value Probability of item drop
00 1/128
01 1/64
02 1/32
03 1/16
04 1/8
05 1/4
06 1/2
07 1/1 (always)

Item dropped

The index in the Item Properties Table of the item dropped by this enemy.

Status

The initial status of the enemy.

Value Starting status
00 Normal
01 PSI Shield Alpha (Blocks PSI)
02 PSI Shield Beta (Reflects PSI)
03 Shield Alpha (Blocks physical)
04 Shield Beta (Reflects physical)
05 Asleep
06 Can't concentrate
07 Feeling strange

Death sound

Determines whether the enemy's death sound is that of a normal enemy (0) or a boss (1).

Row

Determines whether the enemy appears in the front row (0) or the back row (1).

Max call

The maximum number of additional enemies this enemy may call. This only affects enemies who have actions which call other enemies.

Mirror success rate

Percent chance that Poo's (the fourth character) mirror move will work on this enemy.

See Also

External Links