Page 1 of 2

Our UI situation

Posted: Mon Dec 19, 2016 5:58 am
by JJRcop
We kinda have a thing where not everyone actually likes neersighted's tgui exactly, our ""current"" ui framework, even though we also have nullquery's html_ui datum, which is only used twice. Alongside that, we still have a lot of interfaces that directly use browse() and are implemented on their own without a UI system, just a standardized CSS to make it look nice, and then others that don't even include the CSS so have an ugly white background and extremely barebones HTML.

tgui uses ractive.js for its client-side webpage processing, and html_ui uses Bootstrap.
tgui uses pre-compiled webpage templates that change based on input data (which is what ractive.js handles), where html_ui mostly uses HTML provided via a DM proc.


What should we do?

Continue to use tgui and eventually convert everything over to it?
Switch over to html_ui and convert everything over to it?
Convert everything back to browse() and basic HTML like it used to be?
Convert everything to browse(), but drop the CSS? this is extremely ugly nobody is going to like it
Make a new UI system that uses/does X, and convert everything over to it?

EDIT: I neglected to include /datum/browser, which is really just a wrapper for browse() but does the CSS stuff for you. I was mistaken when I said "a lot of interfaces that directly use browse()", those mostly use /datum/browser, but it isn't all that different anyway, just a minimal wrapper.

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:18 am
by oranges
browse == shit
html ui == shit
tgui == average

you do the math

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:19 am
by MisterPerson
What would be good then?

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:22 am
by Incoming
Tgui is a pox on older computers and my toaster loathes it so. Also every so often someone walks into coderbus asking why they can't play large swaths of the game anymore and we have to tell them it's because they're using [a really old version of windows || A virtual machine like wine || Just straight up fucking Linux] that can't support IE11, which is now REQUIRED for Tgui to work. As I said even if it does work for you if your machine is really old it still runs like trash. Opening a Tgui on my machine can take upwards of twenty or thirty seconds, and if it takes any longer the client crashes.

So I'm not a fan. This is a game from the distant past, outside of Tgui it has the recommended specs of a game from 2003. It's not worth prettiness to put people out like this.

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:03 am
by iamgoofball
This is not a game from the distant past anymore

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:29 am
by cocothegogo
since when did you call the shots?

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:32 am
by Armhulen
since when was space station 13 a 2003 atmos simulator

Re: Our UI situation

Posted: Mon Dec 19, 2016 11:04 am
by Arianya
tgui is more reactive and pretty then HTML UI, so going back to that is kinda nonsensical.

Performance concerns are of course always important, but you can't reasonably expect the coders to hamstring themselves to supporting the same kind of hardware that could support SS13 in 2009. Its been nearly a decade. Go buy $50 worth of upgrades for your machine.

That said, it'd be nice to get more things ported over to tgui so its less mish mashy.

Re: Our UI situation

Posted: Mon Dec 19, 2016 12:48 pm
by JohntheRipper
I would prefer something not requiring IE support as I want to continue playing SS13 on Linux.

If we must use TGUI, it would be really nice if there was a legacy mode for users that cannot provide IE11.

Re: Our UI situation

Posted: Mon Dec 19, 2016 12:50 pm
by Thunder11
Yeah, ideal solution would be to find a way to allow a legacy mode that does UIs as plain HTML

Re: Our UI situation

Posted: Mon Dec 19, 2016 12:50 pm
by Owegno
I am curious, what UI is used by the crew monitor as quite a lot of the people on the server (myself included) have issues with it, I remember hearing one person say it was tgui but then later hearing it wasn't.

Re: Our UI situation

Posted: Mon Dec 19, 2016 12:51 pm
by Thunder11
I'm pretty sure the crew monitor issues were related to the minimap system

Re: Our UI situation

Posted: Mon Dec 19, 2016 3:08 pm
by lzimann
JohntheRipper wrote:I would prefer something not requiring IE support as I want to continue playing SS13 on Linux.

If we must use TGUI, it would be really nice if there was a legacy mode for users that cannot provide IE11.
The problem is that BYOND requires IE. TGUI will only push the version requeriment higher(which ends up being a problem in linux).

Re: Our UI situation

Posted: Mon Dec 19, 2016 3:28 pm
by PKPenguin321
Owegno wrote:I am curious, what UI is used by the crew monitor as quite a lot of the people on the server (myself included) have issues with it, I remember hearing one person say it was tgui but then later hearing it wasn't.
It's a weird mish mash of pseudo tgui
So it's not tgui but it looks like it

Re: Our UI situation

Posted: Mon Dec 19, 2016 4:17 pm
by JohntheRipper
lzimann wrote: The problem is that BYOND requires IE. TGUI will only push the version requeriment higher(which ends up being a problem in linux).
Then we need a legacy mode not using TGUI as replacement the "no frills" that was used by IE8 users until recently.

Re: Our UI situation

Posted: Mon Dec 19, 2016 4:27 pm
by karlnp
JohntheRipper wrote:
lzimann wrote: The problem is that BYOND requires IE. TGUI will only push the version requeriment higher(which ends up being a problem in linux).
Then we need a legacy mode not using TGUI as replacement the "no frills" that was used by IE8 users until recently.
Sure. Where are we going to find it? We don't have control over BYOND's browser functions. If we did we wouldn't be in this mess.

edit: It's worth noting that players being on IE8 also restricts us in terms of the kinds of UI we can make. As long as people will be playing below IE11, we won't be able to do anything even remotely fancy - including the crew monitor, which doesn't work properly anyway and needs to be reworked.

further edit: And I don't mean fancy as in 'pretty'. I mean fancy as in 'buttons that seem to do something, ui that updates (unlike the HTML UI borg door interface), and menus with more than one layer.'

multiedit:
Incoming wrote: Opening a Tgui on my machine can take upwards of twenty or thirty seconds, and if it takes any longer the client crashes.
this is likely a problem with IE8 rather than with our UI system - IE 8's idea of what 'javascript' is was much different than even IE9s, and it's currently infamous for the many, many bugs in its implementation (and in CSS, HTML elements, layout, rendering..) It's bad and you should stop using it however you can.

Github issues:

https://github.com/tgstation/tgstation/issues/22202
^ oranges comments re: our current UI situation

https://github.com/tgstation/tgstation/issues/22124
https://github.com/tgstation/tgstation/issues/20417

The list goes on.

(bona fides: i am a professional IE8 hater, having had to make and maintain complex interfaces using it for the past few years)

Re: Our UI situation

Posted: Mon Dec 19, 2016 4:43 pm
by MrStonedOne
karlnp wrote:
Incoming wrote: Opening a Tgui on my machine can take upwards of twenty or thirty seconds, and if it takes any longer the client crashes.
this is likely a problem with IE8 rather than with our UI system
Nope, its ractive. 0.8 is already known to cut that time in half if not more, me and incoming tested.

Re: Our UI situation

Posted: Mon Dec 19, 2016 4:49 pm
by karlnp
ractive 0.8 doesn't support IE8 either - they moved to modern Javascript. so I suppose it's a moot point.

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:06 pm
by Wyzack
We still do not as far as i know have a proper solution for tgUI causing crashing and lag with big menus, just Goofball's nifty workaround breaking down the construction menus into smaller categories. Tethering our needed UI to a trash program like the latest internet explorer and preventing Linux/wine users from playing the game kinda sucks.

Prettier and real time updating menus are nice, but i am not sure they are worth all the issues they are causing.

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:20 pm
by iamgoofball
The solution is for us to update which we are doing

90% of the lag was because of supporting older slower systems and their shitty old code

Re: Our UI situation

Posted: Mon Dec 19, 2016 7:29 pm
by karlnp
Wyzack wrote: Tethering our needed UI to a trash program like the latest internet explorer and preventing Linux/wine users from playing the game kinda sucks.
This is on BYOND, not us. For us, the option is which trash program we want to be tethered to, the one which is unsupported by its vendor and laggy due to its broken javascript/CSS/DOM implementation, or the one that functions reasonably well, lets us minimize crashes and increase performance by updating dependencies (ractive, doT.js if we want to do that, etc) and is supported.

Re: Our UI situation

Posted: Mon Dec 19, 2016 8:04 pm
by Wyzack
It does not matter who it is "on", I am not trying to assign blame. It still sucks and I don't like it

Re: Our UI situation

Posted: Mon Dec 19, 2016 8:18 pm
by karlnp
What I meant is that we are stuck between a rock and a hard place. Either we have a laggy POS that is broken, or we have a better version that locks out people using workarounds to play BYOND.

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:13 pm
by John_Oxford
functionality oversteps looks.

it can look like shit but i want it to load instantly and have a instant response when i click a button on it.

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:18 pm
by danno
yeah
as they are now it's just a laggy piece of shit i don't care if it looks nice

Re: Our UI situation

Posted: Mon Dec 19, 2016 9:22 pm
by Scott
TGUI itself is slow. Even on good computers it's slow. I don't know what it is, but all of it is slow and we should not be blaming it on old hardware and outdated IE. The game client should not be crashing because TGUI shits itself when loading a simple list of cooking recipes.

The features are great, but if the basic stuff isn't working properly then it's not worth it.

Edit: With that said, the guy who developed TGUI just disappeared one day, so it's up to the people who have been coding new TGUI windows to fix this shit.

Re: Our UI situation

Posted: Tue Dec 20, 2016 1:40 am
by Alipheese
How about put the in settings to have the player choose what kinda look their menus have?
Then just have it swap to that load file for the menu.
I personally like the plain html ones.

Re: Our UI situation

Posted: Tue Dec 20, 2016 2:33 am
by oranges
Because then it's twice as hard to test and may require creating two ui's for every item.

Re: Our UI situation

Posted: Tue Dec 20, 2016 9:47 am
by Arianya
Scott wrote:TGUI itself is slow. Even on good computers it's slow. I don't know what it is, but all of it is slow and we should not be blaming it on old hardware and outdated IE. The game client should not be crashing because TGUI shits itself when loading a simple list of cooking recipes.

The features are great, but if the basic stuff isn't working properly then it's not worth it.

Edit: With that said, the guy who developed TGUI just disappeared one day, so it's up to the people who have been coding new TGUI windows to fix this shit.
I'm not going to claim to have the most moderate rig, but I've never experienced tgui being slow or crashing the game client. Have you filed an issue on this at github?

Re: Our UI situation

Posted: Tue Dec 20, 2016 2:57 pm
by Scott
This isn't a new issue, it's widely known and reported.

Re: Our UI situation

Posted: Tue Dec 20, 2016 3:07 pm
by Wyzack
It has always been an issue for me despite my computer being relatively high end

Re: Our UI situation

Posted: Wed Dec 21, 2016 1:02 am
by John_Oxford
It has to do with IE

The entire UI system is bullshit and we should scrap it and make a new one thats built from the ground up to not be a laggy useless piece of shit that some people can and can't use.

Literally this is basic 1+1 = 2. quit trying to make it equal sixty you niggers

Re: Our UI situation

Posted: Wed Dec 21, 2016 1:40 am
by oranges
If you don't know what you are talking about please shutup

Re: Our UI situation

Posted: Wed Dec 21, 2016 1:55 am
by John_Oxford
oranges wrote:If you don't know what you are talking about please shutup
if you don't know what im talking about don't try to condescend me, you citrus fuck

tgui and the normal ie windows are both sub par compared to something that could be built with both looks and speed kept in mind.

Re: Our UI situation

Posted: Wed Dec 21, 2016 4:55 am
by iamgoofball
John_Oxford wrote:
oranges wrote:If you don't know what you are talking about please shutup
if you don't know what im talking about don't try to condescend me, you citrus fuck

tgui and the normal ie windows are both sub par compared to something that could be built with both looks and speed kept in mind.
We're locked into IE by BYOND. There's no working around it.

Re: Our UI situation

Posted: Wed Dec 21, 2016 7:15 am
by DemonFiren
iamgoofball wrote:
John_Oxford wrote:
oranges wrote:If you don't know what you are talking about please shutup
if you don't know what im talking about don't try to condescend me, you citrus fuck

tgui and the normal ie windows are both sub par compared to something that could be built with both looks and speed kept in mind.
We're locked into IE by BYOND. There's no working around it.
le ss13 remake

Re: Our UI situation

Posted: Wed Dec 21, 2016 7:54 am
by Incoming
The argument is rather that we not need be tied to MODERN IE, which casts out players using more creative solutions to run byond.

https://github.com/tgstation/tgstation/pull/21958

That pull is why we need IE11, by itself it does nothing but lock out people who can't run IE11. I want to stress that no frills mode was made SPECIFICALLY to allow people who couldn't get IE11 to keep playing, so intentionally breaking that in the name of "progress" alone is kind of an extremely shitty thing to do.

Re: Our UI situation

Posted: Wed Dec 21, 2016 11:57 am
by JohntheRipper
Incoming wrote:[...] I want to stress that no frills mode was made SPECIFICALLY to allow people who couldn't get IE11 to keep playing, so intentionally breaking that in the name of "progress" alone is kind of an extremely shitty thing to do.
THIS

Re: Our UI situation

Posted: Wed Dec 21, 2016 1:18 pm
by callanrockslol
We should just bite the bullet and go back to the browser.

Re: Our UI situation

Posted: Wed Dec 21, 2016 4:02 pm
by JJRcop
In my opinion, a new UI system would solve the problem.

If we were to develop a new UI system, which we totally could, what would it use?
What would it do differently, HOW would it resolve the performance issue?
Do we really need all that ractive gives us?
Could we get nearly the same functionality, but with less resources, and better backwards compatibility, by using a different library?
Which one?
Could we keep tgui's DM side, is that where the problem really is anyway?
Should we write a new DM side?


I am not against staying with tgui, but I do think this is the better option. I am not very good with web development at the moment, so I would not be a good person to answer those questions, but I am the person to ask them. I will say, I think that it being a group effort, aside from just one person planning it out, would be really good.

Re: Our UI situation

Posted: Wed Dec 21, 2016 4:21 pm
by Wyzack
Correct me if I am wrong here, but i think what the code savvy folks are saying is that it Is not possible to do the things our UI does without utilizing internet explorer in some way. "Just make a new one lmao" is not a possible course of action. Old ui was buggy and did not self update, new one lags to shit and locks out Linux and wine users due to needing ie 11. Everything sucks. Bring back no frills

Re: Our UI situation

Posted: Wed Dec 21, 2016 4:29 pm
by JJRcop
Wyzack wrote:Correct me if I am wrong here, but i think what the code savvy folks are saying is that it Is not possible to do the things our UI does without utilizing internet explorer in some way.
We don't need IE because it's not possible to do cool neat things without it, actually other browsers do cool neat things better than IE. The problem is we're just stuck with IE because BYOND doesn't give us any other option. If we could switch to something else we likely would do so in a heartbeat, but we are not given the option. Making a new UI is a possible course of action, because we can make it with older IE versions in mind. Ractive requires a lot of dependencies, and the reason we locked out the older IE versions is because we did a dependency upgrade and one or more of those dependencies don't work with <IE11 anymore.

We can make a new UI system that doesn't have as many dependencies as ractive does, isn't as heavy as ractive, and still have it self-update.

Re: Our UI situation

Posted: Wed Dec 21, 2016 4:30 pm
by Wyzack
My point is that due to BYOND limitations i don't think we actually physically are able to just "make a new one"

Re: Our UI situation

Posted: Wed Dec 21, 2016 7:59 pm
by oranges
Looking forward to John's solution since he clearly is going to provide us wiht a modern fast fault tolerant cleanly designed UI subsystem that will work on all browsers back to ie8 :roll: Also it's hard not to conscend you when you say stupid fucking shit

It's not so much byond limitations that limit us, more people like incoming who continually advocate for old browsers with no modern html support and then the lack of developers willing to actually put in the work

Re: Our UI situation

Posted: Thu Dec 22, 2016 2:13 am
by iamgoofball
Can we just buy incoming a new laptop yet

Re: Our UI situation

Posted: Thu Dec 22, 2016 4:14 am
by oranges
He has support for ie11 personally

Re: Our UI situation

Posted: Thu Dec 22, 2016 9:07 am
by Arianya
Ah yes, the coders will just create a new UI system from scratch that is still tied to IE but doesn't use any dependence heavy libraries but still looks good and autoupdates.

In other news, relativity no longer applies, pigs have been sighted flying, and security were fair and just in their behaviour.

Re: Our UI situation

Posted: Thu Dec 22, 2016 11:40 am
by DemonFiren
That's a gulag sentence for contempt of cop.

Re: Our UI situation

Posted: Fri Dec 23, 2016 9:30 am
by callanrockslol
iamgoofball wrote:Can we just buy incoming a new laptop yet
He can have mine, its been running this game since late 2011 with no problems. :honk: :honk:

Then we can kickstart my new laptop and everyone is happy.

Re: Our UI situation

Posted: Sun Dec 25, 2016 8:36 am
by MisterPerson
If we ever start using the webclient, we could move to a more onscreen object approach since we could handle the visual effects of clicking them client-side. We could also do browser elements that aren't based on IE. Lots of options available.