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

On-screen display mod #410

Closed
originalfoo opened this issue Jul 5, 2019 · 19 comments · Fixed by #819
Closed

On-screen display mod #410

originalfoo opened this issue Jul 5, 2019 · 19 comments · Fixed by #819
Assignees
Labels
discussion Contains debate on certain topics EXTERNAL Mod conflict or other external factor feature A new distinct feature Keybinds Keyboard (and mouse) shortcuts Overlays Overlays, data vis, etc. UI User interface updates
Milestone

Comments

@originalfoo
Copy link
Member

I've been pondering this for over a year, but a comment from @kvakvs just prompted me to post the idea...

kvakvs: One problem. I need some GUI space (a tooltip or a floating window?) to display hints, keyboard shortcuts and current help. A tooltip would be great, maybe.

Have you ever played Railway Empire? It's an ok game if you like trains, it's trying to be like Sid Myers Railroads but lacks the gamification. Anyway, one thing that it does excel at is it's small on-screen overlay at bottom of screen that shows context-sensitive info such as keyboard shortcuts and mouse clicks:

image

(That was screen-grabbed from youtube video, so apologies for low quality. If you look close at the mouse buttons you will notice the applicable button is highlighted yellow; it's much clearer in game).

Anyway, I think we need something like that for TM:PE. Considering the keybind stuff and new UI rendering stuff, I think we can easily achieve that now.

What I would suggest, however, is that it's implemented as separate mod if that's possible, as I believe this sort of thing would benefit LOTS of other mods. They could communicate with the OSD mod via a game object or something.

The OSD could be used to display context-sensitive help, keyboard / mice interactions, progress bars, all sorts of stuff. As a separate mod it could just grow over time to facilitate extra features.

It should be optional though; some users will not want OSD.

Another game to check out for its exemplary UI is Rise of Industry - I think this is some of the best - clearest, crispest - UI I've seen in any video game I've played.

@originalfoo originalfoo added discussion Contains debate on certain topics feature A new distinct feature EXTERNAL Mod conflict or other external factor labels Jul 5, 2019
@originalfoo
Copy link
Member Author

Tagging #391

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 5, 2019

This (together with generic keybinds render) will become a great assist to users having no idea about TM:PE features for months and years. When work on this begins it'll need a checklist of all tools to visit and report their keybinds to it for display. Might as well be rendered by the Subtool/MainTool class.

I'll review and learn SubTool code for now to be ready when this begins :)

@originalfoo
Copy link
Member Author

Yes, and if other modders use it too, it become standard way to let users discover interaction options (keyboard, mouse, maybe even joysticks/controllers at some point)

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 5, 2019

Wait is there some ready to use code?

@originalfoo
Copy link
Member Author

For what? The OSD? No, not that I know of.

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

I suggest having a floating box, positioned around the TM:PE main menu.
The position will be dynamic (top or bottom) to stay towards the screen center.

image

A cheap prototype without graphics can be done in an evening, i'll have a look.

@kvakvs kvakvs self-assigned this Jul 8, 2019
@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

image

image

@originalfoo
Copy link
Member Author

originalfoo commented Jul 8, 2019

Would be easier to read if the keybind was put before the description of what the keybind does, and tutorial text was on separate line, eg:

                                 Link the lanes

Delete | Backspace Clear       Shift+S Stay in lane       Escape Exit tool

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

@aubergine10
image

@originalfoo
Copy link
Member Author

Yup, lots better! Text looks really crisp and clear too - how do you get it such high quality? On my rig all the UI looks really blurred.

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

image

@originalfoo
Copy link
Member Author

originalfoo commented Jul 8, 2019

Not sure about the blue backgrounds, think it looked better with just yellow text.

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

Are you running the game in native display resolution? I.e. i have 1920x1080 display and the game runs in the exact same resolution.

The backgrounds can be made light with darker text to look more like a keyboard button. But i want at least some color distinction.

@originalfoo
Copy link
Member Author

I run at QHD resolution (2560x1440), but for some reason the UI in game seems limited to 1920x1080 regardless of what I set in the Options > Graphics game settings.

@krzychu124
Copy link
Member

I think we can later add a little question mark to the main tool to toggle that

@originalfoo
Copy link
Member Author

Or just customise the existing ? advisor help button so that it shows our panel instead of the usual tutorial panel.

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

Honestly i liked dark background under the keys
image

@kvakvs
Copy link
Collaborator

kvakvs commented Jul 8, 2019

This is most pleasing to me
image

@originalfoo
Copy link
Member Author

Another OSD example from game "Cliff Empire":

image

@originalfoo originalfoo added Keybinds Keyboard (and mouse) shortcuts UI User interface updates Overlays Overlays, data vis, etc. labels Aug 12, 2019
@kvakvs kvakvs closed this as completed Apr 14, 2020
@originalfoo originalfoo added this to the 11.5.0 milestone Apr 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Contains debate on certain topics EXTERNAL Mod conflict or other external factor feature A new distinct feature Keybinds Keyboard (and mouse) shortcuts Overlays Overlays, data vis, etc. UI User interface updates
Projects
None yet
3 participants