Files
maplecontest/data/cards.json
gahusb 8f58a90746 feat(combat): 몬스터 랜덤 구성·랜덤 행동·덱 오염(AddCard)·map01 로스터 (P14-3)
- 구성 랜덤화: BuildMonsters를 그룹별 수집 후 노드 타입별 추첨
  (일반 1~3 / 엘리트 1+일반0~2 / 보스 1, MAX_MONSTERS=4 내)
- 행동 랜덤화: EnemyActStep 순차(round-robin) → 정의된 intent 중 math.random 선택
  (스폰 시 시작 intent도 랜덤, sim-balance.mjs 미러 동기화)
- StS2식 덱 오염: AddCard intent 신규 — 저주 카드(Wound/Burn)를 버린 더미에 추가
  · Wound=사용불가 사석, Burn=사용불가+턴종료 피해2(EndPlayerTurn 처리)
  · PlayCard unplayable 가드, CardPool class 필터로 보상/상점 자동 제외
  · luaIntentsArray(card/count)·luaCardsTable(unplayable/curse/endTurnDamage) 직렬화
- map01 인카운터: 일반 5종(주황/초록/빨강달팽이/파랑/돼지) + 엘리트1 + 보스1, 우측 포메이션
  · enemies.json red_snail/stump 신규, blue_mushroom/mushmom에 AddCard intent
  · gen-map-encounters 레이아웃 맵별 분기 + 풀 인덱싱 일반화
- 막 배율 0.6→0.45(5막 기준 완화). sim 테스트 35/35 통과(신규 3 포함). 산출물 재생성

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 00:33:49 +09:00

388 lines
9.2 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"cards": {
"Strike": {
"name": "파워 스트라이크",
"cost": 1,
"kind": "Attack",
"damage": 6,
"desc": "피해 6",
"image": "a71b116807904ef2b38e1dc013e2f9a2",
"class": "warrior",
"rarity": "normal"
},
"Defend": {
"name": "아이언 바디",
"cost": 1,
"kind": "Skill",
"block": 5,
"desc": "방어도 5",
"image": "1ae9b6741c5947a8b528a0f515b50e3e",
"class": "warrior",
"rarity": "normal"
},
"Bash": {
"name": "슬래시 블러스트",
"cost": 2,
"kind": "Attack",
"damage": 10,
"desc": "피해 10",
"image": "d5bc2953fcab4cfe9062af81c35aff86",
"class": "warrior",
"rarity": "normal"
},
"WarLeap": {
"name": "워 리프",
"cost": 1,
"kind": "Attack",
"damage": 4,
"block": 3,
"desc": "피해 4, 방어도 3",
"image": "992dabf6aff2400e92b2f4f705d8ebe7",
"class": "warrior",
"rarity": "normal"
},
"Brandish": {
"name": "브랜디시",
"cost": 2,
"kind": "Attack",
"damage": 13,
"desc": "피해 13",
"image": "21af4bccc5054a5dbc8245dfa7f08681",
"class": "warrior",
"rarity": "unique"
},
"ChargedBlow": {
"name": "차지 블로우",
"cost": 2,
"kind": "Attack",
"damage": 8,
"vuln": 2,
"desc": "피해 8, 취약 2",
"image": "fe83c7635b0e49ed83d75a2833adb53e",
"class": "warrior",
"rarity": "unique"
},
"Threaten": {
"name": "위협",
"cost": 0,
"kind": "Skill",
"weak": 2,
"desc": "약화 2 부여",
"image": "64daadf1a98e490d9c14ef52ec776e63",
"class": "warrior",
"rarity": "normal"
},
"Enrage": {
"name": "인레이지",
"cost": 1,
"kind": "Skill",
"strength": 2,
"desc": "힘 +2",
"image": "09370fc7551e47238fd103a80fba558e",
"class": "warrior",
"rarity": "unique"
},
"Rage": {
"name": "분노",
"cost": 1,
"kind": "Power",
"powerEffect": "strengthPerTurn",
"value": 1,
"desc": "매 턴 시작 시 힘 +1",
"image": "379d86e3de064959aa4612f71e84ccfb",
"class": "warrior",
"rarity": "legend"
},
"ComboAttack": {
"name": "콤보 어택",
"cost": 1,
"kind": "Attack",
"class": "fighter",
"damage": 5,
"hits": 2,
"desc": "피해 5 × 2회",
"image": "1bc3e52b330648faae9eafd5a205e37b",
"rarity": "unique"
},
"Berserk": {
"name": "버서크",
"cost": 2,
"kind": "Power",
"class": "fighter",
"powerEffect": "energyPerTurn",
"value": 1,
"selfVuln": 1,
"desc": "매턴 에너지 +1, 취약 1 자가",
"image": "cef30ea340c74e768bcee4e2cbe0577a",
"rarity": "legend"
},
"RisingAttack": {
"name": "라이징 어택",
"cost": 2,
"kind": "Attack",
"class": "fighter",
"damage": 12,
"desc": "피해 12",
"image": "3a3d4b8bb5bd4137847caf883e4bf38e",
"rarity": "unique"
},
"ThunderCharge": {
"name": "썬더 차지",
"cost": 1,
"kind": "Attack",
"class": "page",
"damage": 7,
"weak": 1,
"desc": "피해 7, 약화 1",
"image": "f1b7e3041909411eb67af884b446e1e1",
"rarity": "unique"
},
"BlizzardCharge": {
"name": "블리자드 차지",
"cost": 1,
"kind": "Attack",
"class": "page",
"damage": 7,
"vuln": 1,
"desc": "피해 7, 취약 1",
"image": "7915c70952ad432f99519ad79bf929a4",
"rarity": "unique"
},
"PowerGuard": {
"name": "파워 가드",
"cost": 1,
"kind": "Skill",
"class": "page",
"block": 10,
"desc": "방어도 10",
"image": "90a9bf8eeb844b578b4e2d93ac43fedf",
"rarity": "unique"
},
"Pierce": {
"name": "피어스",
"cost": 1,
"kind": "Attack",
"class": "spearman",
"damage": 9,
"pierce": true,
"desc": "피해 9, 방어 무시",
"image": "e312e535a2bc4fed82d36f9c6027c9db",
"rarity": "unique"
},
"IronWall": {
"name": "아이언 월",
"cost": 2,
"kind": "Skill",
"class": "spearman",
"block": 12,
"desc": "방어도 12",
"image": "92021d62341a4bce9cfd09d1b4b865db",
"rarity": "unique"
},
"HyperBody": {
"name": "하이퍼 바디",
"cost": 1,
"kind": "Power",
"class": "spearman",
"powerEffect": "blockPerTurn",
"value": 3,
"desc": "매턴 방어도 +3",
"image": "b4020dbadee6401f9893a020fe4154b1",
"rarity": "legend"
},
"EnergyBolt": {
"name": "에너지 볼트",
"cost": 1,
"kind": "Attack",
"class": "magician",
"damage": 6,
"desc": "피해 6",
"image": "a1ee3069fce14498b92998542679ae40",
"rarity": "normal"
},
"MagicGuard": {
"name": "매직 가드",
"cost": 1,
"kind": "Skill",
"class": "magician",
"block": 5,
"desc": "방어도 5",
"image": "01b249c26eb34b8aaab774bf221907a1",
"rarity": "normal"
},
"MagicClaw": {
"name": "매직 클로",
"cost": 1,
"kind": "Attack",
"class": "magician",
"damage": 3,
"hits": 2,
"desc": "피해 3 × 2회",
"image": "d6e7c04c436f42f19e9806ac5b4401ae",
"rarity": "normal"
},
"Teleport": {
"name": "텔레포트",
"cost": 1,
"kind": "Skill",
"class": "magician",
"block": 3,
"draw": 1,
"desc": "방어도 3, 드로 1",
"image": "80c98c8e032b4f6c8371a24b4e1d8f14",
"rarity": "normal"
},
"Slow": {
"name": "슬로우",
"cost": 1,
"kind": "Skill",
"class": "magician",
"weak": 2,
"desc": "약화 2 부여",
"image": "16f79f571a964430bf1953edc9a14c73",
"rarity": "normal"
},
"FireArrow": {
"name": "파이어 애로우",
"cost": 1,
"kind": "Attack",
"class": "firepoison",
"damage": 8,
"desc": "피해 8",
"image": "78b9be4e711c440f84fc21e51e812bae",
"rarity": "unique"
},
"PoisonBreath": {
"name": "포이즌 브레스",
"cost": 1,
"kind": "Skill",
"class": "firepoison",
"poison": 4,
"desc": "독 4 부여",
"image": "b4e8bd7508b54d208e4f2ad7414f8c0a",
"rarity": "unique"
},
"ElementAmp": {
"name": "엘레멘트 앰플",
"cost": 1,
"kind": "Power",
"class": "firepoison",
"powerEffect": "strengthPerTurn",
"value": 1,
"desc": "매 턴 힘 +1",
"image": "9859f3ab41b945f797d56cd83f95b25f",
"rarity": "legend"
},
"ThunderBolt": {
"name": "썬더 볼트",
"cost": 2,
"kind": "Attack",
"class": "icelightning",
"damage": 6,
"aoe": true,
"desc": "모든 적에게 피해 6",
"image": "c6685d33cb2641f09d11cfa2d5cc820c",
"rarity": "legend"
},
"ColdBeam": {
"name": "콜드 빔",
"cost": 2,
"kind": "Attack",
"class": "icelightning",
"damage": 7,
"weak": 2,
"desc": "피해 7, 약화 2",
"image": "e8f7c148c79f497d83014e3361f59f5c",
"rarity": "unique"
},
"ChillingStep": {
"name": "칠링 스텝",
"cost": 1,
"kind": "Skill",
"class": "icelightning",
"block": 8,
"desc": "방어도 8",
"image": "b2a7274d868241c78aa5780f2beecddf",
"rarity": "unique"
},
"Heal": {
"name": "힐",
"cost": 1,
"kind": "Skill",
"class": "cleric",
"heal": 10,
"desc": "HP 10 회복",
"image": "b4127c181e2942e38821d4a9a1f14596",
"rarity": "unique"
},
"Bless": {
"name": "블레스",
"cost": 1,
"kind": "Skill",
"class": "cleric",
"strength": 1,
"block": 5,
"desc": "힘 +1, 방어도 5",
"image": "d45553db4a414011b67486dfa8a12fe5",
"rarity": "unique"
},
"HolyArrow": {
"name": "홀리 애로우",
"cost": 1,
"kind": "Attack",
"class": "cleric",
"damage": 8,
"desc": "피해 8",
"image": "0265e103b4904f178b1c2bdcd54d5975",
"rarity": "unique"
},
"Wound": {
"name": "상처",
"cost": 0,
"kind": "Status",
"desc": "사용할 수 없다. 손패를 막는 저주.",
"class": "curse",
"rarity": "normal",
"unplayable": true,
"curse": true
},
"Burn": {
"name": "화상",
"cost": 0,
"kind": "Status",
"desc": "사용 불가. 손패에 있으면 턴 종료 시 피해 2.",
"class": "curse",
"rarity": "normal",
"unplayable": true,
"curse": true,
"endTurnDamage": 2
}
},
"starterDecks": {
"warrior": [
"Strike",
"Strike",
"Strike",
"Strike",
"Strike",
"Defend",
"Defend",
"Defend",
"Defend",
"Bash"
],
"magician": [
"EnergyBolt",
"EnergyBolt",
"EnergyBolt",
"EnergyBolt",
"EnergyBolt",
"MagicGuard",
"MagicGuard",
"MagicGuard",
"MagicGuard",
"MagicClaw"
]
}
}