Friday Facts #212 - The GUI update (Part 1)

Regular reports on Factorio development.
JustThinus
Manual Inserter
Manual Inserter
Posts: 1
Joined: Mon Apr 24, 2017 11:39 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by JustThinus »

Good job with the mock-ups they look amazing. I was wondering the dialog that is used to set the color of then trains, will it not be beneficial to add a space where a user can paste a hex color code?
vanatteveldt
Filter Inserter
Filter Inserter
Posts: 947
Joined: Wed Nov 25, 2015 11:44 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by vanatteveldt »

A number of posters suggested "offloading" some of the more complex interactions to combinator settings. This would put the "90%" case with single wait on full/empty conditions in the interface, but make all the more complicated wait conditions, conditional stations, etc etc available via combinators.

I think this makes sense on three counts:
(1) it allows for a simplification of the menu/UI structure and makes it easier for beginners to use trains without being overwhelmed by the interface
(2) it fits into the philosophy of using simple things to build a complex factory
(3) it allows for blueprinting and parametrizing and probably make more complex things possible than any of the devs now envision (see some of the crazy combinator projects showcased earlier)

Some of the power users will probably have to relearn how to do with combinators some of the things we can now do with the interface, but that's the price of playing a beta :)
User avatar
Fumelfo
Burner Inserter
Burner Inserter
Posts: 14
Joined: Tue Jan 31, 2017 11:53 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Fumelfo »

Teraka wrote:I had an idea this morning that you could make much more complex train schedules in a relatively easy way if you converted how it works now to more of a "state machine" format, where each station corresponds to a state and has a number of different states/stations it can go to depending on which conditions are true. The default could still be a simple loop as it is now, since that's just a state machine with all of its states going to the next one, but it would also allow for some very fancy stuff.


YISS STATE-MACHINE TRAIN NETWORKS !!! Could allow round-robin or more complex scheduling from the smelters to the crafting areas :o And, why not, a base with only one big-ass train ?
User avatar
eradicator
Smart Inserter
Smart Inserter
Posts: 5207
Joined: Tue Jul 12, 2016 9:03 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by eradicator »

While i appreciate the general direction you're trying to go (less flat, more stylized) GUI, there are a number of concerns raised in my mind (and obviously all the other people here) when looking at the screenshots. As to not make a giant quote-fest post i'll stick to a simple list format:

My biggest concern, which was luckily already addressed by someone who could word it much better than i could is READABILITY. On the pictures shown both low contrast and tiny font size vastly decrease readability. Glex said the pictures aren't 100% size so i'll just hope for the best for the final version. Just saying it again because this is to me a major issue and would basically turn an easy-to-use GUI into something that might actually be so bad i'd have to stop playing.
Long Quote

Some more things that i'd like:
  • GUI color: I'd like to chose a general overall color (because i'm not in the mood for grey every day). Though personally i don't like dominant "textures". In GUIs i prefer plain colors.
  • Unavailable Stations: The current debossing is unintuitive as it suggests the station is not clickable at all. Also it would be nice for "debugging" schedules if the minimap could show the closest physical path to an unreachable station it can find. This would make it easier to find missing/wrong signals/rails that make the pathing fail. (Though i fear the underlying graph is too abstract to faciliate this.)
  • Tiny Buttons: The extra buttons in the top right should at least be the size of the side-bar buttons (map, achievements, blueprints, etc).
  • Screen Estate is valuable: Currently the "add condition" button is shows for every station. My schedules usually have no less than 2, mostly 3 conditions (inventory or inactivity or total time). Someone else already posted schedules with 9 conditions per station. With the current layout this would mean a lot of scrolling even if i just want to see which station a train is currently at/heading too.
  • Foreign Language input: I just noticed that i can actually copy/paste Japanese text into e.g station names now, but i still can't type it. This makes using the search boxes impossilbe in any non-ascii language.
  • Extended API: Currently there are a lot of things the base GUI can do that mods can not. Moving windows is one of the big ones. Reordering elements, Showing numbers on slot buttons. And many more. It would be nice if after the rewrite most of the stuff was available from the start.
