Hubs-Foundation / hubs

Duck-themed multi-user virtual spaces in WebVR. Built with A-Frame.
https://hubsfoundation.org
Mozilla Public License 2.0
2.13k stars 1.41k forks source link

First Time User Tutorial #1992

Open blairmacintyre opened 4 years ago

blairmacintyre commented 4 years ago

Is your feature request related to a problem? Please describe. When inviting new users to hubs, especially ones that are no experienced with 3D games, they are very confused as to how to use it. There needs to be a "noob friendly" tutorial front-and-center that they can choose to go to.

Folks who've used 3D experience can kinda figure things out, perhaps, but as we invite complete novices into hubs rooms, the experience is off-putting. Creating a system that makes smart folks feel dumb is not a good thing.

Describe the solution you'd like When a hubs room is entered, the client should look to see if hubs has been used in this browser context (look for cookies or whatever is used to remember names, accounts, etc). If there is no account, or evidence of prior hubs use, the client should pop something up front-and-center that offers

All of these should also be available from some menu in-room. Having them on hubs.mozilla.com or on the github wiki is completely inadequate: the people who need it most are likely those who have been sent a link and are clicking through on some device.

gfodor commented 4 years ago

The tips are meant to serve as a basic tutorial, I am going to do a pass on this to make them more obvious.

Having done a few of these “tutorial spaces” before one issue is users often get frustrated and bounce out of the experience due to them if they’re not designed very well.

On Fri, Dec 20, 2019 at 5:11 AM Blair MacIntyre notifications@github.com wrote:

Is your feature request related to a problem? Please describe. When inviting new users to hubs, especially ones that are no experienced with 3D games, they are very confused as to how to use it. There needs to be a "noob friendly" tutorial front-and-center that they can choose to go to.

Folks who've used 3D experience can kinda figure things out, perhaps, but as we invite complete novices into hubs rooms, the experience is off-putting. Creating a system that makes smart folks feel dumb is not a good thing.

Describe the solution you'd like When a hubs room is entered, the client should look to see if hubs has been used in this browser context (look for cookies or whatever is used to remember names, accounts, etc). If there is no account, or evidence of prior hubs use, the client should pop something up front-and-center that offers

  • a full-blown 3D tutorial, suitable for people who have no 3D application/game experience, especially on desktop (like the room we had at UIST)
  • detailed controls help (something suitable for "I've used 3D games, or I'm on my own VR device, but never used hubs")
  • terse controls help (something suitable for "I've used hubs but not on this particular VR device")

All of these should also be available from some menu in-room. Having them on hubs.mozilla.com or on the github wiki is completely inadequate: the people who need it most are likely those who have been sent a link and are clicking through on some device.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mozilla/hubs/issues/1992?email_source=notifications&email_token=AABVW5BUTFYYNKQXSA6UUC3QZTAALA5CNFSM4J55XUR2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IB62HFA, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVW5A5D7KB6HX4VXCCRD3QZTAALANCNFSM4J55XURQ .

blairmacintyre commented 4 years ago

I agree it's not easy. But, if we are serious about having users beyond the "VR faithful", we have to address this somehow. I'd expect we'd want a scalable experience that can take as little or as long as a given user needs, for example.

gfodor commented 4 years ago

I'm not totally convinced we can't get by for a long while with a fairly decent 2d tip-based on-boarding tutorial. My theory is that we can focus on teaching the 2d mechanics through that (which users are used to from a variety of existing apps) since that will be the majority of our FTUE, and the 'VR faithful' will be willing and able to muddle through self-teaching the VR controls when they make the jump to VR after learning the basics in 2d.

I'm not arguing that all things being equal a really good tutorial wouldn't be a good idea, but (especially without a tool like Unity) this would be a massive project to do well imo. It also adds a large tax, since the tutorial needs to be continually updated to reflect the current features and mechanics.

gfodor commented 4 years ago

btw, the tip stuff is already pretty good imo. but it could be made a lot better and also the current design is absymal when it comes to blindness. but i set it up so it's pretty scalable wrt showing a proper contextual tip as users discover features, so it seems sane for us to be able to maintain it over time. we can also try to prioritize getting that UX into VR if we decide the 2D version is working well. i feel like we should try to improve that particular variant of this idea since it could provide a lot of the potential upside with way less effort and maintenance burden vs a fully immersive 3d tutorial space.

gfodor commented 4 years ago

once i get out of hubs cloud land i was planning on making a small pass on it to:

gfodor commented 4 years ago

also, spoke uses this approach for its tutorial but spoke's is more sophisticated

gfodor commented 4 years ago

(if you don't know what I'm talking about, you might be hitting the 'tips are completely subject to blindness' issue, go to the top left menu and click 'show tips')

blairmacintyre commented 4 years ago

Honestly, anything would be an improvement. Right now, I send a non-3D/non-CS someone a hubs link, and it's a complete disaster most of the time because there is SO much to learn.

That said, even a sequence of modal "click-through tips" in the world would be great. I imagine one center-of-view popup that asks if they would like a short set of tips (perhaps based on if they are logged in or not), then lets them step through a sequence of tips and hints. Having a way to bring back this set of help/tips (perhaps a "?" icon in the bar they get when they look up) would be great -- this would be useful even for experienced people on a new device.

The key point is: we need to onboard novices, especially people who aren't CS/VR/nerd types.

gfodor commented 4 years ago

Sorry, have you seen the existing tips? That's what I'm referring to as making more prominent. They do what you state here (though don't cover all the features currently.) To re-surface them, click "Show Tips" in the menu. They show by default if you have a new session, but I suspect almost everyone instinctively closes them or misses them completely, not even realizing they did so.

blairmacintyre commented 4 years ago

I saw them a while back; they are an ok start. Need more info on controls, using chat and commands (without going to the wiki, for example). Esp in VR mode.

gfodor commented 4 years ago

Have you seen https://hubs.mozilla.com/docs yet? its not yet linked because we are still working on it.

gfodor commented 4 years ago

Also I agree in-game control reference + more content in the tips are easy wins

misslivirose commented 4 years ago

An additional consideration that should fit into the larger tutorial - muting users. From #1935

I attended an event with no moderator in Hubs. A couple attendees were being loud and in others' space. Had the moderator been in the room they may have been removed. After I shared how to mute folks in the text-chat, a number of people mentioned that being able to control others volume improved their experience, and they wouldn't have known to do this since it was their first time in Hubs.

misslivirose commented 4 years ago

Related: https://github.com/mozilla/hubs/issues/1465

misslivirose commented 4 years ago

We should address #2332 as part of this.

misslivirose commented 4 years ago

“The tutorial should lower the barrier to entry to learning features and discovering product capabilities”

Problem Statement: The current onboarding flow for new users focuses on the immediate controls of the platform. However, it is not available in VR, and we have an (untested) hypothesis that many desktop or mobile users may dismiss or not notice its current form above the chat text box. Users who are new to Hubs and are unfamiliar with the controls that we use have to learn navigation techniques, and other core workflows for the platform. There is also an opportunity to use an onboarding experience to inform users about platform capabilities that may be of interest to them, and provide them with activities to do in their first time on the platform, so that we can improve the way that we are messaging the platform during the first time user experience and teach core capabilities.

User Flows: While we anticipate that we could use some heuristic for better articulating these different scenarios, and what type of tutorial content would be ideal, we've come up with a few core flows that we think would be good to support:

  1. A user visits hubs.mozilla.com and creates a room for the first time. They are given information about how to move around the space, turn, and open menus. The room that they are in has sufficient content that they are able to explore and they leave knowing both how to use the basic controls, as well as the general purpose that Hubs can be used for. We think that this flow is likely addressed by a client-UI tutorial that introduces movement and menus, and a 3D environment for exploring

  2. A user visits a specific room URL because they are trying to attend an event on Hubs for the first time. They are given information about how to move about the space, turn, and open menus. Because they are in a room with a different scene, and have come to the room for a specific activity, the need for activities in the room is reduced. We think that this flow is likely addressed by a client-UI-only tutorial

  3. A user has used Hubs before but would like a quick-reference, in-app experience for searching on a specific action (e.g. "take a photo"). In this pass, we are likely to prioritize the first-time user experience (FTUE) but this is something we might want to keep in mind.

We think that the combination of a 3D space that can be used to explain product functionality and provide FTUE activities and a lightweight client tutorial similar to what we do with Spoke (although perhaps only a single screen) would likely be a good route forward. We also discussed the design where context-specific information was displayed, similar to what is often used in video games where button actions are different depending on the item that is selected.

Next steps:

Design opinions:

Design questions: