# Damage Formula Calculator MCP

> Damage Formula Calculator evaluates and compares various combat scaling models for game design. Need to know if a new weapon feels powerful or just broken? This MCP runs simulations across linear, multiplicative, and advanced RPG formulas. Calculate sustained DPS rates, predict damage variance ranges, and compare multiple systems—all in one place. Stop guessing at balance; start calculating.

## Overview
- **Category:** mathematics
- **Price:** Free
- **Tags:** damage-calculation, rpg-mechanics, combat-balance, dps-simulator, formula-comparison

## Description

Game designers shouldn't have to rely on endless spreadsheets and guesswork to keep their combat math honest. This MCP simulates how different stats interact when characters fight. You can input a set of rules—say, 'Damage = ATK * (1 - DEF/10)'—and immediately see the mathematical fallout. It determines raw damage before random chance hits, calculates your sustained DPS rate over time, and lets you compare totally different formulas side by side. When building out a new combat system or tweaking an existing stat, this MCP tells you exactly how changes will affect gameplay balance. You connect to it via Vinkius and let your agent handle the heavy lifting of the math.

## Tools

### calculate_base_damage
Computes the raw damage value before any random variance or speed multipliers are applied.

### calculate_sustained_dps
Converts individual hit damage into a continuous rate to measure unit efficiency over time.

### compare_formula_efficiency
Evaluates multiple damage models at once, helping designers select the scaling behavior that fits their game's needs.

### simulate_damage_variance
Calculates the lower and upper bounds of potential damage to show possible combat outcomes.

## Prompt Examples

**Prompt:** 
```
Calculate the base damage for an attack with 50 ATK and 30 DEF using the linear formula.
```

**Response:** 
```
The calculated base damage is 20.
```

**Prompt:** 
```
What is the DPS if an attack deals 100 damage and occurs twice per second?
```

**Response:** 
```
The sustained DPS value is 200.
```

**Prompt:** 
```
Simulate the damage range for a base damage of 50.
```

**Response:** 
```
The damage will range from 42.5 to 57.5 based on the 15% variance.
```

## Capabilities

### Predicting Raw Damage Output
Finds the fundamental damage value an attack deals before considering random variance or multipliers.

### Analyzing Continuous Damage Over Time
Converts a single hit's damage into a steady, continuous rate to evaluate overall weapon efficiency.

### Comparing Multiple Formulas
Evaluates several different mathematical scaling models simultaneously to help you choose the best fit for your game’s mechanics.

### Modeling Combat Risk and Range
Determines the lowest possible damage and the highest possible damage, showing the full spectrum of combat outcomes.

## Use Cases

### Testing a New Class Build
A designer needs to see if their new 'Artillerist' class performs well. They ask the agent to use `calculate_sustained_dps` and compare it against the existing standard DPS calculation for other classes, ensuring the build feels powerful but not game-breaking.

### Balancing Legendary Weapons
A team needs to ensure a new legendary weapon isn't too volatile. They use `simulate_damage_variance` with the weapon's stats, giving them a clear range of damage so they can adjust its reliability or cap the maximum output.

### Choosing Core Combat Math
A project lead is stuck between two core systems. They use `compare_formula_efficiency` to compare Formula A (linear scaling) against Formula B (multiplicative), finally selecting the mathematical framework that best supports the game's overall pacing.

### Validating Initial Stats
A junior designer needs a quick check on initial character stats. They ask to `calculate_base_damage` for an attack using specific ATK/DEF values, verifying that the foundational damage number is correct before moving to advanced multipliers.

## Benefits

- Stop relying on averages. Use `simulate_damage_variance` to model worst-case scenarios, so you know exactly how much damage players might take even when everything goes wrong.
- Pinpoint true efficiency. Instead of just knowing a hit's power, use `calculate_sustained_dps` to see what that weapon actually does every second in combat.
- Make informed choices about scaling. When deciding between multiplicative vs. linear damage models, let `compare_formula_efficiency` show you which one keeps your game balanced long-term.
- Isolate the core numbers. Use `calculate_base_damage` to strip away random multipliers and see the fundamental power level of an attack before any modifiers are applied.
- Speed up iteration cycles. By automating complex mathematical simulations, you cut hours spent in spreadsheets down to seconds.

## How It Works

The bottom line is you get immediate mathematical proof about how your combat mechanics will actually play out.

1. You feed the MCP specific parameters, like base attack stats or resource costs.
2. The engine runs these numbers through its internal simulation models to calculate multiple metrics (e.g., min DPS, max damage).
3. Your agent receives a clear breakdown: what the average damage is, and what the potential range of failure or success looks like.

## Frequently Asked Questions

**How does calculate_base_damage help with DPS?**
It gives you the clean starting point. You first use `calculate_base_damage` to get the raw damage number, then that precise figure feeds into `calculate_sustained_dps` for an accurate rate.

**Can I compare different combat styles using compare_formula_efficiency?**
Yep. You input two or more mathematical rules—like 'burst damage' vs. 'tanking resistance'—and the MCP compares their efficiency side-by-side.

**What does simulate_damage_variance show me?**
It shows the range of outcomes. Instead of a single average number, you get two values: the lowest possible damage and the highest possible damage. That's your risk assessment.

**Does calculate_sustained_dps account for critical hits?**
Yes, it calculates continuous rate over time. You can feed it both the average DPS and a high-variance number to see how bursts affect sustained damage.

**What specific data points does using `calculate_base_damage` require?**
It requires core numerical stats like Attack (ATK) and Defense (DEF). You must provide the formula parameters directly; it won't read from external game files or databases.

**Can I use `compare_formula_efficiency` to test dozens of formulas at once?**
Yes. Pass the different scaling model parameters within a single request payload. This lets you evaluate many options efficiently without running multiple, slow sequential calls.

**If I run `simulate_damage_variance` with an invalid variance multiplier, what happens?**
The MCP will return a detailed error message explaining the mathematical impossibility of your input. It forces you to correct the parameters before calculating any damage bounds.

**Is the DPS calculated by `calculate_sustained_dps` limited to core stats, ignoring status effects?**
It calculates continuous DPS based strictly on the individual hit values you pass in. You must manually factor in any debuffs or buffs before sending those adjusted numbers to the tool.

**How can I calculate the raw damage for a specific attack?**
Use the `calculate_base_damage` tool by providing the attacker's strength, defender's defense, and the chosen formula type.

**Can I see the potential range of damage due to RNG?**
Yes. By using `simulate_damage_variance` with a previously calculated base damage, you can find the minimum and maximum possible outcomes within the 15% variance range.

**How do I compare different scaling models?**
The `compare_formula_efficiency` tool allows you to pass a list of formulas (linear, multiplicative, or advanced) to see their results side-by-side.