Page 1 of 1

UI Size

PostPosted: Tue May 10, 2016 9:24 pm
by ZoddAlmighty
Since i've heard that devs wont even TOUCH the main client anymore i am here to to suggest a solution for all the plebs with small screen like myself.
UI SIZE SLIDER.
Goes both ways, so if you are playin in 4k resolution you won't go blind staring at the small icons xD
Also, when ever we get a quality of life update like this from the creators of Enders/Latikai clients their penis actually grows an inch. True story.

Re: UI Size

PostPosted: Thu May 12, 2016 10:38 am
by Kandarim
Because of the increasing cost of new pants, I am forced to abandon client work. Sorry.

On-topic: this could likely be done, but I see very little actual reason to. I've played the game on everything from 768x1024 to 4K without any noticeable difficulties aside from chat (and I have a chat font scale feature implemented).
It's listed as a very nice thing to have in my mind, but the required code changes mean that it will likely have to wait until all other low-hanging fruit is implemented - and there's several barrel's worth left, I'm afraid.

Re: UI Size

PostPosted: Thu May 12, 2016 12:17 pm
by Kralith
Kandarim wrote:Because of the increasing cost of new pants, I am forced to abandon client work. Sorry.


I suggest skirts, then it does not matter how long he will be at the end :D

Re: UI Size

PostPosted: Thu May 12, 2016 2:44 pm
by ZoddAlmighty
Well, it all depends on the screen size in the end.
And if you playing with a 14inch laptop with a low ress you cant tell me that UI slider would not make the game open up. Especially since inventory takes 2 screens when you are doing stuff arround the base and when action bars take whole bottom side of the screen.
I do understand the difficulties of making such an option and i respect your decision of you trying to fix more easier things but you cant convince me that UI size is good as it is on smaller screens.

Re: UI Size

PostPosted: Sun Oct 02, 2016 11:01 pm
by nico54k9
I second this idea Kandarim.

I understand if you can no longer develop the client, however if you could point us in the direction of which files need to be edited to change the GUI size for manual editing, that would be the next best thing.
I like being able to 'play' salem on my high DPI tablet, but I cant read anything (other then the scaled chat text) unless I'm 2 inches away from the screen.

Would appreciate help from anyone to tell me which files in which .JAR file to change.

Cheers.

Re: UI Size

PostPosted: Mon Oct 03, 2016 7:48 pm
by Kandarim
Hmm.
This would be rather extensive, and I see two parts in it:

Changing all relevant text factories to the higher fontsize.

This is the easy part. This is probably best captured by a bit of code from the scaling chatUI:
Code: Select all
    public final void setbasesize(int basesize)
    {
        ChatUI.fnd = new RichText.Foundry(new ChatParser(TextAttribute.FAMILY, "SansSerif", TextAttribute.SIZE, basesize, TextAttribute.FOREGROUND, Color.BLACK));
        ChatUI.qfnd = new Text.Foundry(new java.awt.Font("SansSerif", java.awt.Font.PLAIN, basesize+2), new java.awt.Color(192, 255, 192));
        ChatUI.selw = 100+(basesize-12)*6;
        TextEntryChannel.efnd = new Text.Foundry(new Font("SansSerif", Font.PLAIN, basesize), Color.BLACK);
       
        this.c = this.base.add(0, -100-(basesize-12)*24);
        this.resize(new Coord(this.sz.x,100+(basesize-12)*24));
        this.chansel.nf = new Text.Foundry("SansSerif", basesize);
        this.chansel.nfu = new Text.Foundry("SansSerif", basesize+2, Font.BOLD);
        this.chansel.ymod = (basesize-12)*3;
        this.chansel.rerender = true;
       
        this.basesize = basesize;
    }


I set all relevant text foundries to the larger basesize. Rather straightforward. Just do a project-wide search for text foundries and change as required.

Changing the resource files that contain text

This is probably the more extensive part of the thing. This would include changing the resources of e.g. window headers so that they can actually contain the larger text.
Probably not strictly required, but it is required if you want the client to look somewhat nice.

Re: UI Size

PostPosted: Wed Oct 05, 2016 9:01 pm
by nico54k9
Kandarim wrote:Hmm.
This would be rather extensive, and I see two parts in it:

Changing all relevant text factories to the higher fontsize.

This is the easy part. This is probably best captured by a bit of code from the scaling chatUI:
Code: Select all
    public final void setbasesize(int basesize)
    {
        ChatUI.fnd = new RichText.Foundry(new ChatParser(TextAttribute.FAMILY, "SansSerif", TextAttribute.SIZE, basesize, TextAttribute.FOREGROUND, Color.BLACK));
        ChatUI.qfnd = new Text.Foundry(new java.awt.Font("SansSerif", java.awt.Font.PLAIN, basesize+2), new java.awt.Color(192, 255, 192));
        ChatUI.selw = 100+(basesize-12)*6;
        TextEntryChannel.efnd = new Text.Foundry(new Font("SansSerif", Font.PLAIN, basesize), Color.BLACK);
       
        this.c = this.base.add(0, -100-(basesize-12)*24);
        this.resize(new Coord(this.sz.x,100+(basesize-12)*24));
        this.chansel.nf = new Text.Foundry("SansSerif", basesize);
        this.chansel.nfu = new Text.Foundry("SansSerif", basesize+2, Font.BOLD);
        this.chansel.ymod = (basesize-12)*3;
        this.chansel.rerender = true;
       
        this.basesize = basesize;
    }


I set all relevant text foundries to the larger basesize. Rather straightforward. Just do a project-wide search for text foundries and change as required.

Changing the resource files that contain text

This is probably the more extensive part of the thing. This would include changing the resources of e.g. window headers so that they can actually contain the larger text.
Probably not strictly required, but it is required if you want the client to look somewhat nice.


Thanks for the tips mate. If I ever find myself with enough free time to achieve this, I shall upload the files for others.