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

Dynamic navigation for campaign progression UI #17639

henskelion opened this issue Feb 2, 2020 · 0 comments

Dynamic navigation for campaign progression UI #17639

henskelion opened this issue Feb 2, 2020 · 0 comments


Copy link

@henskelion henskelion commented Feb 2, 2020

In reference to #17067 this is a suggestion that would allow modders to create dynamic campaign progression screens in a way similar to a point and click graphic adventure. The idea is that #17067 would be designed in such a way that when selecting the next level on the campaign map screen, it could then bring up separate campaign map screen, which would expand the functionality of the campaign progression UI beyond it just being a map selection tool.

I believe this would not require a lot of modification to the work already being done on #17067 based on the following:

  • Point and click selection logic already being required for the Campaign Map to even work

  • Multiple image layers that also include animations. TS's map screens had animated elements, such as the level locations that animate when you hover the mouse over them, or the images on the sides of the screen that animate.

  • Campaign progression UI can already seamlessly transition between videos and static images. It's my understanding that the map screens in C&C are initially a video file, which after ending becomes the static map image that you can actually interact with.

  • Audio cues when selecting things, such as EVA or Cabal's briefings when hovering the mouse over a level location. Options to make audio cues occur when clicking on a location instead of just hovering should also be included.

  • Global campaign logic. For example, the way Allied mission 2 from RA1 has your base layout carry over to mission 4, or how TS features optional missions that affect later missions, such as liberating a Mutant prison camp provides Mutant reinforcements in the next mission. This would allow for logic such as interactions with NPCs affecting the campaign, or an upgrade system that alters your units and base functionality throughout the campaign.

Unless I'm mistaken, I'll I'd need would be for the logic for campaign map screens to be written in such a way that selecting something on a campaign map screen could be scripted to load another campaign map screen, instead of being hardcoded to only load the actual playable missions. For my purposes these would serve as a way to progress the story by talking to characters, and also to do things like upgrade your units.

In addition, allowing the player to access the menu and save or exit when the campaign UI is displayed would also be important, since only being able to save in the campaign during missions but not while in the campaign screens would be kind of arbitrary and inconvenient.

Theoretically this could allow me (or any modder with enough time and skill for that matter) to create a campaign progression UI similar to the one in Starcraft 2: WoL, where you can select from a few different screens and interact with NPC characters, upgrade your armies, and read intel or lore, albeit with a 2D pre-rendered background and animations, rather than a fully 3D environment.

Also while most modders probably would not have something so ambitious in mind for their campaigns, such a system would still be useful for map selection, such as a screen that shows the world allowing you to select different countries, and then each country having its own map screen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.