Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions data/content/buildings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"watchtower": {"name":"Field Watchtower","role":"turret","cost":{"wood":6},"range":260,"damage":18,"cadence":0.72,"knockback":0.45,"sprite_id":"building_watchtower","description":"Reliable ranged pressure. The first field-defense baseline."},
"spike_trap": {"name":"Spike Trap","role":"trap","cost":{"wood":3,"iron":2},"trigger_radius":42,"damage":34,"cooldown":1.25,"knockback":1.35,"sprite_id":"fx_trap","description":"Cheap burst damage and strong knockback when enemies cross it."},
"field_camp": {"name":"Field Camp","role":"support","cost":{"wood":8,"food":4},"radius":115,"heal_per_second":4.0,"sprite_id":"building_camp","description":"Creates a small recovery pocket for the Warden during long expeditions."},
"arcane_pylon": {"name":"Arcane Pylon","role":"turret","cost":{"stone":5,"mana":2},"range":225,"damage":13,"cadence":0.48,"knockback":0.25,"chain":2,"sprite_id":"building_research","description":"Fast magical turret whose shots can jump to nearby enemies."},
"palisade": {"name":"Palisade","role":"barrier","cost":{"wood":4,"stone":1},"radius":34,"slow_radius":54,"enemy_speed_mult":0.58,"sprite_id":"building_wall_gate","description":"A simple temporary obstacle zone that slows enemies crossing its footprint."}
}
22 changes: 11 additions & 11 deletions data/content/projectiles.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
{
"arrow_wood": {"name":"Wooden Arrow","speed":620,"life":1.8,"radius":5,"pierce":0,"damage_mult":1.0,"knockback_mult":1.0,"visual_id":"fx_arrow","color":"#d8c49a"},
"arrow_iron": {"name":"Iron Arrow","speed":650,"life":1.9,"radius":5,"pierce":1,"damage_mult":1.12,"knockback_mult":1.15,"visual_id":"fx_arrow","color":"#c9d1da"},
"arrow_fire": {"name":"Ember Arrow","speed":610,"life":1.8,"radius":6,"pierce":0,"damage_mult":1.18,"knockback_mult":0.9,"splash_radius":38,"visual_id":"fx_fireball","color":"#ff9b55"},
"arrow_frost": {"name":"Rime Arrow","speed":600,"life":2.0,"radius":6,"pierce":0,"damage_mult":1.08,"knockback_mult":0.85,"slow":0.28,"visual_id":"fx_arcane","color":"#9ee8ff"},
"bolt_iron": {"name":"Iron Bolt","speed":760,"life":1.7,"radius":5,"pierce":2,"damage_mult":1.22,"knockback_mult":1.35,"visual_id":"fx_arrow","color":"#d8dde6"},
"arrow_iron": {"name":"Iron Arrow","speed":650,"life":1.9,"radius":5,"pierce":1,"damage_mult":1.12,"knockback_mult":1.15,"status_id":"armor_break","status_chance":0.18,"visual_id":"fx_arrow","color":"#c9d1da"},
"arrow_fire": {"name":"Ember Arrow","speed":610,"life":1.8,"radius":6,"pierce":0,"damage_mult":1.18,"knockback_mult":0.9,"splash_radius":38,"status_id":"burn","status_chance":0.72,"visual_id":"fx_fireball","color":"#ff9b55"},
"arrow_frost": {"name":"Rime Arrow","speed":600,"life":2.0,"radius":6,"pierce":0,"damage_mult":1.08,"knockback_mult":0.85,"status_id":"slow","status_chance":0.82,"visual_id":"fx_arcane","color":"#9ee8ff"},
"bolt_iron": {"name":"Iron Bolt","speed":760,"life":1.7,"radius":5,"pierce":2,"damage_mult":1.22,"knockback_mult":1.35,"status_id":"armor_break","status_chance":0.34,"visual_id":"fx_arrow","color":"#d8dde6"},
"arcane_bolt": {"name":"Arcane Bolt","speed":520,"life":2.2,"radius":7,"pierce":0,"damage_mult":1.0,"knockback_mult":0.7,"visual_id":"fx_arcane","color":"#7fcfff"},
"ember_orb": {"name":"Ember Orb","speed":440,"life":2.3,"radius":9,"pierce":0,"damage_mult":1.14,"knockback_mult":0.9,"splash_radius":52,"visual_id":"fx_fireball","color":"#ff7f4f"},
"frost_shard": {"name":"Frost Shard","speed":560,"life":2.0,"radius":7,"pierce":1,"damage_mult":1.02,"knockback_mult":0.75,"slow":0.35,"visual_id":"fx_arcane","color":"#a7efff"},
"void_orb": {"name":"Void Orb","speed":360,"life":2.8,"radius":12,"pierce":1,"damage_mult":1.3,"knockback_mult":1.15,"splash_radius":64,"visual_id":"fx_void","color":"#b16de6"},
"holy_spark": {"name":"Holy Spark","speed":500,"life":2.1,"radius":8,"pierce":1,"damage_mult":1.12,"knockback_mult":0.9,"visual_id":"fx_holy","color":"#ffe58b"},
"thorn_spine": {"name":"Thorn Spine","speed":540,"life":2.0,"radius":6,"pierce":1,"damage_mult":1.04,"knockback_mult":1.0,"visual_id":"fx_arrow","color":"#74b85a"},
"acid_spit": {"name":"Acid Glob","speed":320,"life":2.5,"radius":8,"pierce":0,"damage_mult":1.0,"knockback_mult":0.45,"splash_radius":36,"visual_id":"fx_arcane","color":"#8dcc62"},
"enemy_hex": {"name":"Hex Bolt","speed":285,"life":3.0,"radius":7,"pierce":0,"damage_mult":1.0,"knockback_mult":0.5,"visual_id":"fx_void","color":"#c68ae8"}
"ember_orb": {"name":"Ember Orb","speed":440,"life":2.3,"radius":9,"pierce":0,"damage_mult":1.14,"knockback_mult":0.9,"splash_radius":52,"status_id":"burn","status_chance":0.9,"visual_id":"fx_fireball","color":"#ff7f4f"},
"frost_shard": {"name":"Frost Shard","speed":560,"life":2.0,"radius":7,"pierce":1,"damage_mult":1.02,"knockback_mult":0.75,"status_id":"slow","status_chance":1.0,"visual_id":"fx_arcane","color":"#a7efff"},
"void_orb": {"name":"Void Orb","speed":360,"life":2.8,"radius":12,"pierce":1,"damage_mult":1.3,"knockback_mult":1.15,"splash_radius":64,"status_id":"hex","status_chance":0.75,"visual_id":"fx_void","color":"#b16de6"},
"holy_spark": {"name":"Holy Spark","speed":500,"life":2.1,"radius":8,"pierce":1,"damage_mult":1.12,"knockback_mult":0.9,"status_id":"stun","status_chance":0.18,"visual_id":"fx_holy","color":"#ffe58b"},
"thorn_spine": {"name":"Thorn Spine","speed":540,"life":2.0,"radius":6,"pierce":1,"damage_mult":1.04,"knockback_mult":1.0,"status_id":"poison","status_chance":0.48,"visual_id":"fx_arrow","color":"#74b85a"},
"acid_spit": {"name":"Acid Glob","speed":320,"life":2.5,"radius":8,"pierce":0,"damage_mult":1.0,"knockback_mult":0.45,"splash_radius":36,"status_id":"poison","status_chance":0.8,"visual_id":"fx_arcane","color":"#8dcc62"},
"enemy_hex": {"name":"Hex Bolt","speed":285,"life":3.0,"radius":7,"pierce":0,"damage_mult":1.0,"knockback_mult":0.5,"status_id":"hex","status_chance":0.65,"visual_id":"fx_void","color":"#c68ae8"}
}
8 changes: 8 additions & 0 deletions data/content/statuses.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"burn": {"name":"Burning","kind":"dot","duration":3.5,"tick_rate":0.5,"damage_per_tick_mult":0.18,"max_stacks":3,"color":"#ff8a55"},
"poison": {"name":"Poisoned","kind":"dot","duration":5.0,"tick_rate":0.75,"damage_per_tick_mult":0.12,"max_stacks":5,"color":"#87c866"},
"slow": {"name":"Chilled","kind":"slow","duration":2.8,"speed_mult":0.62,"max_stacks":1,"color":"#9de9ff"},
"stun": {"name":"Stunned","kind":"stun","duration":0.8,"max_stacks":1,"color":"#ffe28a"},
"armor_break": {"name":"Sundered","kind":"vulnerability","duration":4.0,"damage_taken_mult":1.22,"max_stacks":1,"color":"#e3b084"},
"hex": {"name":"Hexed","kind":"vulnerability","duration":4.5,"damage_taken_mult":1.16,"speed_mult":0.86,"max_stacks":1,"color":"#c48bea"}
}
4 changes: 4 additions & 0 deletions project.godot
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,7 @@ build_outpost={
"deadzone": 0.5,
"events": [Object(InputEventKey,"physical_keycode":66)]
}
build_cycle={
"deadzone": 0.5,
"events": [Object(InputEventKey,"physical_keycode":67)]
}
Loading
Loading