Spaces:
Sleeping
Sleeping
File size: 1,271 Bytes
c9d1b27 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | # === HP ===
MAX_HP = 1200 # Agent HP
ENEMY_HP = 1000 # Enemy HP (asymmetric)
MAX_TURNS = 25
# === Attack Categories (RL Level) ===
ATTACK_TYPES = ["PHYSICAL", "CE", "TECHNIQUE"]
# === Base Damage per Category ===
BASE_DAMAGE = {
"PHYSICAL": 120,
"CE": 150,
"TECHNIQUE": 220
}
# === Resistance ===
RESISTANCE_MIN = 0
RESISTANCE_MAX = 80
ADAPT_INCREASE = 40
ADAPT_DECREASE = 20
# === Judgment Strike ===
JUDGMENT_BASE_DAMAGE = 100
JUDGMENT_BURST_DAMAGE = 350
# === Regeneration ===
HEAL_AMOUNT = 300
HEAL_COOLDOWN = 3
# === Action Mapping ===
ACTION_ADAPT_PHYSICAL = 0
ACTION_ADAPT_CE = 1
ACTION_ADAPT_TECHNIQUE = 2
ACTION_JUDGMENT = 3
ACTION_REGENERATION = 4
VALID_ACTIONS = [0, 1, 2, 3, 4]
# === Action to Resistance Category ===
ACTION_TO_TYPE = {
0: "PHYSICAL",
1: "CE",
2: "TECHNIQUE"
}
# === Subtypes ===
SUBTYPES = {
"PHYSICAL": ["SLASH", "IMPACT", "PIERCE"],
"CE": ["BLAST", "WAVE", "BEAM"],
"TECHNIQUE": ["SPIKE", "DELAYED", "PATTERN"]
}
# === Subtype Effects ===
ARMOR_BYPASS_RATIO = 0.2 # PIERCE ignores 20% resistance (ignore_armor)
# === Curriculum Enemy Phases ===
PHASE_1_END = 5 # Turns 1-5: always PHYSICAL
PHASE_2_END = 15 # Turns 6-15: cycling with 15% randomness
PHASE_2_DEVIATION = 0.15
|