CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.33k stars 4.14k forks source link

customizable widget-style Devices for UI - mod idea #56033

Closed ghost closed 1 year ago

ghost commented 2 years ago

Is your feature request related to a problem? Please describe.

There has been much work lately for custom sidebars and widgets. Clean, well designed UI goes a long way into player's immersion and interaction with a game. I believe we strive to somewhat simulate the knowledge in-game characters have regarding the world and provide that to players. Having extra knowledge is likely necessary for convenience on many fronts, although we have methods of hiding and showing info like health status and time based on items. Perhaps this can be expanded to other areas while improving upon UI design, customization and even detail.

Solution you would like.

Ability to select between two UI styles - Oldschool and Modern. Oldschool being the current iteration while modern uses devices to display in-game information.

The game UI is based on widgets that show info through use of apps or a simple display. Items like smartphones, phones, watches, tablets, etc can be selected to show info on screen as a widget.

"}" becomes the widget editor key. This allows for widget editing as well as adjusting widget size and position on screen. Widgets can also be edited from the respective item when examined. Editing would include how and what information it displays. For example the smartphone could display the time and battery level in the corner of it's screen as well as show the map on screen.

In general, widgets would be made to appear like their real counterpart. Variations in watches, and a phone, smartphone, tablet screen size and appearance could vary.

Keybindings, settings, and general menus could remain the same since those take place outside the game world.

Describe alternatives you have considered.

Scrapping this but still making a more advanced, interactive UI for smartphones and other electronics.

Additional context

Honestly this should be quite low priority. It is just a thought for a future feature or mod. I have many more thoughts on the topic. but probably better to leave this smaller for now as i have some smaller, more realistic and useful ideas to work on soon.

ZhilkinSerg commented 2 years ago

You need to elaborate more - otherwise it is not really actionable.

ghost commented 2 years ago

I tried to encompass what i was imagining, just didn't want to spend too many paragraphs detailing how this could be implemented and used as this is more about the general functionality or concept. In this case moving UI to devices your character has on their person that display relevant information and can be adjusted on screen.

I was using this as a feature suggestion to get the idea out there and see the receptions and thoughts. What needs elaborated most or was unclear/left out?

ghost commented 2 years ago

This relates most to how the sidebar is displayed. I guess how i reasonably envision this is that your default sidebar would be rather minimal and most information would need a device to see.

So, a default, minimal UI displaying info your character knows ie: Limbs, movement, needs, and log. (This might use a corner of the screen.)

And then in another corner you may have a smartphone set up to show the map or dietary consumption. I am imagining that devices would have interactable interfaces. For example a simple smartphone that can be turned on/off or put into sleep. When in use, it would drain battery slowly over time but would provide useful information to the player.

So with the smartphone you would have a home screen with simple apps installed or added through sd-card from a computer perhaps. Apps might default with : clock, health app (for diet), maps, notes/journal, camera, some games. It could include things like storing/cataloguing enemy/animal/fauna information, adding more games, and other things.

So the idea is utilizing graphical, interactive widgets with devices in game would be fundamental to understanding the world more, and this could include things like HUDs with power suits, or interacting with terminals.

I guess the idea is not that well developed yet, but it also is likely unreasonable for this games goals. I just want to know if others think the idea is at all interesting or worth considering.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

vetall812 commented 2 years ago

I've thought about your idea. Well, almost all widgets i currently add to the sidebar are vital for comfort playing. Can't imagine removing any ) But we can add different layouts with pseudographics that will represent different devices. Say - one sidebar that will bring smartphone vibe, another for laptop. But I think that we shouldn't limit player to use only specific sidebar. Ones who want more roleplay may use them if and when they want. Others will choose one that fits their game experience (actual device) more.

snipercup commented 2 years ago

Would be cool to have a radiation meter widget if you carry a geiger counter on person. Maybe a widget that would show if your camera contains a picture of the targeted monster or not. A metal detector widget that indicates something on the ground. There are many possibilities.

vetall812 commented 2 years ago

Would be cool to have a radiation meter widget if you carry a geiger counter on person. Maybe a widget that would show if your camera contains a picture of the targeted monster or not. A metal detector widget that indicates something on the ground. There are many possibilities.

Radiation widget will be on my sidebar. After first mobile version I'll create one that will benefit from pseudographics and situational widgets. It'll be bigger of course, but I hope that map widget someday become movable.

ghost commented 2 years ago

That would be cool! I'm really loving all the new additions to widgets. Radiation could be useful as well.

ghost commented 2 years ago

Regarding my original ideas on the widgets with this suggestion. they are fanciful and not practical. My current dream for the future of widgets is a slot system.

The sidebar being a grid of slots where widgets can be added, resized, and shifted around to make room for others. The size of the sidebar can also be adjusted.

This would give the greatest flexibility in adding new widgets and customizing the sidebar any way you like.

vetall812 commented 2 years ago

Id say that we probably should separate vital into from situational. Let's say sidebar stays in current form, but vehicle controls appear as separate overlay widget that can be placed anywhere on screen. Same to radiation badge and so on.

vetall812 commented 2 years ago

Oh. And if course we should have an ability to turn them on\off regardless of situation.

ghost commented 2 years ago

Agreed, situation would be nice. Possibly in the sidebar options menu, widgets could have an option for situational that could be checked. If checked it would only display under the defined conditions for the widget, if situational is set to off then it will always display.

vetall812 commented 2 years ago

Agreed, situation would be nice. Possibly in the sidebar options menu, widgets could have an option for situational that could be checked. If checked it would only display under the defined conditions for the widget, if situational is set to off then it will always display.

Well... Not sure about "always display". I'm more about player set "display_sit_widget" to "on" -> "vehicle_widget" appear on screen if char is driving. "Off" -> not appear at all.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.