Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Scenario Nation Selector #11724

Open
2 tasks done
PLynx01 opened this issue Jun 10, 2024 · 1 comment
Open
2 tasks done

Feature Request: Scenario Nation Selector #11724

PLynx01 opened this issue Jun 10, 2024 · 1 comment
Labels

Comments

@PLynx01
Copy link
Contributor

PLynx01 commented Jun 10, 2024

Before creating

  • This is NOT a gameplay feature from Civ VI, BNW, or outside - see Roadmap
  • This is NOT a gameplay feature from Vanilla Civ V or from G&K - If so, it should be a comment in Missing features from Civ V - G&K #4697

Problem Description

Despite scenarios were added some time ago, their development is very slow. That's because it is not currently possible to conveniently select the Nation to play as.

Related Issue Links

No response

Desired Solution

I would like to see the "Select Nation" panel in the scenario screen, similar to this from New Game screen.

Alternative Approaches

Alternatively, we can make it easier to choose a nation after loading the scenario, something like EU4.

Additional Context

For desired solution, we need to make asynchronous function that will obtain a list of playable civilizations from the scenario or save game.

@SomeTroglodyte
Copy link
Collaborator

Not very familiar with Scenarios, though I did one once - ah yes to see the new icon on the main menu button...

Wiki: https://yairm210.github.io/Unciv/Modders/Scenarios/
Doesn't say much about who will be playing as who... But UncivFiles.loadScenario does: The Spectator the wiki mentions (all if >1) is removed, if there's no humans the first civ is made human, then the first human starts play and any other humans are hotseat. So.... Select the intended player first when creating, that's all.

Simplest of my ideas: Define that hotseat scenarios are not supported. Then, in loadScenario - or maybe where PlayerReadyScreen is shown - offer the choice, if moreThanOnePlayer && isSingleplayer && isScenario. The latter has the advantage that killing the process and reloading an autosave will re-pop the question until resolved, but would need another persisted flag. Both variants don't need an extra async preview.

As for Info: Adding "included nations" info to the load scenario screen may be attractive - could be treated 100% independently from the idea above. Or maybe no such info - Scenario creator should choose a name divulging as much as they want about who is in there??? Or - define "add a png file with the same name and/or a txt with the same name to have the load scenario screen show them when your scenario is selected".

OR... Define a meta-Unique "Show before scenario load", UniqueTarget.Event, or as metamodifier to go on the trigger event unique, create a IHasUniques container on the GameInfo granularity, load these with a "Preview" class, and you have a rich presentation tool for the load scenario screen.

Then... A "turn 0" Event could use EventChoices for converting surplus hotseat players to AI - would still need a game- not mod- specific global Unique container. Also allows pretty rich decorations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants