Previously the system only handled the specific case of minetest_game -> minetest. Based on Luanti developer feedback that "_game is removed from IDs as part of normalisation for all game IDs not just MTG", this change generalizes the pattern. ## Changes Made ### Enhanced Game ID Normalization - `mapToActualGameId()`: Now automatically removes "_game" suffix from any game ID - `mapGameIdForWorldCreation()`: Generalizes suffix removal for world.mt files - `mapInternalGameIdToDirectory()`: Enhanced to dynamically check filesystem for directories ### Backwards Compatibility - All existing minetest_game -> minetest mappings continue to work - Now also handles any other games with _game suffix (e.g., survival_game -> survival) - Original EJS templates already compatible via world.gameTitle || world.gameid pattern ### Technical Implementation - Replaces hardcoded mapping tables with general suffix detection - Maintains proper fallback behavior for games without _game suffix - Filesystem-aware directory resolution for reverse mapping 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
12 KiB
12 KiB