summaryrefslogtreecommitdiff
path: root/data/battle
diff options
context:
space:
mode:
authorRemy Oukaour <remy.oukaour@gmail.com>2018-01-10 17:30:27 -0500
committerRemy Oukaour <remy.oukaour@gmail.com>2018-01-10 17:30:27 -0500
commitc8575823a0e3694cba7c63e7ef468c55bb301804 (patch)
tree8dc753dc443b6b84d5649705415d66794781a88e /data/battle
parent28d5169a119ece438cc39b442adaa018b9a376e3 (diff)
Battle data goes in data/battle/
TreeMons, like fish groups, have constants
Diffstat (limited to 'data/battle')
-rw-r--r--data/battle/accuracy_multipliers.asm17
-rw-r--r--data/battle/critical_hits.asm18
-rw-r--r--data/battle/stat_multipliers.asm17
-rw-r--r--data/battle/stat_names.asm10
-rw-r--r--data/battle/type_boost_items.asm20
-rw-r--r--data/battle/type_matchups.asm119
6 files changed, 201 insertions, 0 deletions
diff --git a/data/battle/accuracy_multipliers.asm b/data/battle/accuracy_multipliers.asm
new file mode 100644
index 000000000..a5a309bbd
--- /dev/null
+++ b/data/battle/accuracy_multipliers.asm
@@ -0,0 +1,17 @@
+; Multiplier ratios for accuracy from modifier -6 to +6
+; (for other stats, see data/battle/stat_multipliers.asm)
+
+AccuracyLevelMultipliers:
+ db 33, 100 ; -6 = 33%
+ db 36, 100 ; -5 = 36%
+ db 43, 100 ; -4 = 43%
+ db 50, 100 ; -3 = 50%
+ db 60, 100 ; -2 = 60%
+ db 75, 100 ; -1 = 75%
+ db 1, 1 ; 0 = 100%
+ db 133, 100 ; +1 = 133%
+ db 166, 100 ; +2 = 166%
+ db 2, 1 ; +3 = 200%
+ db 233, 100 ; +4 = 233%
+ db 133, 50 ; +5 = 266%
+ db 3, 1 ; +6 = 300%
diff --git a/data/battle/critical_hits.asm b/data/battle/critical_hits.asm
new file mode 100644
index 000000000..dcbfa36fa
--- /dev/null
+++ b/data/battle/critical_hits.asm
@@ -0,0 +1,18 @@
+CriticalHitMoves:
+ db KARATE_CHOP
+ db RAZOR_WIND
+ db RAZOR_LEAF
+ db CRABHAMMER
+ db SLASH
+ db AEROBLAST
+ db CROSS_CHOP
+ db -1
+
+CriticalHitChances:
+ db 7 percent ; 0
+ db 12 percent + 2 ; 1
+ db 25 percent + 1 ; 2
+ db 33 percent + 1 ; 3
+ db 50 percent + 1 ; 4
+ db 50 percent + 1 ; 5
+ db 50 percent + 1 ; 6
diff --git a/data/battle/stat_multipliers.asm b/data/battle/stat_multipliers.asm
new file mode 100644
index 000000000..e7cf8e472
--- /dev/null
+++ b/data/battle/stat_multipliers.asm
@@ -0,0 +1,17 @@
+; Multiplier ratios for all stats from modifier -6 to +6
+; (except accuracy, see data/battle/accuracy_multipliers.asm)
+
+StatLevelMultipliers:
+ db 25, 100 ; -6 = 25%
+ db 28, 100 ; -5 = 28%
+ db 33, 100 ; -4 = 33%
+ db 40, 100 ; -3 = 40%
+ db 50, 100 ; -2 = 50%
+ db 66, 100 ; -1 = 66%
+ db 1, 1 ; 0 = 100%
+ db 15, 10 ; +1 = 150%
+ db 2, 1 ; +2 = 200%
+ db 25, 10 ; +3 = 250%
+ db 3, 1 ; +4 = 300%
+ db 35, 10 ; +5 = 350%
+ db 4, 1 ; +6 = 400%
diff --git a/data/battle/stat_names.asm b/data/battle/stat_names.asm
new file mode 100644
index 000000000..86164ceb4
--- /dev/null
+++ b/data/battle/stat_names.asm
@@ -0,0 +1,10 @@
+StatNames:
+; entries correspond to stat ids
+ db "ATTACK@"
+ db "DEFENSE@"
+ db "SPEED@"
+ db "SPCL.ATK@"
+ db "SPCL.DEF@"
+ db "ACCURACY@"
+ db "EVASION@"
+ db "ABILITY@"
diff --git a/data/battle/type_boost_items.asm b/data/battle/type_boost_items.asm
new file mode 100644
index 000000000..3b7231a59
--- /dev/null
+++ b/data/battle/type_boost_items.asm
@@ -0,0 +1,20 @@
+TypeBoostItems: ; 35703
+ db HELD_NORMAL_BOOST, NORMAL ; PINK_BOW/POLKADOT_BOW
+ db HELD_FIGHTING_BOOST, FIGHTING ; BLACKBELT
+ db HELD_FLYING_BOOST, FLYING ; SHARP_BEAK
+ db HELD_POISON_BOOST, POISON ; POISON BARB
+ db HELD_GROUND_BOOST, GROUND ; SOFT_SAND
+ db HELD_ROCK_BOOST, ROCK ; HARD_STONE
+ db HELD_BUG_BOOST, BUG ; SILVERPOWDER
+ db HELD_GHOST_BOOST, GHOST ; SPELL_TAG
+ db HELD_FIRE_BOOST, FIRE ; CHARCOAL
+ db HELD_WATER_BOOST, WATER ; MYSTIC WATER
+ db HELD_GRASS_BOOST, GRASS ; MIRACLE_SEED
+ db HELD_ELECTRIC_BOOST, ELECTRIC ; MAGNET
+ db HELD_PSYCHIC_BOOST, PSYCHIC ; TWISTEDSPOON
+ db HELD_ICE_BOOST, ICE ; NEVERMELTICE
+ db HELD_DRAGON_BOOST, DRAGON ; DRAGON_SCALE
+ db HELD_DARK_BOOST, DARK ; BLACKGLASSES
+ db HELD_STEEL_BOOST, STEEL ; METAL_COAT
+ db -1
+; 35726
diff --git a/data/battle/type_matchups.asm b/data/battle/type_matchups.asm
new file mode 100644
index 000000000..90e38ae2c
--- /dev/null
+++ b/data/battle/type_matchups.asm
@@ -0,0 +1,119 @@
+TypeMatchups: ; 34bb1
+ ; attacker, defender, *=
+ db NORMAL, ROCK, NOT_VERY_EFFECTIVE
+ db NORMAL, STEEL, NOT_VERY_EFFECTIVE
+ db FIRE, FIRE, NOT_VERY_EFFECTIVE
+ db FIRE, WATER, NOT_VERY_EFFECTIVE
+ db FIRE, GRASS, SUPER_EFFECTIVE
+ db FIRE, ICE, SUPER_EFFECTIVE
+ db FIRE, BUG, SUPER_EFFECTIVE
+ db FIRE, ROCK, NOT_VERY_EFFECTIVE
+ db FIRE, DRAGON, NOT_VERY_EFFECTIVE
+ db FIRE, STEEL, SUPER_EFFECTIVE
+ db WATER, FIRE, SUPER_EFFECTIVE
+ db WATER, WATER, NOT_VERY_EFFECTIVE
+ db WATER, GRASS, NOT_VERY_EFFECTIVE
+ db WATER, GROUND, SUPER_EFFECTIVE
+ db WATER, ROCK, SUPER_EFFECTIVE
+ db WATER, DRAGON, NOT_VERY_EFFECTIVE
+ db ELECTRIC, WATER, SUPER_EFFECTIVE
+ db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE
+ db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE
+ db ELECTRIC, GROUND, NO_EFFECT
+ db ELECTRIC, FLYING, SUPER_EFFECTIVE
+ db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE
+ db GRASS, FIRE, NOT_VERY_EFFECTIVE
+ db GRASS, WATER, SUPER_EFFECTIVE
+ db GRASS, GRASS, NOT_VERY_EFFECTIVE
+ db GRASS, POISON, NOT_VERY_EFFECTIVE
+ db GRASS, GROUND, SUPER_EFFECTIVE
+ db GRASS, FLYING, NOT_VERY_EFFECTIVE
+ db GRASS, BUG, NOT_VERY_EFFECTIVE
+ db GRASS, ROCK, SUPER_EFFECTIVE
+ db GRASS, DRAGON, NOT_VERY_EFFECTIVE
+ db GRASS, STEEL, NOT_VERY_EFFECTIVE
+ db ICE, WATER, NOT_VERY_EFFECTIVE
+ db ICE, GRASS, SUPER_EFFECTIVE
+ db ICE, ICE, NOT_VERY_EFFECTIVE
+ db ICE, GROUND, SUPER_EFFECTIVE
+ db ICE, FLYING, SUPER_EFFECTIVE
+ db ICE, DRAGON, SUPER_EFFECTIVE
+ db ICE, STEEL, NOT_VERY_EFFECTIVE
+ db ICE, FIRE, NOT_VERY_EFFECTIVE
+ db FIGHTING, NORMAL, SUPER_EFFECTIVE
+ db FIGHTING, ICE, SUPER_EFFECTIVE
+ db FIGHTING, POISON, NOT_VERY_EFFECTIVE
+ db FIGHTING, FLYING, NOT_VERY_EFFECTIVE
+ db FIGHTING, PSYCHIC, NOT_VERY_EFFECTIVE
+ db FIGHTING, BUG, NOT_VERY_EFFECTIVE
+ db FIGHTING, ROCK, SUPER_EFFECTIVE
+ db FIGHTING, DARK, SUPER_EFFECTIVE
+ db FIGHTING, STEEL, SUPER_EFFECTIVE
+ db POISON, GRASS, SUPER_EFFECTIVE
+ db POISON, POISON, NOT_VERY_EFFECTIVE
+ db POISON, GROUND, NOT_VERY_EFFECTIVE
+ db POISON, ROCK, NOT_VERY_EFFECTIVE
+ db POISON, GHOST, NOT_VERY_EFFECTIVE
+ db POISON, STEEL, NO_EFFECT
+ db GROUND, FIRE, SUPER_EFFECTIVE
+ db GROUND, ELECTRIC, SUPER_EFFECTIVE
+ db GROUND, GRASS, NOT_VERY_EFFECTIVE
+ db GROUND, POISON, SUPER_EFFECTIVE
+ db GROUND, FLYING, NO_EFFECT
+ db GROUND, BUG, NOT_VERY_EFFECTIVE
+ db GROUND, ROCK, SUPER_EFFECTIVE
+ db GROUND, STEEL, SUPER_EFFECTIVE
+ db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE
+ db FLYING, GRASS, SUPER_EFFECTIVE
+ db FLYING, FIGHTING, SUPER_EFFECTIVE
+ db FLYING, BUG, SUPER_EFFECTIVE
+ db FLYING, ROCK, NOT_VERY_EFFECTIVE
+ db FLYING, STEEL, NOT_VERY_EFFECTIVE
+ db PSYCHIC, FIGHTING, SUPER_EFFECTIVE
+ db PSYCHIC, POISON, SUPER_EFFECTIVE
+ db PSYCHIC, PSYCHIC, NOT_VERY_EFFECTIVE
+ db PSYCHIC, DARK, NO_EFFECT
+ db PSYCHIC, STEEL, NOT_VERY_EFFECTIVE
+ db BUG, FIRE, NOT_VERY_EFFECTIVE
+ db BUG, GRASS, SUPER_EFFECTIVE
+ db BUG, FIGHTING, NOT_VERY_EFFECTIVE
+ db BUG, POISON, NOT_VERY_EFFECTIVE
+ db BUG, FLYING, NOT_VERY_EFFECTIVE
+ db BUG, PSYCHIC, SUPER_EFFECTIVE
+ db BUG, GHOST, NOT_VERY_EFFECTIVE
+ db BUG, DARK, SUPER_EFFECTIVE
+ db BUG, STEEL, NOT_VERY_EFFECTIVE
+ db ROCK, FIRE, SUPER_EFFECTIVE
+ db ROCK, ICE, SUPER_EFFECTIVE
+ db ROCK, FIGHTING, NOT_VERY_EFFECTIVE
+ db ROCK, GROUND, NOT_VERY_EFFECTIVE
+ db ROCK, FLYING, SUPER_EFFECTIVE
+ db ROCK, BUG, SUPER_EFFECTIVE
+ db ROCK, STEEL, NOT_VERY_EFFECTIVE
+ db GHOST, NORMAL, NO_EFFECT
+ db GHOST, PSYCHIC, SUPER_EFFECTIVE
+ db GHOST, DARK, NOT_VERY_EFFECTIVE
+ db GHOST, STEEL, NOT_VERY_EFFECTIVE
+ db GHOST, GHOST, SUPER_EFFECTIVE
+ db DRAGON, DRAGON, SUPER_EFFECTIVE
+ db DRAGON, STEEL, NOT_VERY_EFFECTIVE
+ db DARK, FIGHTING, NOT_VERY_EFFECTIVE
+ db DARK, PSYCHIC, SUPER_EFFECTIVE
+ db DARK, GHOST, SUPER_EFFECTIVE
+ db DARK, DARK, NOT_VERY_EFFECTIVE
+ db DARK, STEEL, NOT_VERY_EFFECTIVE
+ db STEEL, FIRE, NOT_VERY_EFFECTIVE
+ db STEEL, WATER, NOT_VERY_EFFECTIVE
+ db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE
+ db STEEL, ICE, SUPER_EFFECTIVE
+ db STEEL, ROCK, SUPER_EFFECTIVE
+ db STEEL, STEEL, NOT_VERY_EFFECTIVE
+
+ db -2 ; end
+
+; Foresight removes Ghost's immunities.
+ db NORMAL, GHOST, NO_EFFECT
+ db FIGHTING, GHOST, NO_EFFECT
+
+ db -1 ; end (with Foresight)
+; 34cfd