Suggestion: Better Objects view

For what's not in 'Top Priority Game Design'. Post your ideas, visions, suggestions for the game, rules, modifications, etc.

Moderator: Oberlus

Message
Author
User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Suggestion: Better Objects view

#1 Post by Cpeosphoros »

I think it'd be a great addition if one could be able to open more instances of the Objects view. Like, one for planets filtered this way, one for planets filtered that way, one for fleets, etc. Those would be better if they could be minimized/maximized/open/closed instead of the current open/closed options only.

Alternatively, that could be accomplished by having "Objects profiles" saveable. One would configure the Objects view in some determined way (e.g. Planets, filtered by "Has Special Growth", with columns A, B and C), save that and be able to get it back easily, without having to click all the way aroung again and again each time they want to have those filtering and specific columns available.

Also, it would be nice if the fleet data columns (next system, destination, etc) would give the actual systems names, instead of their ID. Those numbers, IMO, are meaningless. An option for an ETA column would also be nice.

This sum up, and adds to, some suggestions from here: viewtopic.php?f=28&t=9843
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

toolforger
Space Floater
Posts: 29
Joined: Sun May 18, 2014 6:31 pm

Re: Suggestion: Better Objects view

#2 Post by toolforger »

This isn't very much related to the other discussion actually; the other was about having a new Arrivals view with an ETA column, this is about the all-singing, all-dancing Views Configuration Dialog.

Making some designable game element savable always comes with a price. The current ship design save mechanism is a good example: it is so awkward to use that I avoid it unless the ship design has so many slots that it's really worth the hassle.
So a designable view would be something that you'd need to think carefully about: A GUI to define the selection, to define aggregation groups, to define the sort order, to define the list of columns to display, to name them, to call them up, to define which view should be shown or hidden in what mode. Then a GUI that gives you an easy way to list all defined views and their properties, so you can select the right one to load. Also, a flag about which views to automatically load at game start.

The design work for this alone would be quite a lot.

User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Re: Suggestion: Better Objects view

#3 Post by Cpeosphoros »

toolforger wrote:This isn't very much related to the other discussion actually; the other was about having a new Arrivals view with an ETA column, this is about the all-singing, all-dancing Views Configuration Dialog.
That would just amount to adding "ETA" to the currently available ship/fleet options in the Object view. That's whay I brought it here.

But without human-readable destinations, that would be either quite useless or a hassle of micromanaging ships/fleets' names. Without multiple views or saveable ones, it's already a pain to switch between planets and fleets.
toolforger wrote:Making some designable game element savable always comes with a price. The current ship design save mechanism is a good example: it is so awkward to use that I avoid it unless the ship design has so many slots that it's really worth the hassle.
Indeed. I never use the ship design saving feature, as I'm in a foreign language Windows 10 machine, whic has a non UTF-8 character for my username which makes it impossible to get to the ship design saves wiithout a crash.
toolforger wrote:So a designable view would be something that you'd need to think carefully about: A GUI to define the selection, to define aggregation groups, to define the sort order, to define the list of columns to display, to name them, to call them up, to define which view should be shown or hidden in what mode.
That is already in place. It's the Object views itself. The only thing needed, in this part, UI-wise speaking, would be a "Save settings" button - with, of course, a "Load" one to make it company :) .
toolforger wrote:Then a GUI that gives you an easy way to list all defined views and their properties, so you can select the right one to load. Also, a flag about which views to automatically load at game start.

The design work for this alone would be quite a lot.
That would be a simple list. At game start, just load the last one used, or a default one if it's simpler. I don't see the design work as that heavy.

The programming work, OTH, can be quite a pain, I have no idea how to measure it. I'm not a c++ guy and I'm only starting to get acquainted with the code base.
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

toolforger
Space Floater
Posts: 29
Joined: Sun May 18, 2014 6:31 pm

Re: Suggestion: Better Objects view

#4 Post by toolforger »

Nonono, the key point of the proposal over there was that the view would show all fleets that had a given destination.
You don't need a "destination" column then. A "current position" column would be more appropriate.

Of course id numbers aren't that useful. (I never saw them, so I can't comment.)

