CnCNet / xna-cncnet-client

XNA / MonoGame based client for playing classic Command & Conquer games both online and offline with a CnCNet game spawner.
Other
227 stars 90 forks source link

Make CampaignID default to -1, with an optional override #538

Closed Rampastring closed 6 months ago

Rampastring commented 6 months ago

Different parsing of duplicate entries in Battle.ini between the client and the game (Tiberian Sun) has led to the game crashing as the game sees duplicate entries as one entry, while the client sees them as separate entries. Separate entries are often used by modders to add separators to the mission list.

The game is not known to really use the campaign ID for much (only the "do you need GDI/Nod/Firestorm CD" check is known), so setting it to -1 by default should do little harm. In case it does, there is now the possibility to manually override the campaign ID.

-1 is interpreted by the game as CAMPAIGN_NONE, which allows playing with any CD.

This would also affect the game's "final campaign movie" logic (FinalMovie= in Battle.ini), but as far as I know, no distribution of TS, vanilla or modded, makes use of that logic.

github-actions[bot] commented 6 months ago

Nightly build for this pull request: