Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
137 stars 2 forks source link

Group World Access for projects (and maybe socializing) #3088

Open GlitchFlux opened 1 day ago

GlitchFlux commented 1 day ago

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

When working on a project such as a world or jam project, some times you would like to work with your group whenever they pop on. When you want it to be a private thing, but still want your team to be able to access the world you are working in, it means you need to keep track of sending invites to the group, and every time someone new hosts it the invites need to be sent back out.

Describe the solution you'd like

Inside the world access levels, it would be great to set a world as only being open to a group without having to set up a headless with a whitelist of group members. Having the ability to set visible and joinable for just members of a chosen group tag would be great. It also can help people get more events going and have more people incentivized to create or join more communities within Resonite without having to rely on Discord, Telegram, and other external means.

This also can help so that when working on a project for a group, you have less need to send out as many invites or have a few people from groups or meetups sending extra invites when the world is more easily accessed through the contacts tab or Group Worlds in the world browser. People can focus a little easier without having to notice the pings of team members logging in and needing invites, and while set to group there is a way to be semi-open to invites and users joining without having to hide sessions.

Describe alternatives you've considered

Alternatives that have been explored have been opening up headless sessions to work on projects, but not everyone in groups tend to have access to the hardware or headlesses some of the members of the groups have. This also helps in the event of having a headless crash, the groups don't have to get split up while hardware resets or remains offline from Data or Power issues.

Additional Context

I understand this may come with additional prerequisites, such as picking which groups you are operating under to reduce overlap of groups joining when a member in the session has more than one group they could represent or be joined through. This can end up leading to the Over-contact issue that comes with people who have the whole platform friended joining into contact plus sessions basically turning the access to public/registered users by being within it. It may be lumped into other reworks, but this idea keeps popping into my head while working on worlds for groups relating to Holiday decoration, projects for groups and meetups leading to inviting too many people off the topic, and just missing requests from project members because of Hyperfocus on projects leading to a lapse in productivity on the ends of others.

Requesters

GlitchFlux

JasonMo680 commented 1 day ago

It's like you read my mind. Zyzyl and I were just talking about wanting something like this for the MetaMovie project. I use the Groups function in VRC a lot for educational scenarios, doing world hops, etc, and it's a great affordance. Just looking at how VRC uses groups in general might be something worth looking into.

shiftyscales commented 1 day ago

@GlitchFlux @JasonMo680 - This functionality would be covered implicitly by #915 and more broadly, the contacts UI rework #1116. Thanks for the suggestion, but I'm closing this issue as a duplicate.

GlitchFlux commented 18 hours ago

@GlitchFlux @JasonMo680 - This functionality would be covered implicitly by #915 and more broadly, the contacts UI rework #1116. Thanks for the suggestion, but I'm closing this issue as a duplicate.

This covers the contacts side, yes. However my implementation is desired within WORLD ACCESS LEVELS such as Private, LAN, Contact Plus, Etc.

Is the idea of making an access level related to our paid groups an idea on the books or is it off the table and we will get the long awaited contacts updates and go from there in hopes this can be brought up again at a later date if still needed?

GlitchFlux commented 18 hours ago

Closest I see in the referenced issues is #921 but that has to do with Headless contacts in the contact list. With the world access idea it makes it so not everyone needs to be on everyone's contact list if they are added to the group by a member of a project, making it so that it doesn't require the whole group all add everyone that may join the group at a future time.

shiftyscales commented 18 hours ago

This includes any functionality built around this - for example setting your status or opening session to particular group. Opening session to contacts with only specific tag (e.g. you open session to just close friends if you don't want to hang out with a wider group)

Having the ability to set visible and joinable for just members of a chosen group tag would be great.

These sound like the same thing to me? Is there something I'm misunderstanding about your request, @GlitchFlux? Based on my understanding / description of Frooxius' issue it sounds like opening a session specifically to group members is an implicit part of the plans.

Wolf-Seisenbacher commented 18 hours ago

This includes any functionality built around this - for example setting your status or opening session to particular group. Opening session to contacts with only specific tag (e.g. you open session to just close friends if you don't want to hang out with a wider group)

Having the ability to set visible and joinable for just members of a chosen group tag would be great.

These sound like the same thing to me? Is there something I'm misunderstanding about your request, @GlitchFlux? Based on my understanding / description of Frooxius' issue it sounds like opening a session specifically to group members is an implicit part of the plans.

So I think I can clear it up. Quickly reading Frooxius' post sounds more like grouping of contacts (Such as, you can organize contacts under a "Co-workers, Close Friends, etc" group) and then opening access to that specific friend group. While this is a nice feature, Glitch's request is about the groups system in Resonite that gives access to the separate group inventory (Like the Contacts Plus group, or Meta Movie's group, where we have a shared storage). I think the confusion here lies in the word Group, since technically they are both groups just two different meanings.

in Glitch's request, one might be part of the same group (Example, in the Contacts Plus group) but not on the session owner's contact list. He would want it so they can still join a "Group only" session, regardless of whose contact list they are on. in Frooxius' thing, it seems to call out only people on the contact list and grouping them in friend groups.

While Frooxius' feature is a more broad thing that covers more people in the grand scheme, Glitch's would help with collaboration in a more business oriented mindset.

GlitchFlux commented 17 hours ago

So from what I read in the posts he has, the discussion is based on having tags on users for groups (Hereby known as Cliques in this post to avoid confusion) so that members of a clique can add sort their contacts or add tagged members of their cliques to a modification of "Friend" sessions. What I am indicating is a desire for a Group access in worlds, not only contacts list but due to how worlds work the contacts list is to be roped into it. This is relating to members of a group being able to join a GROUP world after a world is opened to a group. Yes as Group members we are able to save to our shared group storage, but if one of us opens a session and wants to leave it open for members to join the group world, it would take extra steps that could be solved by having a Group access session like having a LAN access session.

shiftyscales commented 17 hours ago

I could be misinterpreting @Frooxius' issue, but opening session to particular group I read as actual groups. I.e. groups you are in on the could be their own tags- so even if you do not have a user directly in your contacts list, they'd still be a part of that group- hence you could open a session they as a group member can join.

I'd be curious for @Frooxius' input though in-case I am misunderstanding his issue.

Wolf-Seisenbacher commented 17 hours ago

I do believe this is not a duplicate of #915 and the assigning of duplicate issue is a mistake. I do also however see that the requested feature here, while I would love a thing like this for my group, is rather niche in the overall scheme and would likely have to be addressed after the contacts UI rework. Adding niche options to the access levels before a UI clean might confuse new players who don't quite understand, and can lead to confusion in the future.

My suggestion for a UI clean that would involve this feature and Frooxius' plans would be to have nested access level options.

I believe you are mistaken, Shifty, on your interpretation. As #915 is about grouping of contacts with tags, and is about contacts sorting and not about the patreon benefit "groups"

GlitchFlux commented 17 hours ago

I do believe this is not a duplicate of #915 and the assigning of duplicate issue is a mistake. I do also however see that the requested feature here, while I would love a thing like this for my group, is rather niche in the overall scheme and would likely have to be addressed after the contacts UI rework. Adding niche options to the access levels before a UI clean might confuse new players who don't quite understand, and can lead to confusion in the future.

My suggestion for a UI clean that would involve this feature and Frooxius' plans would be to have nested access level options.

I believe you are mistaken, Shifty, on your interpretation. As #915 is about grouping of contacts with tags, and is about contacts sorting and not about the patreon benefit "groups"

In bringing up the projects for groups, I do not make this only as a member of the Contacts Plus Content group, but as a builder for three other teams/groups in making worlds and assisting in building and designing worlds, environments, games, and other social aspects of the community and content creation. I take it from both sides of the coin and its use case for both.