The object view itself cannot do the things needed. It's close but not there, and getting it there might add too much management. It's already a bit too many clicks, and it's still limited in what it can select. I doubt something as general as you envision can be done with usability; to decide that, you need some really deep thinking, some insights into what workflow would appeal to users, a few heurekas, and a lot of prototyping.
Ground work, not the kind of abstract wishful thinking we can do in a forum. That's why I'm a bit sceptical - unless somebody really sits down and does the coding, I'd prefer baby steps, incremental improvement, and see what the background geniuses who do the hard work can come up with (some of what the FO team has done in the past is pretty amazing).

User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Re: Suggestion: Better Objects view

#5 Post by Cpeosphoros »

toolforger wrote:Nonono, the key point of the proposal over there was that the view would show all fleets that had a given destination.
You don't need a "destination" column then. A "current position" column would be more appropriate.
If I understand what you are talking about, you want something like this:
ETA Mock-up.png
ETA Mock-up.png (23.84 KiB) Viewed 1992 times
That would be two baby steps from what we already have already in the Objects view:
  • Adding an ETA column for fleets
  • Changing the Destination (it's actually "Final Destination ID") column so it'd show a human readable name.
But you would, indeed, need a "Destination" column, so you could ordinate the view in order to see all fleets going to the same destination.

A "Current Position" column would be very useful, too, but I guess it would be trick to show fleets in starlanes between systems (maybe a "in transit" placeholder).
toolforger wrote:Of course id numbers aren't that useful. (I never saw them, so I can't comment.)
So I'd suggest you take a good look on how the Objects view works, specially the "Filter" button. You'd be quite surprised with how much information is already there.
toolforger wrote:I doubt something as general as you envision can be done with usability;
I already do it, manually, by opening config.xml and saving the snippet that is about the Objects view. It reads like this:

Code: Select all

<<objects-list-info-col-0>NAME</objects-list-info-col-0>
    <objects-list-info-col-1>METER_TROOPS</objects-list-info-col-1>
    <objects-list-info-col-10/>
    <objects-list-info-col-11/>
    <objects-list-info-col-2>METER_SHIELD</objects-list-info-col-2>
    <objects-list-info-col-3>OWNER</objects-list-info-col-3>
    <objects-list-info-col-4>SPECIES</objects-list-info-col-4>
    <objects-list-info-col-5>PLANET_TYPE</objects-list-info-col-5>
    <objects-list-info-col-6>PLANET_SIZE</objects-list-info-col-6>
    <objects-list-info-col-7>METER_SUPPLY</objects-list-info-col-7>
    <objects-list-info-col-8>METER_POPULATION</objects-list-info-col-8>
    <objects-list-info-col-9/>
    <objects-list-width-col-0>144</objects-list-width-col-0>
    <objects-list-width-col-1>48</objects-list-width-col-1>
    <objects-list-width-col-10>48</objects-list-width-col-10>
    <objects-list-width-col-11>48</objects-list-width-col-11>
    <objects-list-width-col-2>48</objects-list-width-col-2>
    <objects-list-width-col-3>120</objects-list-width-col-3>
    <objects-list-width-col-4>96</objects-list-width-col-4>
    <objects-list-width-col-5>96</objects-list-width-col-5>
    <objects-list-width-col-6>96</objects-list-width-col-6>
    <objects-list-width-col-7>48</objects-list-width-col-7>
    <objects-list-width-col-8>48</objects-list-width-col-8>
    <objects-list-width-col-9>48</objects-list-width-col-9>
So, what I'm asking for would be something like this:
SaveLoad Objects Mock-up.png
SaveLoad Objects Mock-up.png (24.8 KiB) Viewed 1992 times
That would be some more few baby steps:
  • Adding a "Save" button to the Objects view, which would open a dialog (can be reused from save game) to let the player choose a name for the configuration, and save the relevant parts of config.xml into a separate file.
  • Adding a "Load" button to the Objects view, which would open a dialog (again, reusable) to let the player choose a previously saved configuration, and substitute the relevant parts of config.xml with it.
I'm a programmer, I have worked profissionally as a programmer for more than 20 years. I don't know either c++ or python very well and I'm not well acquainted with FO's code base - I'm working on those shortcomings. What I know is, though, enough to understand that I'm not asking for anything overwhelming in terms of programming.

What I'm suggesting is getting info that is already available (ETA, planets' names) elsewhere and putting it into the UI artifact that is already designed to centralize information. And to facilitate the use of that same info central by the player, by making it possible to save an retrieve views of that info.

I fail to see how that would be "abstract wishful thinking".

Of course, none of this is priority in the developing of the game. But I understand that the dev team is quite open to make small improvements in order to increase usability of the UI - they've done quite a handful this week over some suggestions I made in other forum topics.
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

Scara
Space Kraken
Posts: 142
Joined: Thu Apr 23, 2015 11:21 am

Re: Suggestion: Better Objects view

#6 Post by Scara »

Hey,

I wouldn't touch the object view, it's great as it is and I think it'll get a bit crowded integrating fleets inside.
The suggestion of saving different views of the objects is a nice idea to implement some time.
I would rather take the UI of the Objects view, clone it, call it Fleets and populate it with fleet relevant stuff.
That's were it becomes interesting, what information is possible to include in such a list and in what format?
Don't know how difficult it is but there are sure some basic fleet information to start with.
The basic Information would be as said, Name, ETA, Owner, Destination.
If that works out I'm sure there is lots information to integrate in such a list ;-)

User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Re: Suggestion: Better Objects view

#7 Post by Cpeosphoros »

Scara wrote:Hey,

I wouldn't touch the object view, it's great as it is and I think it'll get a bit crowded integrating fleets inside.
It's already there. Just click the "Filters" button (botton left of the Objects view) and you will get this:
Objects Filter.png
Objects Filter.png (17.86 KiB) Viewed 1988 times
Uncheck Planets, check Fleets and you get a whole Fleets Objects view. Check Systems and Planets, or Fleets and Ships, and you get a tree view, quite nice indeed.

What is missing is some useful info for those views, and a less clunky way of alternating between them - hence my suggestion of saved views, or multiple instances of the Objects view, or both.
Scara wrote:The suggestion of saving different views of the objects is a nice idea to implement some time.
I would rather take the UI of the Objects view, clone it, call it Fleets and populate it with fleet relevant stuff.
That's were it becomes interesting, what information is possible to include in such a list and in what format?
Don't know how difficult it is but there are sure some basic fleet information to start with.
The basic Information would be as said, Name, ETA, Owner, Destination.
If that works out I'm sure there is lots information to integrate in such a list ;-)
Of those, only ETA is not there. And Destination shows IDs instead of names.
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

toolforger
Space Floater
Posts: 29
Joined: Sun May 18, 2014 6:31 pm

Re: Suggestion: Better Objects view

#8 Post by toolforger »

The view would show "Position", not "Destination".
And it would be selected as "all fleets that have the currently selected star as Destination".
The latter already means it is not an Object view as it is today.

Yes ships on a starlane would need to be shown differently. I tend to avoid going too much into that kind of detail, it's kind of obvious how that should look like and just means they have to read more. Besides, it can still be fixed later.

Okay, "managing" via configuration file would be good enough. Assuming the parser is already in place, which it seems to be.
In the long term, I think the "Objects view" should go away (nobody understands what that would be) and be replaced by tailored views that have proven to be useful to players. Configuration files are a good intermediate step, yes.

Aside note: I've been programming since 1989 :-D
Since you are a programmer: Write your proposals for your readers. You don't need to dwell on details that everybody can infer themselves, but check that it contains the key points in the first paragraph, and is understandable to everybody in the intended audience. It is an art form, and even masters don't always get it right, but it is worth aiming for that. For example, it took you three lengthy explanations to get across the fact that there is indeed a "Fleet" button on the Objects view.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Suggestion: Better Objects view

#9 Post by Geoff the Medio »

toolforger wrote:And it would be selected as "all fleets that have the currently selected star as Destination".
The latter already means it is not an Object view as it is today.
That wouldn't actually require changing the Objects window UI substantially, except to give another option in the filter conditions.

What it would require is added a "currently selected" condition, which matches objects that are currently selected in the UI. Currently there are no conditions that operate on something in the UI like that... rather, they all just check the gamestate in a way that should work on any of the server or clients. It probably wouldn't be overly difficult to add such a condition, though.

toolforger
Space Floater
Posts: 29
Joined: Sun May 18, 2014 6:31 pm

Re: Suggestion: Better Objects view

#10 Post by toolforger »

Geoff the Medio wrote:
toolforger wrote:And it would be selected as "all fleets that have the currently selected star as Destination".
The latter already means it is not an Object view as it is today.
That wouldn't actually require changing the Objects window UI substantially, except to give another option in the filter conditions.

What it would require is added a "currently selected" condition, which matches objects that are currently selected in the UI. Currently there are no conditions that operate on something in the UI like that... rather, they all just check the gamestate in a way that should work on any of the server or clients. It probably wouldn't be overly difficult to add such a condition, though.
I'd rather have the option to right-click a star and be offered an "ETA view". "Current selection" would come with a lot of state checking (is the current selection a star, a planet, a fleet, a nebula, a row in a view), and that would complicate not just the programming but also the player's mental model of what the program will do when clicking the option.

I'd generally like context menus on the galaxy map. Right-click a fleet and split/merge/scrap it. Right-click a planet and give production orders.
Unfortunately that collides with rightclicking to send a fleet on its way. I'd still like to have context menus on the galaxy map :-D (I think that's the reason why rightclicking isn't the standard way to give movement orders, rightclicking is too valuable to spend it on a single command - YMMV).

User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Re: Suggestion: Better Objects view

#11 Post by Cpeosphoros »

Geoff the Medio wrote:
toolforger wrote:And it would be selected as "all fleets that have the currently selected star as Destination".
The latter already means it is not an Object view as it is today.
That wouldn't actually require changing the Objects window UI substantially, except to give another option in the filter conditions.

What it would require is added a "currently selected" condition, which matches objects that are currently selected in the UI. Currently there are no conditions that operate on something in the UI like that... rather, they all just check the gamestate in a way that should work on any of the server or clients. It probably wouldn't be overly difficult to add such a condition, though.
I still think it would be way simpler just giving these columns with system names: Current Positiion, Next System, Final Destination. Sort by those, and, voila, you'd have all fleets headed to a place, or at a place. No need at all to change anything as "currently selected". Adding an ETA column would just be a nice addition to that.
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

Scara
Space Kraken
Posts: 142
Joined: Thu Apr 23, 2015 11:21 am

Re: Suggestion: Better Objects view

#12 Post by Scara »

It's already there. Just click the "Filters" button (botton left of the Objects view) and you will get this
Wow, okay, haven't used the object view for nothing else as planets yet. It's cool!
You can even mix planets, building and ships!
Well, the output is a bit strange, but the basic structure is there indeed and I take back my suggestion leaving it like it is.
There sure is lot to be done. Ships and Fleets need different column headers than planets and buildings imho!
That's why I rather prefer two views, one for planets and the related buildings and an other for Ships and their management.

toolforger
Space Floater
Posts: 29
Joined: Sun May 18, 2014 6:31 pm

Re: Suggestion: Better Objects view

#13 Post by toolforger »

Cpeosphoros wrote:I still think it would be way simpler just giving these columns with system names: Current Positiion, Next System, Final Destination. Sort by those, and, voila, you'd have all fleets headed to a place, or at a place. No need at all to change anything as "currently selected". Adding an ETA column would just be a nice addition to that.
Scrolling through 300 entries is much slower than clicking twice. Especially if the sort order is unexpected, such as É coming after Z.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Suggestion: Better Objects view

#14 Post by Geoff the Medio »

The (whatever) ID columns now show names.

Edit: Sorting should be better with accented letters now.

User avatar
Cpeosphoros
Space Kraken
Posts: 124
Joined: Sat Jan 30, 2016 11:29 am

Re: Suggestion: Better Objects view

#15 Post by Cpeosphoros »

toolforger wrote:
Cpeosphoros wrote:I still think it would be way simpler just giving these columns with system names: Current Positiion, Next System, Final Destination. Sort by those, and, voila, you'd have all fleets headed to a place, or at a place. No need at all to change anything as "currently selected". Adding an ETA column would just be a nice addition to that.
Scrolling through 300 entries is much slower than clicking twice. Especially if the sort order is unexpected, such as É coming after Z.
I agree. However, it's a solution we can have nearly now, instead of something that would need an unknown amount of reprogramming the UI.

And, if my other suggestion (saving the searchs) gets implemented, that would make for a lot less click and scrolling.

Geoff, is it viable, even if not for an early thing?

Also, is it viable (I know *that* would need some serious rethinking of the UI) to have filtering for more than one criterium?
All contributions are released under GPL or LGPL v2 or later, or under appropriate Creative Commons licence, consistent with project guidelines.

Post Reply