refactor: simplify scoring to remove efficiency-based complexity
- Remove efficiency calculation and game-over at 150% - Remove optimal steps tracking and complex logic timing - Simplify to time + keystrokes only scoring - New formula: score = min(1000, (1000 - time_penalty - keystroke_penalty) × size_multiplier) - time_penalty = seconds / 10 - keystroke_penalty = keystrokes / 2 - size_multiplier = max(1.0, (rows × cols) / 500) - Maze size-based multiplier rewards larger mazes - Remove optimalSteps and efficiency from ScoreManager type - Pass rows and cols to useScore for size calculation - Align with vim-sudoku's simplified scoring approach
This commit is contained in:
+1
-1
@@ -14,7 +14,7 @@ export function useGame(options: GameOptions, platformHook?: unknown): GameManag
|
||||
|
||||
const hero = cursor.hero;
|
||||
const renderer = useHeroRender({ gameStatus: gameStatusManager.gameStatus, board, hero });
|
||||
const scoreManager = useScore({ board, hero, gameStatusManager, keyManager });
|
||||
const scoreManager = useScore({ board, hero, gameStatusManager, keyManager, rows, cols });
|
||||
|
||||
const gameManager: GameManager = {
|
||||
containerRef,
|
||||
|
||||
Reference in New Issue
Block a user