using UnityEngine; public class XPTest : MonoBehaviour { [Header("Test Settings")] public int testPlayerLevel = 1; public int maxEnemyLevel = 50; [Header("Results")] [SerializeField] private string xpComparison; void Start() { TestXPComparison(); } void TestXPComparison() { string comparison = "=== XP Comparison (Old vs New System) ===\n"; comparison += $"Player Level: {testPlayerLevel}\n\n"; comparison += "Enemy Level | Old XP | New XP | Difference\n"; comparison += "-----------|--------|--------|------------\n"; for (int enemyLevel = 1; enemyLevel <= maxEnemyLevel; enemyLevel += 5) { int oldXP = enemyScript.CalculateLegacyXP(enemyLevel); int newXP = enemyScript.CalculateExponentialXP(enemyLevel, testPlayerLevel); int difference = newXP - oldXP; comparison += $"{enemyLevel,10} | {oldXP,6} | {newXP,6} | {difference:+0;-0}\n"; } comparison += "\n=== Key Examples ===\n"; comparison += $"Level 10 Enemy: {enemyScript.CalculateExponentialXP(10, testPlayerLevel)} XP\n"; comparison += $"Level 20 Enemy: {enemyScript.CalculateExponentialXP(20, testPlayerLevel)} XP\n"; comparison += $"Level 30 Enemy: {enemyScript.CalculateExponentialXP(30, testPlayerLevel)} XP\n"; comparison += $"Level 40 Enemy: {enemyScript.CalculateExponentialXP(40, testPlayerLevel)} XP\n"; comparison += $"Level 50 Enemy: {enemyScript.CalculateExponentialXP(50, testPlayerLevel)} XP\n"; comparison += $"Level 60 Enemy: {enemyScript.CalculateExponentialXP(60, testPlayerLevel)} XP (Capped)\n"; xpComparison = comparison; Debug.Log(comparison); } [ContextMenu("Run XP Test")] void RunXPTest() { TestXPComparison(); } [ContextMenu("Test Risk Reward")] void TestRiskReward() { Debug.Log("=== Risk Reward Testing ==="); int enemyLevel = 40; for (int playerLevel = 1; playerLevel <= 50; playerLevel += 10) { int xp = enemyScript.CalculateExponentialXP(enemyLevel, playerLevel); int levelDiff = enemyLevel - playerLevel; string risk = levelDiff > 0 ? $"Risk (+{levelDiff} levels)" : "Safe"; Debug.Log($"Player Level {playerLevel} vs Enemy Level {enemyLevel}: {xp} XP ({risk})"); } } }