Skip to content

Adventure: graceful map load failure and fix merfolkpool teleport case#10387

Open
vanja-ivancevic wants to merge 1 commit intoCard-Forge:masterfrom
vanja-ivancevic:fix/adventure-graceful-map-load-failure
Open

Adventure: graceful map load failure and fix merfolkpool teleport case#10387
vanja-ivancevic wants to merge 1 commit intoCard-Forge:masterfrom
vanja-ivancevic:fix/adventure-graceful-map-load-failure

Conversation

@vanja-ivancevic
Copy link
Copy Markdown
Contributor

@vanja-ivancevic vanja-ivancevic commented Apr 13, 2026

  • Teleport to a missing map file infinite-loops in TileMapScene.act(): nextMap was cleared after load(), so a thrown exception left nextMap populated and the same failed load retried every frame with no way for the player to escape.
  • Clear nextMap before calling load(), wrap in try/catch, and call MapStage.exitDungeon on failure to return the player to the world map. Mirrors the existing pattern in WorldStage.loadPOI.
  • Fix merfolkpool_6.tmx teleport referencing merfolkpool_6b.tmx when the actual file is merfolkpool_6B.tmx. Works on macOS/Windows but breaks on Linux case-sensitive filesystems, triggering the infinite-loop bug above. Applied to both the common copy and the Shandalar Old Border copy.

Teleport to a missing map file infinite-looped in TileMapScene.act():
nextMap was cleared after load(), so an exception left nextMap populated
and the same failed load retried every frame with no way out. Clear
nextMap before load(), wrap in try/catch, and call MapStage.exitDungeon
on failure to return the player to the world map. Mirrors the existing
pattern in WorldStage.loadPOI.

Fix merfolkpool_6.tmx teleport referencing merfolkpool_6b.tmx when the
actual file is merfolkpool_6B.tmx. Works on macOS/Windows but breaks on
Linux case-sensitive filesystems, triggering the infinite-loop bug above.
Applied to both the common copy and the Shandalar Old Border copy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant