Skip to content

bugfix: Evacuate button positions are now consistent across all ground transport vehicles - #160

Open
Stubbjax wants to merge 1 commit into
TheSuperHackers:mainfrom
Stubbjax:streamline-ground-vehicle-evacuate-buttons
Open

bugfix: Evacuate button positions are now consistent across all ground transport vehicles#160
Stubbjax wants to merge 1 commit into
TheSuperHackers:mainfrom
Stubbjax:streamline-ground-vehicle-evacuate-buttons

Conversation

@Stubbjax

@Stubbjax Stubbjax commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

This change streamlines the position and iconography of the Evacuate button for all ground transport vehicles. Units in a selection that share the same button position can use the hotkey for that button. This means that all units with the same Evacuate button can now be evacuated in a group. This is particularly notable while having a group selection containing both a Humvee and Ambulance.

Note

The Combat Bike is the one exception as Command_ScuttleCombatBike is a separate action to Command_Evacuate that cannot be used when grouped with other units, nor would it likely be desirable in such a scenario.

Before (left) and after (right) layouts are compared below:

image

@Stubbjax Stubbjax self-assigned this Jul 24, 2026
@Stubbjax Stubbjax added Bug Something isn't working GUI For graphical user interface Minor Severity: Minor < Major < Critical < Blocker ZH Relates to Zero Hour labels Jul 24, 2026
@Stubbjax
Stubbjax force-pushed the streamline-ground-vehicle-evacuate-buttons branch from e0b314c to f982ace Compare July 24, 2026 09:41
@Stubbjax Stubbjax changed the title bugfix: Evacuation button positions are now consistent across all ground transport vehicles bugfix: Evacuate button positions are now consistent across all ground transport vehicles Jul 24, 2026
@Stubbjax Stubbjax added the Committee2026 ★ Approved by the 2026 elected Game Design Committee ★ label Jul 24, 2026

@xezon xezon left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changed referenced in the Migration Project does not match this change: TheSuperHackers/GeneralsGamePatch#1545

One is moving positions, and the other is changing images.

Comment thread GeneralsZH/Data/INI/CommandSet/GLADemoCommandSet.ini
@Stubbjax

Copy link
Copy Markdown
Contributor Author

The changed referenced in the Migration Project does not match this change: TheSuperHackers/GeneralsGamePatch#1545

One is moving positions, and the other is changing images.

I will unlink them. Many of Patch1's changes are not atomic so it's sometimes difficult to achieve a 1:1 match.

@xezon

xezon commented Jul 26, 2026

Copy link
Copy Markdown

Yes it looks like it has multiple commits in it

@xezon

xezon commented Jul 26, 2026

Copy link
Copy Markdown

Here is the evacuate button position reference change: TheSuperHackers/GeneralsGamePatch#165

CommandSet Nuke_ChinaListeningOutpostCommandSet
1 = Command_TransportExit
2 = Command_TransportExit
9 = Command_Evacuate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Command_EmptyCrawler

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the rationale for not streamlining the command/icon?

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is a separate change, and vehicles should use Command_EmptyCrawler (it shows a vehicle), structures use Command_Evacuate (it shows a building).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why should it be a separate change when the intended outcome is that all ground transport vehicles can use the evacuate command within the same selection?

The different icon is not important; the action is the same and it should be consistent. Command_EmptyCrawler should be obsoleted.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why should it be a separate change when the intended outcome is that all ground transport vehicles can use the evacuate command within the same selection?

Ok it is fair point. We can have it one change then.

The different icon is not important; the action is the same and it should be consistent. Command_EmptyCrawler should be obsoleted.

I vote for the crawler image for vehicles. It fits better. Maybe we need a vote then.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That still does not explain how it is helpful for the user. If the action is the same, the icon should be the same unless there is a strong enough justification for otherwise.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just preference. I like the crawler image. It is closer to what happens: evacuating the vehicle. It is not evacuating a building.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Personal preference should not supersede the correct logical approach. The evacuate icon represents evacuation, which is what the action does. The object being evacuated from in the icon is irrelevant.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Who defined that? EA added 3 different evac button and it mismatches your logical approach. I understand your perspective and it is reasonable, but it is also perfectly reasonable to have a different opinion than yours.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did EA make a perfect game with no mistakes? They clearly had an Command_EmptyCrawler command which was likely distinct in behaviour from Command_Evacuate at some point, but the behaviour was ultimately dropped and the command was not appropriately replaced. I would also suggest a similar thing happened with the Chinook, where it would maybe have unloaded objects via ropes as depicted in the icon. It is extremely unlikely they would intentionally have had a unique Chinook unload button designed otherwise.

8 = Command_TransportExit
; 9 = Command_TransportExit
; 10 = Command_TransportExit
9 = Command_Evacuate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Command_EmptyCrawler

7 = Command_TransportExit
8 = Command_TransportExit
9 = Command_EmptyCrawler
9 = Command_Evacuate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Command_EmptyCrawler

CommandSet ChinaListeningOutpostCommandSet
1 = Command_TransportExit
2 = Command_TransportExit
9 = Command_Evacuate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Command_EmptyCrawler

7 = Command_TransportExit
8 = Command_TransportExit
9 = Command_EmptyCrawler
9 = Command_Evacuate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Command_EmptyCrawler

@Stubbjax
Stubbjax force-pushed the streamline-ground-vehicle-evacuate-buttons branch from f982ace to 0d1ac9c Compare August 2, 2026 15:52
@xezon

xezon commented Aug 13, 2026

Copy link
Copy Markdown

3 Soldiers evacuate from building:

image

3 Soldiers evacuate from vehicle:

image

@Stubbjax

Copy link
Copy Markdown
Contributor Author

3 Soldiers evacuate from tunnel:

image

@xezon

xezon commented Aug 20, 2026

Copy link
Copy Markdown

A week-long poll was made and the developer voters would like to see different icon images for vehicles and buildings.

image

@Stubbjax

Copy link
Copy Markdown
Contributor Author

A week-long poll was made and the developer voters would like to see different icon images for vehicles and buildings.

I think that poll perfectly demonstrates why crowdsourcing is a flawed approach for establishing a cohesive design language.

First of all, the poll is framed with an inherent bias. If you ask whether a vehicle's icon should depict a vehicle or a building's icon should depict a building, almost anyone will vote yes because the logical link seems obvious in isolation. The correct framing is: Should button iconography ever vary for an identical underlying action, and if so, why? All that poll really serves to do is cloud judgement when trying to pursue/establish a logical design paradigm.

If we follow that poll's logic, should the Attack Move button remain depicting a tank for every type of unit? Should we create unique Evacuate icons for Tunnels, Fire Bases or Helixes? Where do we draw the line? The correct approach is to prioritise functional usability over literal illustration. The same button should map to the same action across the entire game.

To that end, this PR aims to standardise all Evacuate buttons and their positioning across all ground units. This is a consistency fix, not an attempt to implement a new design philosophy where iconography changes based on the selected object. Even if a context-dependent design philosophy is pursued later, this PR remains valid as a baseline and should not be blocked for this reason.

Furthermore, splitting the iconography introduces unnecessary technical debt and complexity to the data for no practical benefit. We'd lose modularity - developers would have to track which object type a CommandSet/CommandButton belongs to or is used for and what icon to use. CommandSets could no longer be cleanly shared between units and buildings, which would lead to copy-paste errors and make searching for Evacuate CommandSets more difficult. A new developer won't intuitively understand Command_EmptyCrawler, whereas Command_Evacuate leaves no questions.

Command_EmptyCrawler was evidently an early deploy-based action scrapped during development. Its unique button was forgotten and then erroneously copied to the Listening Outpost in Zero Hour. Its existence is an oversight, not evidence of a deliberate context-based design paradigm.

If such a design philosophy is still desired, it should be proposed as a separate, dedicated PR with solid rationale justifying why such a significant technical trade-off is worth the impact on player UX.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bug Something isn't working Committee2026 ★ Approved by the 2026 elected Game Design Committee ★ GUI For graphical user interface Minor Severity: Minor < Major < Critical < Blocker ZH Relates to Zero Hour

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants