Skip to content

Case insensitive map file names in missionmd.ini - #2381

Open
FS-21 wants to merge 1 commit into
Phobos-developers:developfrom
FS-21:feature/missionmd-case-insensitive-lookup
Open

Case insensitive map file names in missionmd.ini#2381
FS-21 wants to merge 1 commit into
Phobos-developers:developfrom
FS-21:feature/missionmd-case-insensitive-lookup

Conversation

@FS-21

@FS-21 FS-21 commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Text generated with AI for explaining the proposed fix/change:

"When transitioning between campaign missions (such as when using SkipMapSelect=yes), the game engine uppercases ScenarioClass::Instance->FileName via _strupr.
Because Westwood's CCINIClass::GetSection relies on a case-sensitive CRC32 hash of section headers, looking up the uppercased scenario path fails if missionmd.ini defines the section with mixed casing (e.g., [Maps/Missions/Red Alert 2/ALL02S.MAP]). As a result, LS800BkgdName and related loading screen parameters are not read, causing the engine to skip the loading screen background and only render a progress bar over a black screen.

Solution

In ReadScenario_MissionINI (0x6870D7), if ini_missionmd.GetSection(scenarioName) returns nullptr, iterate through the loaded sections list in missionmd.ini using _stricmp to resolve the section name case-insensitively before reading scenario metadata."

When transitioning between campaign missions (such as when using `SkipMapSelect=yes`), the game engine uppercases `ScenarioClass::Instance->FileName` via `_strupr`.
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown

Nightly build for this pull request:

This comment is automatic and is meant to allow guests to get latest nightly builds for this pull request without registering. It is updated on every successful build.

@Coronia Coronia added ❓Vanilla bug Vanilla game bugs that are requested to be fixed No test needed This PR is simple enough, or changes no in-game logic, so no in-game testing is required. Skip Changelog PR does not need a changelog entry in docs/Whats-New.md Skip Docs PR does not need a documentation entry Skip Credits PR does not need a credits entry in CREDITS.md labels Sep 1, 2026
@Fly-Star-him

Copy link
Copy Markdown
Contributor

Hey, man, it looks like it only fixed the loading screen; the other four still haven't been fixed.

image

@Coronia Coronia added Fix and merge this and removed No test needed This PR is simple enough, or changes no in-game logic, so no in-game testing is required. labels Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Fix and merge this Skip Changelog PR does not need a changelog entry in docs/Whats-New.md Skip Credits PR does not need a credits entry in CREDITS.md Skip Docs PR does not need a documentation entry ❓Vanilla bug Vanilla game bugs that are requested to be fixed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants