Skip to content

convert/subprocessor: derive train/research location name from head unit id#1814

Open
lugt wants to merge 1 commit into
SFTtech:masterfrom
lugt:feature/train-location-name-from-head-id
Open

convert/subprocessor: derive train/research location name from head unit id#1814
lugt wants to merge 1 commit into
SFTtech:masterfrom
lugt:feature/train-location-name-from-head-id

Conversation

@lugt

@lugt lugt commented Jul 17, 2026

Copy link
Copy Markdown

…nit id

The name used for locating a CreatableGameEntity or ResearchableTech's nested object inside its train_location's / research_location's ability is currently derived from train_location_id / research_location_id.

However, that id is not necessarily the head unit of the resolved location group: it may be a non-head member of a line, or it may resolve to a group (via fallback) whose head has a different identifier.

In all such cases, the id-based lookup produces a game-entity name that does not match the train_location / research_location group's actual game entity, leaving the nested object stranded without a host ability.

Derive the name from train_location.get_head_unit_id() (or research_location.get_head_unit_id()) instead, matching the convention already used for the train_location variable assignment itself.

Affected:

  • AoCAuxiliarySubprocessor.get_creatable_game_entity
  • AoCAuxiliarySubprocessor.get_researchable_game_entity
  • AoCCivSubprocessor.setup_unique_units

…nit id

The name used for locating a CreatableGameEntity or ResearchableTech's
nested object inside its train_location's / research_location's ability
is currently derived from train_location_id / research_location_id.

However, that id is not necessarily the head unit of the resolved
location group: it may be a non-head member of a line, or it may resolve
to a group (via fallback) whose head has a different identifier.

In all such cases, the id-based lookup produces a game-entity name that
does not match the train_location / research_location group's actual
game entity, leaving the nested object stranded without a host ability.

Derive the name from train_location.get_head_unit_id() (or
research_location.get_head_unit_id()) instead, matching the convention
already used for the train_location variable assignment itself.

Affected:
- AoCAuxiliarySubprocessor.get_creatable_game_entity
- AoCAuxiliarySubprocessor.get_researchable_game_entity
- AoCCivSubprocessor.setup_unique_units

Co-authored-by: Claude <noreply@anthropic.com>

@TheJJ TheJJ left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

thanks! could you please make the kevin ci run pass so we can merge? :)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants