Initial Godot tactical RPG prototype
This commit is contained in:
203
data/defs/classes.json
Normal file
203
data/defs/classes.json
Normal file
@@ -0,0 +1,203 @@
|
||||
{
|
||||
"hero": {
|
||||
"name": "Hero",
|
||||
"tier": 1,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": ["spark", "fire_tactic", "mend"],
|
||||
"growth": { "hp": "B", "mp": "B", "atk": "B", "def": "B", "int": "A", "agi": "B" },
|
||||
"base_bonus": { "hp": 0, "atk": 0, "def": 0 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "commander" }
|
||||
},
|
||||
"commander": {
|
||||
"name": "Commander",
|
||||
"tier": 2,
|
||||
"move_type": "foot",
|
||||
"move": 5,
|
||||
"attack_range": [1, 1],
|
||||
"skills": ["spark", "fire_tactic", "mend", "great_mend"],
|
||||
"growth": { "hp": "A", "mp": "B", "atk": "A", "def": "B", "int": "A", "agi": "B" },
|
||||
"base_bonus": { "hp": 4, "atk": 1, "def": 1, "int": 1 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"cavalry": {
|
||||
"name": "Cavalry",
|
||||
"tier": 1,
|
||||
"move_type": "mounted",
|
||||
"move": 5,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "A", "mp": "D", "atk": "A", "def": "B", "int": "D", "agi": "B" },
|
||||
"base_bonus": { "hp": 2, "atk": 0, "def": 0 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["spear", "sword"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "elite_cavalry" }
|
||||
},
|
||||
"elite_cavalry": {
|
||||
"name": "Elite Cavalry",
|
||||
"tier": 2,
|
||||
"move_type": "mounted",
|
||||
"move": 6,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "A", "mp": "D", "atk": "A", "def": "A", "int": "D", "agi": "A" },
|
||||
"base_bonus": { "hp": 5, "atk": 2, "def": 1 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["spear", "sword"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"infantry": {
|
||||
"name": "Infantry",
|
||||
"tier": 1,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "B", "mp": "D", "atk": "B", "def": "B", "int": "D", "agi": "C" },
|
||||
"base_bonus": { "hp": 0, "atk": 0, "def": 0 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword", "spear"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "guard_captain" }
|
||||
},
|
||||
"guard_captain": {
|
||||
"name": "Guard Captain",
|
||||
"tier": 2,
|
||||
"move_type": "foot",
|
||||
"move": 5,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "A", "mp": "D", "atk": "B", "def": "A", "int": "D", "agi": "C" },
|
||||
"base_bonus": { "hp": 4, "atk": 1, "def": 2 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword", "spear"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"warrior": {
|
||||
"name": "Warrior",
|
||||
"tier": 1,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "A", "mp": "E", "atk": "A", "def": "B", "int": "E", "agi": "C" },
|
||||
"base_bonus": { "hp": 4, "atk": 2, "def": 1, "int": -2 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["axe", "sword"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "champion" }
|
||||
},
|
||||
"champion": {
|
||||
"name": "Champion",
|
||||
"tier": 2,
|
||||
"move_type": "foot",
|
||||
"move": 5,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "A", "mp": "E", "atk": "A", "def": "A", "int": "E", "agi": "B" },
|
||||
"base_bonus": { "hp": 6, "atk": 2, "def": 2, "int": -2 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["axe", "sword"],
|
||||
"armor": ["light_armor", "heavy_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"archer": {
|
||||
"name": "Archer",
|
||||
"tier": 1,
|
||||
"move_type": "archer",
|
||||
"move": 4,
|
||||
"attack_range": [2, 2],
|
||||
"skills": [],
|
||||
"growth": { "hp": "C", "mp": "D", "atk": "B", "def": "C", "int": "D", "agi": "A" },
|
||||
"base_bonus": { "hp": 0, "atk": 0, "def": 0 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["bow"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "marksman" }
|
||||
},
|
||||
"marksman": {
|
||||
"name": "Marksman",
|
||||
"tier": 2,
|
||||
"move_type": "archer",
|
||||
"move": 5,
|
||||
"attack_range": [2, 2],
|
||||
"skills": [],
|
||||
"growth": { "hp": "B", "mp": "D", "atk": "A", "def": "C", "int": "D", "agi": "A" },
|
||||
"base_bonus": { "hp": 3, "atk": 2, "agi": 1 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["bow"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"strategist": {
|
||||
"name": "Strategist",
|
||||
"tier": 1,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": ["spark", "fire_tactic", "mend"],
|
||||
"growth": { "hp": "C", "mp": "A", "atk": "E", "def": "D", "int": "A", "agi": "C" },
|
||||
"base_bonus": { "hp": -2, "mp": 8, "atk": -2, "def": -1, "int": 2 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
},
|
||||
"promotion": { "level": 15, "to": "military_advisor" }
|
||||
},
|
||||
"military_advisor": {
|
||||
"name": "Military Advisor",
|
||||
"tier": 2,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": ["spark", "fire_tactic", "mend", "great_mend"],
|
||||
"growth": { "hp": "B", "mp": "A", "atk": "E", "def": "C", "int": "A", "agi": "C" },
|
||||
"base_bonus": { "hp": 2, "mp": 6, "atk": -2, "def": 1, "int": 2 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword"],
|
||||
"armor": ["robe", "light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
},
|
||||
"bandit": {
|
||||
"name": "Bandit",
|
||||
"tier": 1,
|
||||
"move_type": "foot",
|
||||
"move": 4,
|
||||
"attack_range": [1, 1],
|
||||
"skills": [],
|
||||
"growth": { "hp": "B", "mp": "E", "atk": "B", "def": "C", "int": "E", "agi": "B" },
|
||||
"base_bonus": { "hp": 0, "atk": 0, "def": 0 },
|
||||
"equipment_slots": {
|
||||
"weapon": ["sword", "axe"],
|
||||
"armor": ["light_armor"],
|
||||
"accessory": ["accessory"]
|
||||
}
|
||||
}
|
||||
}
|
||||
110
data/defs/items.json
Normal file
110
data/defs/items.json
Normal file
@@ -0,0 +1,110 @@
|
||||
{
|
||||
"bronze_sword": {
|
||||
"name": "Bronze Sword",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "sword",
|
||||
"range": [1, 1],
|
||||
"bonuses": { "atk": 3 },
|
||||
"effects": [],
|
||||
"price": 300
|
||||
},
|
||||
"iron_sword": {
|
||||
"name": "Iron Sword",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "sword",
|
||||
"range": [1, 1],
|
||||
"bonuses": { "atk": 5 },
|
||||
"effects": [],
|
||||
"price": 520
|
||||
},
|
||||
"training_spear": {
|
||||
"name": "Training Spear",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "spear",
|
||||
"range": [1, 1],
|
||||
"bonuses": { "atk": 4 },
|
||||
"effects": [],
|
||||
"price": 360
|
||||
},
|
||||
"short_bow": {
|
||||
"name": "Short Bow",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "bow",
|
||||
"range": [2, 2],
|
||||
"bonuses": { "atk": 3 },
|
||||
"effects": [],
|
||||
"price": 320
|
||||
},
|
||||
"hand_axe": {
|
||||
"name": "Hand Axe",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "axe",
|
||||
"range": [1, 1],
|
||||
"bonuses": { "atk": 4 },
|
||||
"effects": [],
|
||||
"price": 340
|
||||
},
|
||||
"war_axe": {
|
||||
"name": "War Axe",
|
||||
"kind": "weapon",
|
||||
"weapon_type": "axe",
|
||||
"range": [1, 1],
|
||||
"bonuses": { "atk": 6 },
|
||||
"effects": [],
|
||||
"price": 680
|
||||
},
|
||||
"cloth_robe": {
|
||||
"name": "Cloth Robe",
|
||||
"kind": "armor",
|
||||
"armor_type": "robe",
|
||||
"bonuses": { "def": 1 },
|
||||
"effects": [],
|
||||
"price": 120
|
||||
},
|
||||
"leather_armor": {
|
||||
"name": "Leather Armor",
|
||||
"kind": "armor",
|
||||
"armor_type": "light_armor",
|
||||
"bonuses": { "def": 1 },
|
||||
"effects": [],
|
||||
"price": 180
|
||||
},
|
||||
"iron_armor": {
|
||||
"name": "Iron Armor",
|
||||
"kind": "armor",
|
||||
"armor_type": "heavy_armor",
|
||||
"bonuses": { "def": 3 },
|
||||
"effects": [],
|
||||
"price": 520
|
||||
},
|
||||
"war_drum": {
|
||||
"name": "War Drum",
|
||||
"kind": "accessory",
|
||||
"accessory_type": "accessory",
|
||||
"bonuses": { "atk": 1, "agi": 1 },
|
||||
"effects": [],
|
||||
"price": 640
|
||||
},
|
||||
"imperial_seal": {
|
||||
"name": "Imperial Seal",
|
||||
"kind": "accessory",
|
||||
"accessory_type": "accessory",
|
||||
"bonuses": { "mp": 4, "int": 1 },
|
||||
"effects": [],
|
||||
"price": 900
|
||||
},
|
||||
"bean": {
|
||||
"name": "Bean",
|
||||
"kind": "consumable",
|
||||
"uses": 1,
|
||||
"effects": [{ "type": "heal_hp", "amount": 20 }],
|
||||
"price": 50
|
||||
},
|
||||
"wine": {
|
||||
"name": "Wine",
|
||||
"kind": "consumable",
|
||||
"uses": 1,
|
||||
"effects": [{ "type": "heal_mp", "amount": 8 }],
|
||||
"price": 120
|
||||
}
|
||||
}
|
||||
72
data/defs/officers.json
Normal file
72
data/defs/officers.json
Normal file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"cao_cao": {
|
||||
"name": "Cao Cao",
|
||||
"faction": "wei",
|
||||
"class_id": "hero",
|
||||
"level": 1,
|
||||
"exp": 0,
|
||||
"base": { "hp": 38, "mp": 10, "atk": 10, "def": 7, "int": 12, "agi": 8 },
|
||||
"growth_bonus": { "atk": 1, "int": 1 },
|
||||
"equipment": { "weapon": "bronze_sword", "armor": "cloth_robe", "accessory": null }
|
||||
},
|
||||
"xiahou_dun": {
|
||||
"name": "Xiahou Dun",
|
||||
"faction": "wei",
|
||||
"class_id": "cavalry",
|
||||
"level": 1,
|
||||
"exp": 0,
|
||||
"base": { "hp": 40, "mp": 4, "atk": 11, "def": 6, "int": 5, "agi": 9 },
|
||||
"growth_bonus": { "hp": 1, "atk": 1 },
|
||||
"equipment": { "weapon": "training_spear", "armor": "leather_armor", "accessory": null }
|
||||
},
|
||||
"xiahou_yuan": {
|
||||
"name": "Xiahou Yuan",
|
||||
"faction": "wei",
|
||||
"class_id": "archer",
|
||||
"level": 1,
|
||||
"exp": 0,
|
||||
"base": { "hp": 32, "mp": 4, "atk": 9, "def": 5, "int": 6, "agi": 12 },
|
||||
"growth_bonus": { "agi": 1 },
|
||||
"equipment": { "weapon": "short_bow", "armor": "leather_armor", "accessory": null }
|
||||
},
|
||||
"cao_ren": {
|
||||
"name": "Cao Ren",
|
||||
"faction": "wei",
|
||||
"class_id": "infantry",
|
||||
"level": 1,
|
||||
"exp": 0,
|
||||
"base": { "hp": 36, "mp": 3, "atk": 10, "def": 8, "int": 5, "agi": 7 },
|
||||
"growth_bonus": { "def": 1 },
|
||||
"equipment": { "weapon": "bronze_sword", "armor": "leather_armor", "accessory": null }
|
||||
},
|
||||
"dian_wei": {
|
||||
"name": "Dian Wei",
|
||||
"faction": "wei",
|
||||
"class_id": "warrior",
|
||||
"level": 3,
|
||||
"exp": 0,
|
||||
"base": { "hp": 42, "mp": 2, "atk": 13, "def": 8, "int": 3, "agi": 7 },
|
||||
"growth_bonus": { "hp": 1, "atk": 1 },
|
||||
"equipment": { "weapon": "hand_axe", "armor": "leather_armor", "accessory": null }
|
||||
},
|
||||
"guo_jia": {
|
||||
"name": "Guo Jia",
|
||||
"faction": "wei",
|
||||
"class_id": "strategist",
|
||||
"level": 8,
|
||||
"exp": 0,
|
||||
"base": { "hp": 30, "mp": 18, "atk": 5, "def": 5, "int": 14, "agi": 9 },
|
||||
"growth_bonus": { "mp": 1, "int": 1 },
|
||||
"equipment": { "weapon": "bronze_sword", "armor": "cloth_robe", "accessory": null }
|
||||
},
|
||||
"zhang_he": {
|
||||
"name": "Zhang He",
|
||||
"faction": "wei",
|
||||
"class_id": "elite_cavalry",
|
||||
"level": 12,
|
||||
"exp": 0,
|
||||
"base": { "hp": 48, "mp": 6, "atk": 15, "def": 10, "int": 7, "agi": 14 },
|
||||
"growth_bonus": { "atk": 1, "agi": 1 },
|
||||
"equipment": { "weapon": "training_spear", "armor": "iron_armor", "accessory": null }
|
||||
}
|
||||
}
|
||||
47
data/defs/skills.json
Normal file
47
data/defs/skills.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"spark": {
|
||||
"name": "Spark",
|
||||
"kind": "damage",
|
||||
"target": "enemy",
|
||||
"mp_cost": 2,
|
||||
"range": [1, 2],
|
||||
"power": 5,
|
||||
"stat": "int"
|
||||
},
|
||||
"fire_tactic": {
|
||||
"name": "Fire",
|
||||
"kind": "damage",
|
||||
"target": "enemy",
|
||||
"mp_cost": 4,
|
||||
"range": [1, 3],
|
||||
"power": 8,
|
||||
"stat": "int"
|
||||
},
|
||||
"blaze": {
|
||||
"name": "Blaze",
|
||||
"kind": "damage",
|
||||
"target": "enemy",
|
||||
"mp_cost": 7,
|
||||
"range": [1, 3],
|
||||
"power": 13,
|
||||
"stat": "int"
|
||||
},
|
||||
"mend": {
|
||||
"name": "Mend",
|
||||
"kind": "heal",
|
||||
"target": "ally",
|
||||
"mp_cost": 4,
|
||||
"range": [0, 2],
|
||||
"power": 12,
|
||||
"stat": "int"
|
||||
},
|
||||
"great_mend": {
|
||||
"name": "Great Mend",
|
||||
"kind": "heal",
|
||||
"target": "ally",
|
||||
"mp_cost": 7,
|
||||
"range": [0, 2],
|
||||
"power": 20,
|
||||
"stat": "int"
|
||||
}
|
||||
}
|
||||
43
data/defs/terrain.json
Normal file
43
data/defs/terrain.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"G": {
|
||||
"id": "plain",
|
||||
"name": "Plain",
|
||||
"color": "#6d9e4f",
|
||||
"defense": 0,
|
||||
"avoid": 0,
|
||||
"move_cost": { "foot": 1, "mounted": 1, "archer": 1, "water": 99 }
|
||||
},
|
||||
"F": {
|
||||
"id": "forest",
|
||||
"name": "Forest",
|
||||
"color": "#33733a",
|
||||
"defense": 2,
|
||||
"avoid": 10,
|
||||
"move_cost": { "foot": 2, "mounted": 3, "archer": 2, "water": 99 }
|
||||
},
|
||||
"H": {
|
||||
"id": "hill",
|
||||
"name": "Hill",
|
||||
"color": "#8c8057",
|
||||
"defense": 1,
|
||||
"avoid": 5,
|
||||
"move_cost": { "foot": 2, "mounted": 3, "archer": 2, "water": 99 }
|
||||
},
|
||||
"R": {
|
||||
"id": "road",
|
||||
"name": "Road",
|
||||
"color": "#a38c6b",
|
||||
"defense": 0,
|
||||
"avoid": 0,
|
||||
"move_cost": { "foot": 1, "mounted": 1, "archer": 1, "water": 99 }
|
||||
},
|
||||
"W": {
|
||||
"id": "water",
|
||||
"name": "Water",
|
||||
"color": "#2e5c9e",
|
||||
"defense": 0,
|
||||
"avoid": 0,
|
||||
"move_cost": { "foot": 99, "mounted": 99, "archer": 99, "water": 1 }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user