From 162a09c54a1e4f794516d074482d2d9401cbd5ee Mon Sep 17 00:00:00 2001 From: JiWoong Sul Date: Sun, 28 Dec 2025 01:04:42 +0900 Subject: [PATCH] =?UTF-8?q?fix(balance):=20=EC=B4=88=EB=B0=98=20=EC=83=9D?= =?UTF-8?q?=EC=A1=B4=EC=9C=A8=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 몬스터 ATK 공식 약화: 5+level*3 → 3+level*2 - 플레이어 초기 HP 증가: 50 → 65 (사망률 ~10% 목표) --- lib/src/core/util/balance_constants.dart | 4 ++-- lib/src/features/new_character/new_character_screen.dart | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/src/core/util/balance_constants.dart b/lib/src/core/util/balance_constants.dart index 0b86ff3..8e21882 100644 --- a/lib/src/core/util/balance_constants.dart +++ b/lib/src/core/util/balance_constants.dart @@ -144,14 +144,14 @@ class MonsterBaseStats { /// 레벨 기반 기본 스탯 생성 /// /// HP: 50 + level * 20 + (level^2 / 5) - /// ATK: 5 + level * 3 + /// ATK: 3 + level * 2 (초반 생존율 개선을 위해 약화) /// DEF: 2 + level * 2 /// EXP: 10 + level * 5 /// GOLD: 5 + level * 3 factory MonsterBaseStats.forLevel(int level) { return MonsterBaseStats( hp: 50 + level * 20 + (level * level ~/ 5), - atk: 5 + level * 3, + atk: 3 + level * 2, def: 2 + level * 2, exp: 10 + level * 5, gold: 5 + level * 3, diff --git a/lib/src/features/new_character/new_character_screen.dart b/lib/src/features/new_character/new_character_screen.dart index 6a8f5ef..d98d9e9 100644 --- a/lib/src/features/new_character/new_character_screen.dart +++ b/lib/src/features/new_character/new_character_screen.dart @@ -222,9 +222,9 @@ class _NewCharacterScreenState extends State { // HP/MP 초기값 계산 // 원본 공식: Random(8) + CON/6 → 약 1~10 HP (너무 낮음) - // 수정 공식: 50 + Random(8) + CON → 약 60~76 HP (전투 생존 가능) + // 수정 공식: 65 + Random(8) + CON → 약 68~91 HP (사망률 ~10% 목표) // 이유: 원본 PQ는 "항상 승리"하지만 이 게임은 실제 전투로 사망 가능 - final hpMax = 50 + math.Random().nextInt(8) + _con; + final hpMax = 65 + math.Random().nextInt(8) + _con; final mpMax = 30 + math.Random().nextInt(8) + _int; // 원본 Main.pas:1375-1379 - 기본 롤 값 그대로 저장 (보너스 없음)