Things other people suggested that i strongly agree with:
  • Train Groups: Manage schedules by group instead of individual trains. Add/remove trains from groups freely. (similar to OTTD)
  • Goto condition: Some kind of condition that lets us control the next station of a train. Might be as simple as "skip next 3 stations". A full blown automata tree like someone suggested is probably a bit too much for any GUI to handle intuitively.
  • Paranthesis: Add paranthesis to the conditions. Even a visual uneditable aid would already be an improvement. Until this day i assumed the conditions were left-to-right evaluated D:.
  • Transparency: definetly needs an option to turn it off. When Windows® first introduced semi-transparent window-borders it was a readability nightmare, and it still is. Sure it looks cool at first. But not after working with it for tens or hundrets of hours.
  • Better schedule editing: Ability to move a station up/down in the schedule. Copy a station including conditions, and change station('s name) without changing conditions.
  • Embossing: Don't overdo it ;)
  • A better color picker: possibly a wheel/square like in common graphic programs. Or a pipette tool that works on the current screen, so you could click any pixel on the screen to pic that color. Similar to the choose_element_button it could be hidden in a seperate popup.
Things i really liked:
  • Help Button: Looks like a really good and intiutive place to display additional information. I'm herby preemtively request an API to add pages for custom GUIs.
  • Train path preview: Awesome!
About the sticking out of the window buttons... initially i actually liked those, but after reading a few posts complaining about them i remembered the horrors of winamp skins which came in all sorts of annoying shapes and distasteful colors. And i think that it's probably for the better that we've arrived at square windows as a gold standard.

Ultimately i think, if you haven't already, you will have to decide if you want your GUI to be more visually pleasing in an attempt to suck in new players, or if you want to lean towards readability and usability to appeal to the long-term players. Unless of course you somehow manage to make a magic GUI that pleases both groups needs. :D
Author of: Belt Planner, Hand Crank Generator, Screenshot Maker, /sudo and more.
Mod support languages: 日本語, Deutsch, English
My code in the post above is dedicated to the public domain under CC0.
Sonik-HSC
Long Handed Inserter
Long Handed Inserter
Posts: 51
Joined: Wed Feb 08, 2017 2:06 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Sonik-HSC »

The game looks beautiful.... But for a milion question--- We will need a super computer to play this game? A lot of improvements its means a lot more power... :D
pleegwat
Filter Inserter
Filter Inserter
Posts: 278
Joined: Fri May 19, 2017 7:31 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by pleegwat »

Regarding skipping stations: How about a set of conditions on whether to visit a station, in addition to the wait conditions? Normally this would be an empty list, meaning the station is visited. Adding a rule like 'Fuel less than X MJ' or 'Cargo of Iron less than 8000' could make a station be skipped if the condition is false. Possibly there could even be conditions based on circuit conditions at the destination station as well, which could allow you to put all your iron outposts on the same station name, and only have trains route to outposts with a certain amount of iron available to be loaded.
JKLxHIDE
Manual Inserter
Manual Inserter
Posts: 2
Joined: Sun Apr 09, 2017 11:48 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by JKLxHIDE »

Can you include ability to add stations by clicking them on map view or drag&drop(funy but not necessary)?
And thanks for your work. This enhancments are pretty awesome.
Gecko
Long Handed Inserter
Long Handed Inserter
Posts: 53
Joined: Sat Nov 29, 2014 8:52 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Gecko »

I really like the way the GUI is developing. The preview looks promising!!!

As you rework the looks anyways, can we request also additions? I got one on my mind I'd really love to see.
I'd like to be able to view the content of the wagons in an additional tab on the train screen. like the fuel-tab and the station-tab on there left. just another tab displaying the wagons in a list manner, showing the slots and cargo there.

I still love the game!! after years. :)
User avatar
Andrzejef
Fast Inserter
Fast Inserter
Posts: 103
Joined: Sat Aug 27, 2016 1:16 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Andrzejef »

Hell, I liked going nearby to the railway, and spamming "enter" while any train got close. But this temporary stop, this auto-(or rather train)-stop, is awesome :)
Also I second gecko idea - I think it would be nice to have that too :)
Image
R3vo
Inserter
Inserter
Posts: 35
Joined: Thu Sep 03, 2015 5:38 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by R3vo »

The UI looks great already. Can't wait for it ;)

One suggestion though. Might it be possible to add colour presets to the colour pick menu? So one can quickly change the colour of a train to a predefined colour. I always set the colour as close a possible to the colour of the product they carry and fiddling with those 3 sliders everytime is quite annoying. Would be a nice quality of life improvement, at least for me.
User avatar
olafthecat
Filter Inserter
Filter Inserter
Posts: 476
Joined: Fri Jul 07, 2017 4:37 pm

Re: Friday Facts #212 - The GUI update (Part 1)

Post by olafthecat »

This is art :D :(
There should be a smiley for crying with happiness!
I love the blurred transparency, beautiful...
Gonna start playing again with 0.16 build.
That's all.
Blailus
Burner Inserter
Burner Inserter
Posts: 9
Joined: Wed Jun 29, 2016 2:20 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Blailus »

kovarex wrote: And as other people suggested, having train routes could be useful if it doesn't make it less understandable.
I think the route method should be very easily explained in a tutorial. I see having a pre-defined path and assigning a vehicle to that path be a very logical way to schedule things.
Xarovin
Long Handed Inserter
Long Handed Inserter
Posts: 66
Joined: Fri Mar 04, 2016 4:53 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Xarovin »

May have been suggested but the thread is 5 pages long - when adding a new station to the schedule, it'd be nice to see a path from the previous station.
LD100
Burner Inserter
Burner Inserter
Posts: 14
Joined: Sun Jul 31, 2016 7:45 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by LD100 »

Nice plans.

Just one thing the condition is called "Item count" but then you just display the text "Cargo:" this could be confusing for new players.
Maybe change the Condition to: "Cargo item count". So nobody is confused what Item counts mean.

And maybe change "Wait condition" to "Wait until:" this makes clear that the wait condition is more a when should the train start condition.
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2370
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Jap2.0 »

Obliterator2 wrote:May have been suggested but the thread is 5 pages long - when adding a new station to the schedule, it'd be nice to see a path from the previous station.
The thing is, the path isn't always the same. It shows you the path the train is currently on, but the path from one station to the next isn't always the same and can even change midway.
There are 10 types of people: those who get this joke and those who don't.
Xarovin
Long Handed Inserter
Long Handed Inserter
Posts: 66
Joined: Fri Mar 04, 2016 4:53 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Xarovin »

Jap2.0 wrote:The thing is, the path isn't always the same. It shows you the path the train is currently on, but the path from one station to the next isn't always the same and can even change midway.
Yeah I'm aware of that part, but I mean as a general idea it'd be nice to see the optimal route. I mean like for example if the quickest route requires a huge detour around the entire base, you've either messed up the pathing, or you've got the stations in the wrong order.
AcolyteOfRocket
Fast Inserter
Fast Inserter
Posts: 124
Joined: Sun Mar 06, 2016 9:58 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by AcolyteOfRocket »

Don't know if this has already been asked for (didn't read all 5 pages) but.....

1. I request the ability to move a station up and down in the schedule - It's annoying inserting a station in the wrong place and then having to delete it and try again.

2. A "clone train" button would be nice. Obviously we need to put down the train(+fuel) and wagons, but then if we could clone all the settings (loco and wagons) from another train that would be cool.

3. The ability to set the timetable to specific station index in the schedule list (at a station) might be nice. ie. Say I have the following Schedule : Iron base (empty all), Iron mine 1 (stay 20 secs), Iron mine 2 (stay 20 secs), Iron mine 3 (stay 20 secs). If I fill up the train at Iron mine 1, I would like to be able to ping it from a combinator there setting the station index to 1 (or 0 for C++ monkeys ;-) ) which would set the next station to the 1st in the list. This way I don't send a full train to Iron mines 2 or 3. Combinator professors would no doubt be able to do much more with this system

Ta very much ;-)
Diablo
Long Handed Inserter
Long Handed Inserter
Posts: 67
Joined: Thu Apr 21, 2016 12:35 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Diablo »

Please add the ability to change to order of the stops, either by dragging, add an up and down arrow button or an index number in front of the stops that can be changed... Please.
Thank you.
Avezo
Filter Inserter
Filter Inserter
Posts: 454
Joined: Fri Apr 01, 2016 3:53 pm
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Avezo »

I find it weird how new GUI is modern-looking while entire game is steam-industrial looking. Old GUI was simple enough to overlook it, but with this new one it kinda doesn't fit with game theme. I suggest to try iteration with making GUI less modern-clean and more steam-dirty.
Engimage
Smart Inserter
Smart Inserter
Posts: 1069
Joined: Wed Jun 29, 2016 10:02 am
Contact:

Re: Friday Facts #212 - The GUI update (Part 1)

Post by Engimage »

AcolyteOfRocket wrote:2. A "clone train" button would be nice. Obviously we need to put down the train(+fuel) and wagons, but then if we could clone all the settings (loco and wagons) from another train that would be cool.
You can already do this by Shift-rightclick (copy) and Shift+leftclick (paste) for locomotives and wagons
Last edited by Engimage on Sat Oct 14, 2017 6:53 pm, edited 1 time in total.
Post Reply

Return to “News”