クエリちゃんのバグ退治
フィールド定義
  • YAML フォーマットでフィールド情報を定義する。
    • 地形と建物を map データとして表現する。
    • 敵の情報を stage データとして表現する。

map データ

size: 6x6
heights:
- 1,1,0,1,1,1
- 1,1,1,1,1,1
- 2,2,1,1,1,1
- 1,1,1,1,1,1
- 1,1,1,1,1,1
- 1,2,3,4,5,5
assign:
0: Water
1: Road
2: Grass
3: Sand
4: Swamp
5: Trees
6: Stone
7: Bridge
prefabs:
- 2,2,0,2,2,2
- 2,2,2,2,2,2
- 2,2,2,2,2,2
- 2,2,2,2,2,2
- 2,2,2,2,2,2
- 2,2,2,2,2,2
buildings:
barracks: [ 3x2, 4x3, 3x5, 0x1, 1x4 ]
towers: [ 3x3, 5x5 ]
  • 見た目と高さを分けて定義する。
  • 高さがゼロの地形は移動できない領域として扱う。
  • prefab ごとに移動コストを定義する。
    • 移動コストが 10 以上の値は移動できない領域として扱う。
  • prefab で地面と地上オブジェクトを分けて定義し、地面は高さに応じて伸長させる。

stage データ

enemies:
skeleton_knight:
prefab_name: SkeletonKnight
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
bat:
prefab_name: Bat
respawn: 4.0
move_ratio: 0.25
vitality: 40
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
ghost:
prefab_name: Ghost
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
golem:
prefab_name: Golem
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
death_knight:
prefab_name: DeathKnight
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
skeleton_archer:
prefab_name: SkeletonArcher
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
skeleton_mage:
prefab_name: SkeletonMage
respawn: 4.0
move_ratio: 0.25
vitality: 100
physical_armor: 0
magical_armor: 0
attack_speed: 1.0
attack_physical_damage: 10
attack_magical_damage: 0
dragon:
prefab_name: Dragon
respawn: 4.0
move_ratio: 0.25
vitality: 400
physical_armor: 0
magical_armor: 0
attack_speed: 4.0
attack_physical_damage: 15
attack_magical_damage: 15
barracks:
- enemies:
- { 0: skeleton_mage }
- { 0: skeleton_mage }
- enemies:
- { 0: skeleton_mage }
- { 0: skeleton_mage }
- enemies:
- { 0: skeleton_mage }
- { 0: skeleton_mage }
- enemies:
- { 0: skeleton_mage }
- { 0: skeleton_mage }
- enemies:
- { 0: dragon }
- { 0: golem }
first_barrack_assign:
enemy: [ 3, 4 ]
ally: [ 2 ]
ally_units:
- SwordsMan
- Thief
- Warrior
- Archer
- Sniper
- Sorcerer
- Healer
ally_barrack_first_assign:
2: [ SwordsMan, Archer ]
ally_tower_first_assign:
0: Archer
game:
limit_seconds: 300
initial_mikan_point: 400
mikan_ratio_per_sec: 1.0
first_skill_point: 1
first_view:
size: 3
degree: -15
  • 記述する情報
    • 出現する敵のパラメータ
    • 兵舎の位置と、兵舎を敵が占拠したときにどの敵が出てくるかの情報
      • 兵舎のゲーム開始直後の占拠情報
    • タワー位置
    • ゲームの制限時間
      • 20 分以上の値はゲームの制限時間は存在しないものとして扱う。