calculateDamage
Determine Pokémon battle damage by analyzing attacker and defender stats, abilities, moves, and field conditions accurately for strategic planning.
Instructions
Calculates the battle damage between an attacking and a defending Pokémon, considering their stats, abilities, items, and field conditions.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
attacker | Yes | ||
defender | Yes | ||
field | Yes | ||
move | Yes |
Input Schema (JSON Schema)
{
"properties": {
"attacker": {
"properties": {
"ability": {
"description": "The Pokémon's ability (e.g., 'Lightning Rod').",
"type": "string"
},
"boosts": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"evs": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"hp": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"item": {
"description": "The Pokémon's held item (e.g., 'Light Ball').",
"type": "string"
},
"ivs": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"hp": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"level": {
"default": 50,
"type": "number"
},
"nature": {
"description": "The Pokémon's nature (e.g., 'Timid').",
"type": "string"
},
"species": {
"description": "Name of the Pokémon species (e.g., 'Pikachu').",
"type": "string"
},
"status": {
"description": "e.g., 'brn' for Burned.",
"enum": [
"",
"psn",
"brn",
"frz",
"par",
"slp"
],
"type": "string"
}
},
"required": [
"species"
],
"type": "object"
},
"defender": {
"properties": {
"ability": {
"description": "The Pokémon's ability (e.g., 'Lightning Rod').",
"type": "string"
},
"boosts": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"evs": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"hp": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"item": {
"description": "The Pokémon's held item (e.g., 'Light Ball').",
"type": "string"
},
"ivs": {
"properties": {
"atk": {
"type": "number"
},
"def": {
"type": "number"
},
"hp": {
"type": "number"
},
"spa": {
"type": "number"
},
"spd": {
"type": "number"
},
"spe": {
"type": "number"
}
},
"type": "object"
},
"level": {
"default": 50,
"type": "number"
},
"nature": {
"description": "The Pokémon's nature (e.g., 'Timid').",
"type": "string"
},
"species": {
"description": "Name of the Pokémon species (e.g., 'Pikachu').",
"type": "string"
},
"status": {
"description": "e.g., 'brn' for Burned.",
"enum": [
"",
"psn",
"brn",
"frz",
"par",
"slp"
],
"type": "string"
}
},
"required": [
"species"
],
"type": "object"
},
"field": {
"properties": {
"attackerSide": {
"properties": {
"isLightScreen": {
"default": false,
"type": "boolean"
},
"isReflect": {
"default": false,
"type": "boolean"
},
"isSR": {
"default": false,
"description": "Stealth Rock is active.",
"type": "boolean"
},
"spikes": {
"default": 0,
"enum": [
0,
1,
2,
3
],
"type": "number"
}
},
"type": "object"
},
"defenderSide": {
"properties": {
"isLightScreen": {
"default": false,
"type": "boolean"
},
"isReflect": {
"default": false,
"type": "boolean"
},
"isSR": {
"default": false,
"description": "Stealth Rock is active.",
"type": "boolean"
},
"spikes": {
"default": 0,
"enum": [
0,
1,
2,
3
],
"type": "number"
}
},
"type": "object"
},
"gameType": {
"default": "Singles",
"enum": [
"Singles",
"Doubles"
],
"type": "string"
},
"isBeadsOfRuin": {
"default": false,
"type": "boolean"
},
"isSwordOfRuin": {
"default": false,
"type": "boolean"
},
"isTabletsOfRuin": {
"default": false,
"type": "boolean"
},
"isVesselOfRuin": {
"default": false,
"type": "boolean"
},
"terrain": {
"enum": [
"",
"Electric",
"Grassy",
"Misty",
"Psychic"
],
"type": "string"
},
"weather": {
"enum": [
"",
"Sun",
"Rain",
"Sand",
"Snow"
],
"type": "string"
}
},
"type": "object"
},
"move": {
"properties": {
"isCrit": {
"default": false,
"description": "Whether the move is a guaranteed critical hit.",
"type": "boolean"
},
"name": {
"description": "Name of the move being used (e.g., 'Thunderbolt').",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
}
},
"required": [
"attacker",
"defender",
"field",
"move"
],
"type": "object"
}