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

Show how many robots are out of range in F2 dialog #1612

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

kostmo
Copy link
Member

@kostmo kostmo commented Nov 9, 2023

Also moves "pretty age rendering" function to utils module.

Screenshot from 2023-11-09 12-49-51

@kostmo kostmo added T-UI Involves the user interface. CHANGELOG Once merged, this PR should be highlighted in the changelog for the next release. labels Nov 9, 2023
@kostmo kostmo marked this pull request as ready for review November 9, 2023 20:54
@kostmo kostmo requested a review from byorgey November 9, 2023 20:54
@byorgey
Copy link
Member

byorgey commented Nov 9, 2023

I think we should only show this information in creative mode, on the principle that it allows instantaneous transmission of information over arbitrary distances (a very far away robot can send you one bit of information by choosing whether to self-destruct, which could change the displayed count of robots that are too far). More generally, if a robot is too far away to sense, you should not be able to find out anything about it, including whether it is alive.

@byorgey
Copy link
Member

byorgey commented Nov 9, 2023

Hmm, but in creative mode we already show all robots regardless of distance, right? So maybe I am simply opposed to this change.

@kostmo
Copy link
Member Author

kostmo commented Nov 9, 2023

The original impetus was my state of confusion when I popped up the F2 dialog and the robots that I had built did not show up; I thought it was a bug.

The intent of this change is only to display player-built robots. Effectively the filtering logic makes this so, but to guarantee this, perhaps we could also do a check that ensures their direct parent is the base.

I think we can rationalize this in terms of the "game world logic" by the fact that the base must have known about each of these robots at the time they were built. So, if they subsequently go out of range, the fact that we "reveal" their existence is not communicating any new information.

Besides, this is only available in the UI, and not accessible programmatically. Technically speaking, when robots are within range, I think that the F2 dialog communicates other information to the chair-sitting human as well that isn't programmatically available.

@kostmo
Copy link
Member Author

kostmo commented Nov 9, 2023

Oh, I missed your point about self-destructing. Maybe I need to re-think it...

@kostmo
Copy link
Member Author

kostmo commented Nov 9, 2023

Perhaps I could salvage this feature by implementing some filtering modes in the F2 dialog. E.g. in creative mode, I might want to exclude the (dozens) of plant-growing robots and just show my base-built robots. Or I might want to filter by distance as if I were not playing in creative mode (as a kind of debugging aid).

@kostmo
Copy link
Member Author

kostmo commented Nov 9, 2023

One more option may to implement some "persistence" of robot existence in the UI layer; the widget may retain knowledge of "last seen" robots, and if they go out of range their status may become "unknown". If they had self-destructed while out of range, their status will remain unknown permanently.

@byorgey
Copy link
Member

byorgey commented Nov 10, 2023

Perhaps I could salvage this feature by implementing some filtering modes in the F2 dialog.

That sounds like a nice feature, but obviously represents a lot more work.

One more option may to implement some "persistence" of robot existence in the UI layer; the widget may retain knowledge of "last seen" robots, and if they go out of range their status may become "unknown". If they had self-destructed while out of range, their status will remain unknown permanently.

Yes, that option sounds good to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CHANGELOG Once merged, this PR should be highlighted in the changelog for the next release. T-UI Involves the user interface.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants